kc3-lang/libffi/src/x86/sysv.S

Branch :


Log

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