1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-20 03:30:27 +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_arg_abi_t abi[] = { JIT_ARG_ABI_INT32 };
const jit_arg_abi_t abi[] = { JIT_ARG_ABI_INTMAX };
jit_arg_t args[1];
const jit_anyreg_t regs[] = { { .gpr=JIT_R0 } };
jit_receive(j, 1, abi, args);
ASSERT(args[0].kind == JIT_ARG_LOC_GPR);
jit_addi(j, JIT_R0, args[0].loc.gpr, 69);
jit_load_args(j, 1, abi, args, regs);
jit_addi(j, JIT_R0, JIT_R0, 69);
jit_retr(j, JIT_R0);
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_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];
const jit_anyreg_t regs[] = { { .gpr=JIT_R0 }, { .gpr=JIT_R1 }};
jit_receive(j, 2, abi, args);
ASSERT(args[0].kind == JIT_ARG_LOC_GPR);
ASSERT(args[1].kind == JIT_ARG_LOC_GPR);
jit_addr(j, JIT_R0, args[0].loc.gpr, args[1].loc.gpr);
jit_load_args(j, 2, abi, args, regs);
jit_addr(j, JIT_R0, JIT_R0, JIT_R1);
jit_retr(j, JIT_R0);
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_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];
const jit_anyreg_t regs[] = { { .gpr=JIT_F0 }, { .gpr=JIT_F1 }};
jit_receive(j, 2, abi, args);
ASSERT(args[0].kind == JIT_ARG_LOC_FPR);
ASSERT(args[1].kind == JIT_ARG_LOC_FPR);
jit_addr_d(j, JIT_F0, args[0].loc.fpr, args[1].loc.fpr);
jit_load_args(j, 2, abi, args, regs);
jit_addr_d(j, JIT_F0, JIT_F0, JIT_F1);
jit_retr_d(j, JIT_F0);
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_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];
const jit_anyreg_t regs[] = { { .gpr=JIT_F0 }, { .gpr=JIT_F1 }};
jit_receive(j, 2, abi, args);
ASSERT(args[0].kind == JIT_ARG_LOC_FPR);
ASSERT(args[1].kind == JIT_ARG_LOC_FPR);
jit_addr_f(j, JIT_F0, args[0].loc.fpr, args[1].loc.fpr);
jit_load_args(j, 2, abi, args, regs);
jit_addr_f(j, JIT_F0, JIT_F0, JIT_F1);
jit_retr_f(j, JIT_F0);
size_t size = 0;