diff --git a/libffi/ChangeLog b/libffi/ChangeLog index e53ac5fddbc..ab2aee6a9a0 100644 --- a/libffi/ChangeLog +++ b/libffi/ChangeLog @@ -1,3 +1,8 @@ +2013-02-06 Andreas Tobler + + * src/powerpc/ffi.c (ffi_prep_cif_machdep): Fix case where + DOUBLE equal LONGDOUBLE. + 2013-01-07 Thorsten Glaser * testsuite/libffi.call/cls_uchar_va.c, diff --git a/libffi/src/powerpc/ffi.c b/libffi/src/powerpc/ffi.c index baca69448fe..257f02fab3e 100644 --- a/libffi/src/powerpc/ffi.c +++ b/libffi/src/powerpc/ffi.c @@ -664,9 +664,11 @@ ffi_prep_cif_machdep (ffi_cif *cif) switch (type) { #ifndef __NO_FPRS__ +#if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE case FFI_TYPE_LONGDOUBLE: flags |= FLAG_RETURNS_128BITS; /* Fall through. */ +#endif case FFI_TYPE_DOUBLE: flags |= FLAG_RETURNS_64BITS; /* Fall through. */