Repair ppc build regression.
authorAnthony Green <green@moxielogic.com>
Tue, 3 Apr 2012 11:35:59 +0000 (07:35 -0400)
committerAnthony Green <green@moxielogic.com>
Tue, 3 Apr 2012 11:35:59 +0000 (07:35 -0400)
.pc/aix-fix/ChangeLog
.pc/mint/ChangeLog
.pc/msvc-changes/ChangeLog
.pc/vararg_float_test_fix/ChangeLog
.pc/vfp-eabi/ChangeLog
.pc/win32/ChangeLog
.pc/win32_tests/ChangeLog
ChangeLog
patches/aix-fix
patches/mint
src/powerpc/ffi.c

index 6df2662..4f514f9 100644 (file)
@@ -1,3 +1,11 @@
+2012-04-02  Peter Bergner  <bergner@vnet.ibm.com>
+
+       * src/powerpc/ffi.c (ffi_prep_args_SYSV): Declare double_tmp.
+       Silence casting pointer to integer of different size warning.
+       Delete goto to previously deleted label.
+       (ffi_call): Silence possibly undefined warning.
+       (ffi_closure_helper_SYSV): Declare variable type.
+
 2012-03-13  Kaz Kojima  <kkojima@gcc.gnu.org>
 
        * src/sh/ffi.c (ffi_prep_closure_loc): Don't ASSERT ABI test,
index 367ac87..1c2f14f 100644 (file)
@@ -1,3 +1,11 @@
+2012-04-02  Peter Bergner  <bergner@vnet.ibm.com>
+
+       * src/powerpc/ffi.c (ffi_prep_args_SYSV): Declare double_tmp.
+       Silence casting pointer to integer of different size warning.
+       Delete goto to previously deleted label.
+       (ffi_call): Silence possibly undefined warning.
+       (ffi_closure_helper_SYSV): Declare variable type.
+
 2012-03-19  chennam  <csit@axway.com>
 
        * src/powerpc/ffi_darwin.c (ffi_prep_closure_loc): Fix AIX closure
index 3fe329c..50bd5f2 100644 (file)
        * src/powerpc/ffi_darwin.c (ffi_prep_closure_loc): Fix AIX closure
        support.
 
+2012-04-02  Peter Bergner  <bergner@vnet.ibm.com>
+
+       * src/powerpc/ffi.c (ffi_prep_args_SYSV): Declare double_tmp.
+       Silence casting pointer to integer of different size warning.
+       Delete goto to previously deleted label.
+       (ffi_call): Silence possibly undefined warning.
+       (ffi_closure_helper_SYSV): Declare variable type.
+
 2012-03-13  Kaz Kojima  <kkojima@gcc.gnu.org>
 
        * src/sh/ffi.c (ffi_prep_closure_loc): Don't ASSERT ABI test,
index 668341b..805fcf5 100644 (file)
        * src/powerpc/ffi_darwin.c (ffi_prep_closure_loc): Fix AIX closure
        support.
 
+2012-04-02  Peter Bergner  <bergner@vnet.ibm.com>
+
+       * src/powerpc/ffi.c (ffi_prep_args_SYSV): Declare double_tmp.
+       Silence casting pointer to integer of different size warning.
+       Delete goto to previously deleted label.
+       (ffi_call): Silence possibly undefined warning.
+       (ffi_closure_helper_SYSV): Declare variable type.
+
 2012-03-13  Kaz Kojima  <kkojima@gcc.gnu.org>
 
        * src/sh/ffi.c (ffi_prep_closure_loc): Don't ASSERT ABI test,
index 7b8e2e9..8671c32 100644 (file)
        * src/powerpc/ffi_darwin.c (ffi_prep_closure_loc): Fix AIX closure
        support.
 
