src/sparc


Log

Author Commit Date CI Message
Anthony Green e4c5d46b 2022-09-05T12:19:57 Pass large structs by value
Gregory Pakosz bd72848c 2017-04-27T13:20:36 Prefix ALIGN macros with FFI_
Richard Henderson 2104b2a4 2015-01-26T12:43:57 sparc: Re-introduce hand-written unwind info Fixes the build with the Solaris assembler.
Richard Henderson 1ad0b171 2015-01-16T13:30:05 sparc: Also mark the return address in unwind info
Richard Henderson d68c8aed 2015-01-16T11:40:33 sparc: Solaris fixes, part 2 /bin/as seems to only understand single-digit labels /bin/as knows nothing about .rept/.endr
Rainer Orth b740ab7c 2015-01-16T11:32:23 sparc: Solaris fixes * /bin/as requires .type fn,#function instead of @function. * /bin/as doesn't support .macro/.endm. I'm using preprocessor macros instead to implement E in src/sparc/v[89].S.
Richard Henderson 542e0047 2014-11-18T05:07:00 sparc: Define FFI_TARGET_SPECIFIC_VARIADIC for v9 This is a port of http://gcc.gnu.org/viewcvs?rev=207763&root=gcc&view=rev aka GCC PR libffi/60073, to the rewritten Sparc codebase. Supposedly, we should have seen failures with the existing libffi.call/cls_double_va.c testcase, but I hadn't. Perhaps a gcc newer than 4.6.3 is required to see that...
Richard Henderson 92022496 2014-10-26T14:48:28 sparc: Add support for Go closures
Richard Henderson 6eec410f 2014-10-26T15:29:04 sparc: Re-add abi compliant structure support The original code, removed in the "rewrite" patch, was incorrect for large structures, and required dynamic allocation of a trampoline on every ffi_call. Instead, allocate a 4k entry table of all possible structure returns. The table is 80k, but is read-only and dynamically paged, which ought to be better than allocating the trampoline. This is difficult to test with gcc. One can only use -O0 at present. See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63668.
Richard Henderson ad89c2d9 2014-10-26T13:16:03 sparc: Add support for complex types
Richard Henderson 20da5b41 2014-10-25T16:24:41 sparc: Handle more cases of structure return directly
Richard Henderson 0686c2e7 2014-10-25T14:52:45 sparc: Preprocess float point struct return We can eliminate recursion and speed structure return by flattening a nested structure tree into a bitmask.
Richard Henderson 2b27890b 2014-10-24T16:10:48 sparc: Rewrite everything It's impossible to call between v8 and v9 ABIs, because of the stack bias in the v9 ABI. So let's not pretend it's just not implemented yet. Split the v9 code out to a separate file. The register windows prevent ffi_call from setting up the entire stack frame the assembly, but we needn't make an indirect call back to prep_args.
Richard Henderson 5d7b5445 2014-10-24T11:45:53 sparc: Tidy up symbols Assembly to use local labels, .type annotation, hidden annotation. I do retain the _prefix for the symbols, but given that it wasn't done consistently across all symbols, I doubt it's actually needed.
Richard Henderson fd4f7cc0 2014-10-24T11:11:53 sparc: Eliminate long double ifdefs
Anthony Green a9521411 2013-02-09T06:54:40 sparc v8 and testsuite fixes
Anthony Green 70b11b47 2013-02-08T16:12:19 Fix small struct passing on ppc
Anthony Green cb03ea8f 2013-02-08T12:25:18 sparc v9 fixes for sun tools
Anthony Green 9db7e1a9 2013-02-07T21:06:08 Fix botched sparc patch. Update version.
Anthony Green fd07c9e4 2013-02-07T18:00:36 Add cache flushing routine for sun compiler on sparc solaris 2.8
Anthony Green 7c5e60b5 2012-03-29T08:48:22 Rebase on fixed GCC sources
Anthony Green 8360bf1c 2012-02-23T07:01:13 Ensure that users don't include ffitarget.h directly
Anthony Green 049d8386 2011-08-22T14:50:10 Many new patches
Anthony Green 1833aa0f 2011-02-11T07:11:04 sparc ABI test fix.
Anthony Green 404585d1 2011-02-08T10:44:36 Fix sparc v8 aggregate type returns for sun's compiler
Anthony Green 2db72615 2010-11-21T10:50:56 Rebase
Anthony Green 5feacad4 2010-08-05T08:30:04 define generic symbols carefully
Anthony Green d14178be 2010-07-23T09:14:00 FFI_LAST_ABI fix
Anthony Green 3f5b1375 2010-07-12T14:39:18 rebase
Anthony Green 9dc9a293 2010-04-13T10:33:52 Rebase to latest GCC sources
Anthony Green 7b7a42f2 2010-01-12T09:14:14 Rebase from GCC
Anthony Green c3042afa 2010-01-01T08:08:02 Reset quilt patches post 3.0.9 merge with GCC
Anthony Green 0cfe60e9 2009-12-29T10:06:04 3.0.9rc12
Anthony Green 9458d88f 2009-12-26T07:02:27 Rebase from GCC
Anthony Green da11bece 2009-12-24T05:34:46 Release 3.0.9rc5
Anthony Green 115ab36f 2009-12-24T00:22:00 Update missing changes for 3.0.9r4.
Anthony Green c6dddbd0 2009-10-04T08:11:33 Initial commit