OSDN Git Service

* src/powerpc/ffi_darwin.c (ffi_prep_args): Increment next_arg and
authordje <dje@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 4 Dec 2009 03:43:40 +0000 (03:43 +0000)
committerdje <dje@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 4 Dec 2009 03:43:40 +0000 (03:43 +0000)
        fparg_count twice for long double.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154967 138bc75d-0d04-0410-961f-82ee72b054a4

libffi/ChangeLog
libffi/src/powerpc/ffi_darwin.c

index cddc103..2d875a3 100644 (file)
@@ -1,5 +1,10 @@
 2009-12-03  David Edelsohn  <edelsohn@gnu.org>
 
+       * src/powerpc/ffi_darwin.c (ffi_prep_args): Increment next_arg and
+       fparg_count twice for long double.
+
+2009-12-03  David Edelsohn  <edelsohn@gnu.org>
+
        PR libffi/42243
        * src/powerpc/ffi_darwin.c (ffi_prep_args): Remove extra parentheses.
 
index 4c3f834..ff480b0 100644 (file)
@@ -167,6 +167,8 @@ void ffi_prep_args(extended_cif *ecif, unsigned long *const stack)
            *fpr_base++ = double_tmp;
          else
            *(double *) next_arg = double_tmp;
+         next_arg += 2;
+         fparg_count++;
 
          double_tmp = ((double *) *p_argv)[1];
          if (fparg_count < NUM_FPR_ARG_REGISTERS)