ffi.c (ffi_prep_cif_machdep): Fix case where DOUBLE equal LONGDOUBLE.
authorAndreas Tobler <andreast@fgznet.ch>
Wed, 6 Feb 2013 17:32:41 +0000 (18:32 +0100)
committerAndreas Tobler <andreast@gcc.gnu.org>
Wed, 6 Feb 2013 17:32:41 +0000 (18:32 +0100)
2013-02-06  Andreas Tobler  <andreast@fgznet.ch>

        * src/powerpc/ffi.c (ffi_prep_cif_machdep): Fix case where
        DOUBLE equal LONGDOUBLE.

From-SVN: r195812

libffi/ChangeLog
libffi/src/powerpc/ffi.c

index e53ac5f..ab2aee6 100644 (file)
@@ -1,3 +1,8 @@
+2013-02-06  Andreas Tobler  <andreast@fgznet.ch>
+
+       * src/powerpc/ffi.c (ffi_prep_cif_machdep): Fix case where
+       DOUBLE equal LONGDOUBLE.
+
 2013-01-07  Thorsten Glaser <tg@mirbsd.org>
 
        * testsuite/libffi.call/cls_uchar_va.c,
index baca694..257f02f 100644 (file)
@@ -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.  */