diff options
author | Richard Henderson <rth@redhat.com> | 2015-01-13 07:29:47 -0800 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2015-01-13 07:29:47 -0800 |
commit | be723d1e73118cd0e20f66d21976290eb73f27fd (patch) | |
tree | 044b5c10096aaf0d3157cb5ec3cfa8491a190d54 /libffi | |
parent | 6eb6148159faeedddb457891d7f92c67d8532eaf (diff) | |
download | gcc-be723d1e73118cd0e20f66d21976290eb73f27fd.zip gcc-be723d1e73118cd0e20f66d21976290eb73f27fd.tar.gz gcc-be723d1e73118cd0e20f66d21976290eb73f27fd.tar.bz2 |
re PR libffi/64572 (r219477 breaks bootstrap on x86_64 darwin)
PR libffi/64572
* src/x86/ffitarget.h (FFI_GO_CLOSURES): Do not define for darwin.
(FFI_TARGET_HAS_COMPLEX_TYPE): Likewise.
From-SVN: r219538
Diffstat (limited to 'libffi')
-rw-r--r-- | libffi/ChangeLog | 6 | ||||
-rw-r--r-- | libffi/src/x86/ffitarget.h | 11 |
2 files changed, 13 insertions, 4 deletions
diff --git a/libffi/ChangeLog b/libffi/ChangeLog index 2ca6aac..cbdb173 100644 --- a/libffi/ChangeLog +++ b/libffi/ChangeLog @@ -1,5 +1,11 @@ 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. 2015-01-12 Richard Henderson <rth@redhat.com> diff --git a/libffi/src/x86/ffitarget.h b/libffi/src/x86/ffitarget.h index 8c1dcac..a576961 100644 --- a/libffi/src/x86/ffitarget.h +++ b/libffi/src/x86/ffitarget.h @@ -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 |