1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-20 11:40:18 +02:00

Convert tests to jit_load_args

This commit is contained in:
Andy Wingo 2019-03-25 15:24:40 +01:00
parent df0a5d738f
commit f0cecc45d4
4 changed files with 24 additions and 15 deletions

View file

@ -5,11 +5,14 @@ run_test(jit_state_t *j, uint8_t *arena_base, size_t arena_size)
{ {
jit_begin(j, arena_base, arena_size); jit_begin(j, arena_base, arena_size);
jit_arg_abi_t abi[] = { JIT_ARG_ABI_INT32 }; const jit_arg_abi_t abi[] = { JIT_ARG_ABI_INTMAX };
jit_arg_t args[1]; jit_arg_t args[1];
const jit_anyreg_t regs[] = { { .gpr=JIT_R0 } };
jit_receive(j, 1, abi, args); jit_receive(j, 1, abi, args);
ASSERT(args[0].kind == JIT_ARG_LOC_GPR); jit_load_args(j, 1, abi, args, regs);
jit_addi(j, JIT_R0, args[0].loc.gpr, 69);
jit_addi(j, JIT_R0, JIT_R0, 69);
jit_retr(j, JIT_R0); jit_retr(j, JIT_R0);
size_t size = 0; size_t size = 0;

View file

@ -5,12 +5,14 @@ run_test(jit_state_t *j, uint8_t *arena_base, size_t arena_size)
{ {
jit_begin(j, arena_base, arena_size); jit_begin(j, arena_base, arena_size);
jit_arg_abi_t abi[] = { JIT_ARG_ABI_INT32, JIT_ARG_ABI_INT32 }; const jit_arg_abi_t abi[] = { JIT_ARG_ABI_INTMAX, JIT_ARG_ABI_INTMAX };
jit_arg_t args[2]; jit_arg_t args[2];
const jit_anyreg_t regs[] = { { .gpr=JIT_R0 }, { .gpr=JIT_R1 }};
jit_receive(j, 2, abi, args); jit_receive(j, 2, abi, args);
ASSERT(args[0].kind == JIT_ARG_LOC_GPR); jit_load_args(j, 2, abi, args, regs);
ASSERT(args[1].kind == JIT_ARG_LOC_GPR);
jit_addr(j, JIT_R0, args[0].loc.gpr, args[1].loc.gpr); jit_addr(j, JIT_R0, JIT_R0, JIT_R1);
jit_retr(j, JIT_R0); jit_retr(j, JIT_R0);
size_t size = 0; size_t size = 0;

View file

@ -5,12 +5,14 @@ run_test(jit_state_t *j, uint8_t *arena_base, size_t arena_size)
{ {
jit_begin(j, arena_base, arena_size); jit_begin(j, arena_base, arena_size);
jit_arg_abi_t abi[] = { JIT_ARG_ABI_DOUBLE, JIT_ARG_ABI_DOUBLE }; const jit_arg_abi_t abi[] = { JIT_ARG_ABI_DOUBLE, JIT_ARG_ABI_DOUBLE };
jit_arg_t args[2]; jit_arg_t args[2];
const jit_anyreg_t regs[] = { { .gpr=JIT_F0 }, { .gpr=JIT_F1 }};
jit_receive(j, 2, abi, args); jit_receive(j, 2, abi, args);
ASSERT(args[0].kind == JIT_ARG_LOC_FPR); jit_load_args(j, 2, abi, args, regs);
ASSERT(args[1].kind == JIT_ARG_LOC_FPR);
jit_addr_d(j, JIT_F0, args[0].loc.fpr, args[1].loc.fpr); jit_addr_d(j, JIT_F0, JIT_F0, JIT_F1);
jit_retr_d(j, JIT_F0); jit_retr_d(j, JIT_F0);
size_t size = 0; size_t size = 0;

View file

@ -5,12 +5,14 @@ run_test(jit_state_t *j, uint8_t *arena_base, size_t arena_size)
{ {
jit_begin(j, arena_base, arena_size); jit_begin(j, arena_base, arena_size);
jit_arg_abi_t abi[] = { JIT_ARG_ABI_FLOAT, JIT_ARG_ABI_FLOAT }; const jit_arg_abi_t abi[] = { JIT_ARG_ABI_FLOAT, JIT_ARG_ABI_FLOAT };
jit_arg_t args[2]; jit_arg_t args[2];
const jit_anyreg_t regs[] = { { .gpr=JIT_F0 }, { .gpr=JIT_F1 }};
jit_receive(j, 2, abi, args); jit_receive(j, 2, abi, args);
ASSERT(args[0].kind == JIT_ARG_LOC_FPR); jit_load_args(j, 2, abi, args, regs);
ASSERT(args[1].kind == JIT_ARG_LOC_FPR);
jit_addr_f(j, JIT_F0, args[0].loc.fpr, args[1].loc.fpr); jit_addr_f(j, JIT_F0, JIT_F0, JIT_F1);
jit_retr_f(j, JIT_F0); jit_retr_f(j, JIT_F0);
size_t size = 0; size_t size = 0;