David Schneider
37067ec503
mark all vfp registers as used when done.
...
To avoid assigning registers the would fit, once arguments have been on
the stack, we mark all registers as used once we do not find a free
register for the first time.
2013-11-12 19:49:01 +01:00
David Schneider
4750e3c662
update changelog
2013-03-28 18:48:57 +01:00
David Schneider
9708e7cf09
folow the ARM hard-float ABI in ffi_prep_incoming_args_VFP
2013-03-28 16:40:40 +01:00
David Schneider
b41120981e
create separated versions of ffi_prep_incoming_args_* for SYSV and VFP ABIs.
...
The different versions will be called depending on the value of cif->abi
2013-03-28 16:40:40 +01:00
David Schneider
dd26f1f39c
add a failing test for closures on ARM hardfloat
2013-03-28 16:40:34 +01:00
David Schneider
3c1608613a
extend ffi_prepare_args for FFI_VFP (hard-float ABI), fixing an issue with passing VFP arguments in VFP registers and the stack, while at the same time not using all core registers.
2013-03-28 16:38:28 +01:00
David Schneider
0f2ff2d4c9
separate ARM ffi_prepare_args in a version implementing the simple SYSV calling convention and one for the hard-float calling convention
2013-03-28 16:38:25 +01:00
David Schneider
3a352b8a82
move the hardfloat specific argument copying code to the helper function
2013-03-28 16:38:21 +01:00
David Schneider
5df6b7944a
extract setting of arguments to be passed to a helper function
2013-03-28 16:38:15 +01:00
David Schneider
7d1048c471
extract code to align the argument storage pointer to a helper function
2013-03-28 16:38:10 +01:00
David Schneider
b9f013788f
add a testcase, that on ARM hardfloat needs more than the 8 VFP argument registers to pass arguments to a call
2013-03-28 16:38:04 +01:00
David Schneider
2fbdb0f231
use the absolute value to check the test result against an epsilon
2013-03-28 16:37:58 +01:00