From 655e82c92d5c3875aee04322f1993d6b0774a7bf Mon Sep 17 00:00:00 2001 From: Yousong Zhou Date: Mon, 15 Aug 2016 15:00:13 +0800 Subject: [PATCH] mips: fix MIPS softfloat build issue The patch for o32.S is taken from OpenWrt packages repo 3a7a4bf "libffi: fix MIPS softfloat build issue with current binutils" Signed-off-by: Felix Fietkau Signed-off-by: Yousong Zhou --- Upstream-Status: Backport [https://github.com/libffi/libffi/commit/2ded2a4f494165c93293afc14ab0be1243cf8c49] src/mips/n32.S | 17 +++++++++++++++++ src/mips/o32.S | 17 +++++++++++++++++ 2 files changed, 34 insertions(+) diff --git a/src/mips/n32.S b/src/mips/n32.S index c6985d3..8f25994 100644 --- a/src/mips/n32.S +++ b/src/mips/n32.S @@ -107,6 +107,16 @@ loadregs: REG_L t6, 3*FFI_SIZEOF_ARG($fp) # load the flags word into t6. +#ifdef __mips_soft_float + REG_L a0, 0*FFI_SIZEOF_ARG(t9) + REG_L a1, 1*FFI_SIZEOF_ARG(t9) + REG_L a2, 2*FFI_SIZEOF_ARG(t9) + REG_L a3, 3*FFI_SIZEOF_ARG(t9) + REG_L a4, 4*FFI_SIZEOF_ARG(t9) + REG_L a5, 5*FFI_SIZEOF_ARG(t9) + REG_L a6, 6*FFI_SIZEOF_ARG(t9) + REG_L a7, 7*FFI_SIZEOF_ARG(t9) +#else and t4, t6, ((1<