Branch :
| Author | Commit | Date | CI | Message |
|---|---|---|---|---|
| 05a17964 | 2019-02-19 04:11:28 | 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> | ||
| ba73a671 | 2018-07-20 09:37:43 | Update FFI_HIDDEN() to use .private_extern on Apple platforms and use the macro where appropriate Fix issue #439 Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@macports.org> | ||
| 65da63ab | 2018-06-25 04:38:58 | Add compact unwind for darwin/i386 (#440) * x86: Add implementation of compact unwind for ffi_call_i386, et al. Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@macports.org> * x86: Use __text as the section name to avoid deprecated section name warnings. Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@macports.org> * darwin: Add missing regular,debug attributes for compact unwind sections Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@macports.org> | ||
| 2309b584 | 2018-06-17 17:04:24 | Mark sysv.S as SafeSEH compatible (#438) It contains no exception handler, so we can just emit the special @feat.00 symbol to indicate that it's trivially SafeSEH compatible. SafeSEH only applies to x86 and not x86-64, hence its inclusion in the x86-specific block. See [1] for details. [1] https://msdn.microsoft.com/en-us/library/windows/desktop/ms680547(v=vs.85).aspx#the_.sxdata_section_ | ||
| b5ee3957 | 2018-05-05 07:41:53 | Revert "Remove some symbol exports and cleanup newline warnings (#433)" This reverts commit a5a0f3cf36dfb4d64316414a872288c3170e6c1d. | ||
| a5a0f3cf | 2018-05-05 03:44:33 | Remove some symbol exports and cleanup newline warnings (#433) * build: Ensure darwin generated sources end with a new line Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@macports.org> * build: Use .private_extern where missing to prevent exporting symbols that are not API Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@macports.org> | ||
| 28d3b61b | 2018-01-20 23:56:17 | Fix x86 SysV closure in PIC mode The assembly single-line comments swallowed up the remaining assembly code of the macros due to lack of line-endings. This is a regression introduced in b7f6d7a. | ||
| a94c999b | 2017-03-19 07:36:07 | Handle fastcall declaration differently for some Microsoft compilers | ||
| 3ac1610a | 2015-01-19 20:48:40 | x86: Fix cygwin32 build The section syntax is just that little bit different. | ||
| f1560b7b | 2015-01-16 11:31:37 | x86: Solaris fixes * Solaris/x86 /bin/as doesn't support .org, so I've just disabled the uses in src/x86/{sysv, unix64}.S, as on Darwin. * Solaris/x86 needs to use EH_FRAME_FLAGS so manually and compiler generated .eh_frame sections match, otherwise libffi.so fails to link: * Solaris/x86 /bin/as has different COMDAT syntax; I've disabled it for the moment. | ||
| 3fa5d70c | 2015-01-05 13:03:06 | x86: Avoid fastcall when building with pcc Apparently, PCC doesn't support the fastcall calling convention. Nor does it issue a warning or error for the attribute that it does not understand. | ||
| a03d2310 | 2014-12-24 16:03:34 | x86: Load structure return address into eax | ||
| b7f6d7aa | 2014-12-10 13:37:36 | x86: Reinstate hand-written unwind info for sysv.S | ||
| 6cedf81c | 2014-12-10 09:43:58 | x86: Expand FFI_GO_CLOSURE If we're going to have to hand-write unwind info for darwin, these macros make the job harder. | ||
| 5f35e0ff | 2014-11-24 16:26:50 | x86: Avoid using gas local labels Which are unsupported by Darwin cctools as. Thankfully this doesn't uglify the source too much. | ||
| ed1ca277 | 2014-11-24 13:02:03 | x86: Remove use of .cfi_escape The unwind info isn't 100% correct at all points during the epilogue, and not annotating is just as incorrect as the annotation. This works better on systems that do not support DW_OP_call_frame_cfa. | ||
| 042b8daf | 2014-11-24 11:24:02 | x86: Use .balign not .align The Apple assembler defaults to power of two alignment, rather than byte alignment like everyone else. Force byte alignment by using the proper directive. | ||
| 0172bc02 | 2014-11-24 10:42:02 | x86: Disable .org for Darwin | ||
| 9f112619 | 2014-11-22 20:02:43 | x86: Best guess at update for Darwin | ||
| 097ccfd6 | 2014-12-10 13:25:14 | x86: Fix some unwind errors | ||
| 0e303c06 | 2014-11-12 03:58:58 | x86: Work around clang bugs http://llvm.org/bugs/show_bug.cgi?21500 http://llvm.org/bugs/show_bug.cgi?21501 http://llvm.org/bugs/show_bug.cgi?21515 | ||
| 2650f47f | 2014-11-06 10:57:04 | x86: Use win32 name mangling for fastcall functions | ||
| f8c64e24 | 2014-11-05 17:04:29 | x86: Add support for Go closures | ||
| b21ec1ce | 2014-11-05 10:15:25 | x86: Rewrite closures Move everything into sysv.S, removing win32.S and freebsd.S. Handle all abis with a single ffi_closure_inner function. Move complexity of the raw THISCALL trampoline into assembly instead of the trampoline itself. Only push the context for the REGISTER abi; let the rest receive it in a register. | ||
| b9ac94f3 | 2014-11-01 15:10:34 | x86: Rewrite ffi_call Decouple the assembly from FFI_TYPE_*. Merge prep_args with ffi_call, passing the frame and the stack to the assembly. Note that this patch isn't really standalone, as this breaks closures. | ||
| 159d3788 | 2014-10-31 12:07:02 | x86: Convert to gas generated unwind info | ||
| fd07c9e4 | 2013-02-07 18:00:36 | Add cache flushing routine for sun compiler on sparc solaris 2.8 | ||
| 2d9b3939 | 2013-01-09 21:14:54 | Fix for closures with sunpro compiler | ||
| 35ddb69c | 2013-01-08 07:53:37 | Only emit DWARF unwind info when building with GCC | ||
| 0e584399 | 2011-02-08 07:52:40 | Refresh from GCC | ||
| 3f5b1375 | 2010-07-12 14:39:18 | rebase | ||
| c6dddbd0 | 2009-10-04 08:11:33 | Initial commit |