summaryrefslogtreecommitdiff
path: root/libffi
diff options
context:
space:
mode:
Diffstat (limited to 'libffi')
-rw-r--r--libffi/ChangeLog5
-rw-r--r--libffi/src/powerpc/ffi_darwin.c2
2 files changed, 7 insertions, 0 deletions
diff --git a/libffi/ChangeLog b/libffi/ChangeLog
index cddc1035495..2d875a38c73 100644
--- a/libffi/ChangeLog
+++ b/libffi/ChangeLog
@@ -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.
diff --git a/libffi/src/powerpc/ffi_darwin.c b/libffi/src/powerpc/ffi_darwin.c
index 4c3f834b3d8..ff480b0413f 100644
--- a/libffi/src/powerpc/ffi_darwin.c
+++ b/libffi/src/powerpc/ffi_darwin.c
@@ -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)