mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-05-13 01:00:21 +02:00
mips: Pass tests for variadic jit functions on new abi
* lib/jit_mips-cpu.c: Correct definition of htonr_ul. Correct prolog/epilog/va* routines to work on o64 abi. * lib/jit_mips-fpu.c: Correct load of double literal argument when not using a data buffer. Remove alignment correction in vaarg_d if using the new mips abi. * lib/jit_mips.c: Correct code to allow creating variadic jit functions when using the new mips abi. * lib/jit_rewind.c: Minor adjust for rewind when using the new mips abi, if there are varargs arguments in registers.
This commit is contained in:
parent
c6b8fb2a74
commit
17e78965a2
5 changed files with 118 additions and 19 deletions
|
@ -55,6 +55,12 @@ _rewind_prolog(jit_state_t *_jit)
|
|||
#if __arm__
|
||||
assert(jit_cpu.abi);
|
||||
_jitc->function->self.size += 64;
|
||||
#endif
|
||||
#if __mips__ && NEW_ABI
|
||||
/* Only add extra stack space if there are varargs
|
||||
* arguments in registers. */
|
||||
assert(jit_arg_reg_p(_jitc->function->self.argi));
|
||||
_jitc->function->self.size += 64;
|
||||
#endif
|
||||
_jitc->function->self.argi =
|
||||
_jitc->function->self.argf = _jitc->function->self.argn = 0;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue