diff options
author | Jeremy Huddleston Sequoia <jeremyhu@users.noreply.github.com> | 2019-02-19 04:11:28 -0800 |
---|---|---|
committer | Anthony Green <green@moxielogic.com> | 2019-02-19 07:11:28 -0500 |
commit | 05a1796419f68267250c0b8ae7138da36ab60b01 (patch) | |
tree | 6cb0727cc82ed18f78535a5142b7afb824c75bb4 /include | |
parent | 3ec522bc1c1c5a7fb66b85d4fb6a0fe80581d597 (diff) | |
download | libffi-05a1796419f68267250c0b8ae7138da36ab60b01.tar.gz |
Cleanup symbol exports on darwin and add architecture preprocessor checks to assist in building fat binaries (eg: i386+x86_64 on macOS or arm+aarch64 on iOS) (#450)
* x86: Ensure _efi64 suffixed symbols are not exported
* x86: Ensure we do not export ffi_prep_cif_machdep
Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
* x86: Ensure we don't export ffi_call_win64, ffi_closure_win64, or ffi_go_closure_win64
Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
* closures: Silence a semantic warning
libffi/src/closures.c:175:23: This function declaration is not a prototype
Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
* aarch64: Ensure we don't export ffi_prep_cif_machdep
Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
* arm: Ensure we don't export ffi_prep_cif_machdep
Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
* aarch64, arm, x86: Add architecture preprocessor checks to support easier fat builds (eg: iOS)
Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
* x86: Silence some static analysis warnings
libffi/src/x86/ffi64.c:286:21: The left operand of '!=' is a garbage value due to array index out of bounds
libffi/src/x86/ffi64.c:297:22: The left operand of '!=' is a garbage value due to array index out of bounds
Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
* aarch: Use FFI_HIDDEN rather than .hidden
Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
* ffi.h: Don't advertise ffi_java_rvalue_to_raw, ffi_prep_java_raw_closure, and ffi_prep_java_raw_closure_loc when FFI_NATIVE_RAW_API is 0
Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/ffi.h.in | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/include/ffi.h.in b/include/ffi.h.in index 39cde46..f6b4024 100644 --- a/include/ffi.h.in +++ b/include/ffi.h.in @@ -283,11 +283,13 @@ FFI_API size_t ffi_raw_size (ffi_cif *cif); packing, even on 64-bit machines. I.e. on 64-bit machines longs and doubles are followed by an empty 64-bit word. */ +#if !FFI_NATIVE_RAW_API FFI_API void ffi_java_raw_call (ffi_cif *cif, void (*fn)(void), void *rvalue, ffi_java_raw *avalue); +#endif FFI_API void ffi_java_ptrarray_to_raw (ffi_cif *cif, void **args, ffi_java_raw *raw); @@ -414,6 +416,7 @@ ffi_prep_raw_closure_loc (ffi_raw_closure*, void *user_data, void *codeloc); +#if !FFI_NATIVE_RAW_API FFI_API ffi_status ffi_prep_java_raw_closure (ffi_java_raw_closure*, ffi_cif *cif, @@ -426,6 +429,7 @@ ffi_prep_java_raw_closure_loc (ffi_java_raw_closure*, void (*fun)(ffi_cif*,void*,ffi_java_raw*,void*), void *user_data, void *codeloc); +#endif #endif /* FFI_CLOSURES */ |