+2012-04-02  Peter Bergner  <bergner@vnet.ibm.com>
+
+       * src/powerpc/ffi.c (ffi_prep_args_SYSV): Declare double_tmp.
+       Silence casting pointer to integer of different size warning.
+       Delete goto to previously deleted label.
+       (ffi_call): Silence possibly undefined warning.
+       (ffi_closure_helper_SYSV): Declare variable type.
+
 2012-03-13  Kaz Kojima  <kkojima@gcc.gnu.org>
 
        * src/sh/ffi.c (ffi_prep_closure_loc): Don't ASSERT ABI test,
index b12184c..2f62096 100644 (file)
@@ -8,6 +8,14 @@
        * src/powerpc/ffi_darwin.c (ffi_prep_closure_loc): Fix AIX closure
        support.
 
+2012-04-02  Peter Bergner  <bergner@vnet.ibm.com>
+
+       * src/powerpc/ffi.c (ffi_prep_args_SYSV): Declare double_tmp.
+       Silence casting pointer to integer of different size warning.
+       Delete goto to previously deleted label.
+       (ffi_call): Silence possibly undefined warning.
+       (ffi_closure_helper_SYSV): Declare variable type.
+
 2012-03-13  Kaz Kojima  <kkojima@gcc.gnu.org>
 
        * src/sh/ffi.c (ffi_prep_closure_loc): Don't ASSERT ABI test,
index 95b7137..bc04dc3 100644 (file)
        * src/powerpc/ffi_darwin.c (ffi_prep_closure_loc): Fix AIX closure
        support.
 
+2012-04-02  Peter Bergner  <bergner@vnet.ibm.com>
+
+       * src/powerpc/ffi.c (ffi_prep_args_SYSV): Declare double_tmp.
+       Silence casting pointer to integer of different size warning.
+       Delete goto to previously deleted label.
+       (ffi_call): Silence possibly undefined warning.
+       (ffi_closure_helper_SYSV): Declare variable type.
+
 2012-03-13  Kaz Kojima  <kkojima@gcc.gnu.org>
 
        * src/sh/ffi.c (ffi_prep_closure_loc): Don't ASSERT ABI test,
index b717da6..345f26c 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
        * src/powerpc/ffi_darwin.c (ffi_prep_closure_loc): Fix AIX closure
        support.
 
+2012-04-02  Peter Bergner  <bergner@vnet.ibm.com>
+
+       * src/powerpc/ffi.c (ffi_prep_args_SYSV): Declare double_tmp.
+       Silence casting pointer to integer of different size warning.
+       Delete goto to previously deleted label.
+       (ffi_call): Silence possibly undefined warning.
+       (ffi_closure_helper_SYSV): Declare variable type.
+
 2012-03-13  Kaz Kojima  <kkojima@gcc.gnu.org>
 
        * src/sh/ffi.c (ffi_prep_closure_loc): Don't ASSERT ABI test,
index df8ae95..5257b5c 100644 (file)
@@ -2,7 +2,10 @@ Index: libffi/ChangeLog
 ===================================================================
 --- libffi.orig/ChangeLog
 +++ libffi/ChangeLog
-@@ -1,3 +1,8 @@
+@@ -6,6 +6,11 @@
+       (ffi_call): Silence possibly undefined warning.
+       (ffi_closure_helper_SYSV): Declare variable type.
 +2012-03-19  chennam  <csit@axway.com>
 +
 +      * src/powerpc/ffi_darwin.c (ffi_prep_closure_loc): Fix AIX closure
index e732b32..1ab25f7 100644 (file)
@@ -2,15 +2,32 @@ Index: libffi/ChangeLog
 ===================================================================
 --- libffi.orig/ChangeLog
 +++ libffi/ChangeLog
-@@ -1,3 +1,8 @@
+@@ -1,3 +1,13 @@
 +2012-03-19  Alan Hourihane  <alanh@fairlite.co.uk>
 +
 +      * src/m68k/ffi.c: Add MINT support.
 +      * src/m68k/sysv.S: Ditto.
 +
