src/aarch64


Log

Author Commit Date CI Message
Andrew Pinski 95df3791 2015-02-11T08:31:48 aarch64: Handle ILP32 ABI
Yavor Georgiev 53636634 2015-01-16T15:19:38 aarch64: implement the trampoline table workaround for ffi closures on Apple systems This is a direct copy/paste port of the ARM code, with changes because of Aarch64 pc-relative addressing restrictions.
Yavor Georgiev 05e65b4e 2015-01-16T15:18:04 aarch64: rewrite range syntax into list to appease Clang Clang's assembler in Xcode 6 appears to choke when the operand of st4 is a range, but is happy with a list.
James Greenhalgh 9ae3bc87 2014-12-06T23:58:41 Fix for https://github.com/atgreen/libffi/issues/141
Anthony Green 20562ac0 2014-11-12T07:00:59 Fix for AArch64. Release as 3.2.1.
Richard Henderson c6352b66 2014-10-23T00:26:14 aarch64: Add support for Go closures
Richard Henderson 0e41c73b 2014-10-22T23:48:12 aarch64: Move x8 out of call_context Reduces stack size. It was only used by the closure, and there are available argument registers.
Richard Henderson a992f878 2014-10-22T22:58:09 aarch64: Add support for complex types
Richard Henderson 2e32f9bf 2014-10-21T22:49:05 aarch64: Use correct return registers There are fewer return registers than argument registers.
Richard Henderson 95a04af1 2014-10-21T22:41:07 aarch64: Reduce the size of register_context We don't need to store 32 general and vector registers. Only 8 of each are used for parameter passing.
Richard Henderson 77c4cddc 2014-10-21T13:30:40 aarch64: Simplify AARCH64_STACK_ALIGN The iOS abi doesn't require padding between arguments, but that's not what AARCH64_STACK_ALIGN meant. The hardware will in fact trap if the SP register is not 16 byte aligned.
Richard Henderson b5f147d8 2014-10-21T13:27:57 aarch64: Always distinguish LONGDOUBLE Avoid if-deffery by forcing FFI_TYPE_LONGDOUBLE different from FFI_TYPE_DOUBLE. This will simply be unused on hosts that define them identically.
Richard Henderson 38b54b9c 2014-10-21T13:17:39 aarch64: Improve is_hfa The set of functions get_homogeneous_type, element_count, and is_hfa are all intertwined and recompute data. Return a compound quantity from is_hfa that contains all the data and avoids the recomputation.
Richard Henderson 18b74ce5 2014-10-21T13:00:34 aarch64: Fix non-apple compilation
Richard Henderson 658b2b56 2014-10-22T22:36:07 aarch64: Remove aarch64_flags This field was useless from the start, since the normal flags field is available for backend use.
Richard Henderson 4a3cbcaa 2014-10-22T22:32:13 aarch64: Unify scalar fp and hfa handling Since an HFA of a single element is exactly the same as scalar, this tidies things up a bit.
Richard Henderson 12cf89ee 2014-10-22T21:53:30 aarch64: Move return value handling into ffi_closure_SYSV As with the change to ffi_call_SYSV, this avoids copying data into a temporary buffer.
Richard Henderson 4fe1aea1 2014-10-22T17:06:19 aarch64: Move return value handling into ffi_call_SYSV This lets us pass return data directly to the caller of ffi_call in most cases, rather than storing it into temporary storage first.
Richard Henderson 325471ea 2014-10-22T13:58:59 aarch64: Merge prep_args with ffi_call Use the trick to allocate the stack frame for ffi_call_SYSV within ffi_call itself.
Richard Henderson 8c8161cb 2014-10-22T12:52:07 aarch64: Tidy up abi manipulation Avoid false abstraction, like get_x_addr. Avoid recomputing data about the type being manipulated. Use NEON insns for HFA manipulation. Note that some of the inline assembly will go away in a subsequent patch.
Richard Henderson b55e0366 2014-10-22T12:33:59 aarch64: Treat void return as not passed in registers This lets us do less post-processing when there's no return value.
Anthony Green 862f53de 2014-09-18T19:06:08 Merge pull request #130 from frida/fix/darwin-aarch64-float-alignment Fix alignment of FFI_TYPE_FLOAT for Apple's ARM64 ABI
Ole André Vadla Ravnås aebf2c30 2014-07-25T21:40:50 Fix alignment of FFI_TYPE_FLOAT for Apple's ARM64 ABI
Ole André Vadla Ravnås 0f4e09d2 2014-07-26T00:11:06 Fix non-variadic CIF initialization for Apple/ARM64 Turns out `aarch64_nfixedargs` wasn't initialized in the non-variadic case, resulting in undefined behavior when allocating arguments.
Anthony Green 8fa28123 2014-04-12T19:32:08 Merge pull request #116 from frida/fix/darwin-aarch64-variadic Fix handling of variadic calls on Darwin/AArch64
Ole André Vadla Ravnås 419503f4 2014-04-06T20:54:13 Fix handling of variadic calls on Darwin/AArch64
Ole André Vadla Ravnås a539f7ff 2014-04-06T20:53:02 Fix alignment of AArch64 assembler functions
Anthony Green 49f7729c 2014-02-28T00:17:16 aarch64 fix
Zachary Waldowski b4df9cf9 2014-02-05T14:22:52 AArch64: Fix void fall-through case when assertions are enabled
Zachary Waldowski f466aad0 2014-01-21T16:38:31 AArch64: Fix missing semicolons when assertions are enabled
Zachary Waldowski 0a0f12ce 2014-01-09T13:50:17 AArch64: Remove duplicitous element_count call. This inhibits an analyzer warning by Clang.
Zachary Waldowski 4330fdcd 2014-01-09T13:53:30 Darwin/aarch64: Respect iOS ABI re: stack argument alignment
Zachary Waldowski 0a333d6c 2014-01-09T14:03:29 Darwin/aarch64: Fix size_t assumptions
Zachary Waldowski 2c18e3c7 2013-12-30T16:14:02 Darwin/aarch64: Fix "shadows declaration" warnings
Zachary Waldowski 1b8a8e20 2014-01-09T13:55:21 Darwin/aarch64: Use Clang cache invalidation builtin
Zachary Waldowski 6030cdca 2013-12-30T15:45:51 Darwin/aarch64: Account for long double being equal to double
Zachary Waldowski 5658b089 2013-12-30T16:33:47 Darwin/aarch64: Use CNAME, restrict .size like ARM
Zachary Waldowski 07175780 2013-12-30T17:48:22 Darwin/aarch64: Fix invalid reference in assembly
Zachary Waldowski 5bfe62a0 2014-01-09T13:41:27 Darwin/AArch64: Inhibit Clang previous prototype warnings
Anthony Green 3dc3f32c 2013-12-05T16:23:25 Undo iOS ARM64 changes.
Zachary Waldowski 0278284e 2013-11-30T03:03:37 Darwin/aarch64: size_t assumptions
Zachary Waldowski 9775446b 2013-11-30T02:39:34 Darwin/aarch64: Fix “shadows declaration” warnings
Zachary Waldowski 4260badc 2013-11-30T02:08:14 Darwin/aarch64: Use Clang cache invalidation builtin
Zachary Waldowski 9fa7998d 2013-11-30T02:07:48 Darwin/aarch64: Inhibit Xcode warning
Zachary Waldowski 0e832048 2013-11-30T02:07:34 Darwin/aarch64: double == long double
Zachary Waldowski b513dfe7 2013-11-30T02:05:22 Darwin/aarch64: Restrict .size to ELF like arm32.
Zachary Waldowski bc978099 2013-11-30T02:04:57 Darwin/aarch64: Potentially(?) fix compile error
Zachary Waldowski d6bb9314 2013-11-30T02:04:22 Darwin/aarch64: Use CNAME refs
Anthony Green 128cd1d2 2013-10-08T06:45:51 Fix spelling errors
Anthony Green 58e8b66f 2012-10-30T07:07:19 AArch64 port
Anthony Green fa5d7479 2012-10-30T07:07:19 AArch64 port