From 40ebd5de44dffc715344d8fbe294b5db2aa7b682 Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Tue, 26 Mar 2019 22:34:04 +0100 Subject: [PATCH] Add movi_[df] tests --- tests/movi_d.c | 20 ++++++++++++++++++++ tests/movi_f.c | 20 ++++++++++++++++++++ 2 files changed, 40 insertions(+) create mode 100644 tests/movi_d.c create mode 100644 tests/movi_f.c diff --git a/tests/movi_d.c b/tests/movi_d.c new file mode 100644 index 000000000..58ec949fc --- /dev/null +++ b/tests/movi_d.c @@ -0,0 +1,20 @@ +#include "test.h" + +static void +run_test(jit_state_t *j, uint8_t *arena_base, size_t arena_size) +{ + jit_begin(j, arena_base, arena_size); + + jit_movi_d(j, JIT_F0, 3.14159); + jit_retr_d(j, JIT_F0); + + double (*f)(void) = jit_end(j, NULL); + + ASSERT(f() == 3.14159); +} + +int +main (int argc, char *argv[]) +{ + return main_helper(argc, argv, run_test); +} diff --git a/tests/movi_f.c b/tests/movi_f.c new file mode 100644 index 000000000..0b92f9242 --- /dev/null +++ b/tests/movi_f.c @@ -0,0 +1,20 @@ +#include "test.h" + +static void +run_test(jit_state_t *j, uint8_t *arena_base, size_t arena_size) +{ + jit_begin(j, arena_base, arena_size); + + jit_movi_f(j, JIT_F0, 3.14159f); + jit_retr_f(j, JIT_F0); + + float (*f)(void) = jit_end(j, NULL); + + ASSERT(f() == 3.14159f); +} + +int +main (int argc, char *argv[]) +{ + return main_helper(argc, argv, run_test); +}