- 2012-03-19  chennam  <csit@axway.com>
++2012-03-19  chennam  <csit@axway.com>
++
++      * src/powerpc/ffi_darwin.c (ffi_prep_closure_loc): Fix AIX closure
++      support.
++
+ 2012-04-02  Peter Bergner  <bergner@vnet.ibm.com>
+       * src/powerpc/ffi.c (ffi_prep_args_SYSV): Declare double_tmp.
+@@ -6,11 +16,6 @@
+       (ffi_call): Silence possibly undefined warning.
+       (ffi_closure_helper_SYSV): Declare variable type.
+-2012-03-19  chennam  <csit@axway.com>
+-
+-      * src/powerpc/ffi_darwin.c (ffi_prep_closure_loc): Fix AIX closure
+-      support.
+-
+ 2012-03-13  Kaz Kojima  <kkojima@gcc.gnu.org>
  
-       * src/powerpc/ffi_darwin.c (ffi_prep_closure_loc): Fix AIX closure
+       * src/sh/ffi.c (ffi_prep_closure_loc): Don't ASSERT ABI test,
 Index: libffi/src/m68k/ffi.c
 ===================================================================
 --- libffi.orig/src/m68k/ffi.c
index 1920c91..baca694 100644 (file)
@@ -146,6 +146,7 @@ ffi_prep_args_SYSV (extended_cif *ecif, unsigned *const stack)
   gpr_base.u = stacktop.u - ASM_NEEDS_REGISTERS - NUM_GPR_ARG_REGISTERS;
   intarg_count = 0;
 #ifndef __NO_FPRS__
+  double double_tmp;
   fpr_base.d = gpr_base.d - NUM_FPR_ARG_REGISTERS;
   fparg_count = 0;
   copy_space.c = ((flags & FLAG_FP_ARGUMENTS) ? fpr_base.c : gpr_base.c);
@@ -155,9 +156,9 @@ ffi_prep_args_SYSV (extended_cif *ecif, unsigned *const stack)
   next_arg.u = stack + 2;
 
   /* Check that everything starts aligned properly.  */
-  FFI_ASSERT (((unsigned) (char *) stack & 0xF) == 0);
-  FFI_ASSERT (((unsigned) copy_space.c & 0xF) == 0);
-  FFI_ASSERT (((unsigned) stacktop.c & 0xF) == 0);
+  FFI_ASSERT (((unsigned long) (char *) stack & 0xF) == 0);
+  FFI_ASSERT (((unsigned long) copy_space.c & 0xF) == 0);
+  FFI_ASSERT (((unsigned long) stacktop.c & 0xF) == 0);
   FFI_ASSERT ((bytes & 0xF) == 0);
   FFI_ASSERT (copy_space.c >= next_arg.c);
 
@@ -211,8 +212,6 @@ ffi_prep_args_SYSV (extended_cif *ecif, unsigned *const stack)
 
        case FFI_TYPE_DOUBLE:
          /* With FFI_LINUX_SOFT_FLOAT doubles are handled like UINT64.  */
-         if (ecif->cif->abi == FFI_LINUX_SOFT_FLOAT)
-           goto soft_double_prep;
          double_tmp = **p_argv.d;
 
          if (fparg_count >= NUM_FPR_ARG_REGISTERS)
@@ -925,7 +924,7 @@ ffi_call(ffi_cif *cif, void (*fn)(void), void *rvalue, void **avalue)
    */
   unsigned int smst_buffer[2];
   extended_cif ecif;
-  unsigned int rsize;
+  unsigned int rsize = 0;
 
   ecif.cif = cif;
   ecif.avalue = avalue;
@@ -1132,7 +1131,7 @@ ffi_closure_helper_SYSV (ffi_closure *closure, void *rvalue,
 
          if (nf < 8)
            {
-             temp = pfr->d;
+             double temp = pfr->d;
              pfr->f = (float) temp;
              avalue[i] = pfr;
              nf++;