Commit 4acf0056f55c757490dae6c29a65b0321327ea8a

Anthony Green 2013-03-16T08:18:45

Build fix for soft-float power targets

diff --git a/ChangeLog b/ChangeLog
index d5bf71f..9f7866b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,11 @@
+2013-03-16  Gilles Talis  <gilles.talis@gmail.com>
+
+	* src/powerpc/ffi.c (ffi_prep_args_SYSV): Don't use
+	fparg_count,etc on __NO_FPRS__ targets.
+
 2013-03-16  Alan Hourihane  <alanh@fairlite.co.uk>
 
-	* src/m68k/sysv.S (epilogue): Don't user extb instruction on
+	* src/m68k/sysv.S (epilogue): Don't use extb instruction on
 	m680000 machines.
 
 2013-03-16  Alex Gaynor <alex.gaynor@gmail.com>
diff --git a/README b/README
index fd5e6b4..276c2f6 100644
--- a/README
+++ b/README
@@ -164,11 +164,11 @@ History
 See the ChangeLog files for details.
 
 3.0.13 Mar-16-13
-       
 	Add Meta support.
 	Add missing Moxie bits.
 	Fix stack alignment bug on 32-bit x86.
 	Build fix for m68000 targets.
+	Build fix for soft-float Power targets.
 
 3.0.12 Feb-11-13
         Add Moxie support.
diff --git a/src/powerpc/ffi.c b/src/powerpc/ffi.c
index f3a96a1..54f2731 100644
--- a/src/powerpc/ffi.c
+++ b/src/powerpc/ffi.c
@@ -376,9 +376,9 @@ ffi_prep_args_SYSV (extended_cif *ecif, unsigned *const stack)
      with the number found in ffi_prep_cif_machdep().  However, intarg_count
      is incremeneted whenever we place an FP arg on the stack, so account for
      that before our assert test.  */
+#ifndef __NO_FPRS__
   if (fparg_count > NUM_FPR_ARG_REGISTERS)
     intarg_count -= fparg_count - NUM_FPR_ARG_REGISTERS;
-#ifndef __NO_FPRS__
   FFI_ASSERT (fpr_base.u
 	      <= stacktop.u - ASM_NEEDS_REGISTERS - NUM_GPR_ARG_REGISTERS);
 #endif