re PR libffi/64572 (r219477 breaks bootstrap on x86_64 darwin)
authorRichard Henderson <rth@redhat.com>
Tue, 13 Jan 2015 15:29:47 +0000 (07:29 -0800)
committerRichard Henderson <rth@gcc.gnu.org>
Tue, 13 Jan 2015 15:29:47 +0000 (07:29 -0800)
PR libffi/64572

 * src/x86/ffitarget.h (FFI_GO_CLOSURES): Do not define for darwin.
 (FFI_TARGET_HAS_COMPLEX_TYPE): Likewise.

From-SVN: r219538

libffi/ChangeLog
libffi/src/x86/ffitarget.h

index 2ca6aac791818dc1eb304484b6b395557816e288..cbdb173ca6053989371c07703710851d184a2326 100644 (file)
@@ -1,3 +1,9 @@
+2015-01-12  Richard Henderson  <rth@redhat.com>
+
+       PR libffi/64572
+       * src/x86/ffitarget.h (FFI_GO_CLOSURES): Do not define for darwin.
+       (FFI_TARGET_HAS_COMPLEX_TYPE): Likewise.
+
 2015-01-12  Richard Henderson  <rth@redhat.com>
 
        * src/x86/ffi.c (ffi_raw_call): Fill in frame.
index 8c1dcac2a24d6e8b80e940821029b6021371c868..a576961695202a02c9383a211a6d863aeea5ec4c 100644 (file)
@@ -50,7 +50,8 @@
 #endif
 
 #define FFI_TARGET_SPECIFIC_STACK_SPACE_ALLOCATION
-#ifndef _MSC_VER
+
+#if !defined(_MSC_VER) && !defined(X86_DARWIN) && !defined(X86_64_DARWIN)
 #define FFI_TARGET_HAS_COMPLEX_TYPE
 #endif
 
@@ -84,7 +85,7 @@ typedef enum ffi_abi {
   FFI_LAST_ABI,
   FFI_DEFAULT_ABI = FFI_WIN64
 
-#elif defined(X86_64) || (defined (__x86_64__) && defined (X86_DARWIN))
+#elif defined(X86_64) || defined(X86_64_DARWIN)
   FFI_FIRST_ABI = 1,
   FFI_UNIX64,
   FFI_LAST_ABI,
@@ -119,15 +120,17 @@ typedef enum ffi_abi {
 /* ---- Definitions for closures ----------------------------------------- */
 
 #define FFI_CLOSURES 1
+
+#if !defined(X86_DARWIN) && !defined(X86_64_DARWIN)
 #define FFI_GO_CLOSURES 1
+#endif
 
 #define FFI_TYPE_SMALL_STRUCT_1B (FFI_TYPE_LAST + 1)
 #define FFI_TYPE_SMALL_STRUCT_2B (FFI_TYPE_LAST + 2)
 #define FFI_TYPE_SMALL_STRUCT_4B (FFI_TYPE_LAST + 3)
 #define FFI_TYPE_MS_STRUCT       (FFI_TYPE_LAST + 4)
 
-#if defined (X86_64) || defined(X86_WIN64) \
-    || (defined (__x86_64__) && defined (X86_DARWIN))
+#if defined (X86_64) || defined(X86_WIN64) || defined(X86_64_DARWIN)
 # define FFI_TRAMPOLINE_SIZE 24
 # define FFI_NATIVE_RAW_API 0
 #else