diff --git a/libffi/ChangeLog b/libffi/ChangeLog index cddc10354953a5270942a927c793b162567468a1..2d875a38c73c9c7c57378d41f19dac3a55bc1ca0 100644 --- a/libffi/ChangeLog +++ b/libffi/ChangeLog @@ -1,3 +1,8 @@ +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 diff --git a/libffi/src/powerpc/ffi_darwin.c b/libffi/src/powerpc/ffi_darwin.c index 4c3f834b3d8c7e7e3c796960711c827dfacd300c..ff480b0413f18ffdfd708b3262eed2d14ab54db7 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)