From c7d595ae464d9731e7253e7c4eb716c04e68d217 Mon Sep 17 00:00:00 2001 From: Afonso Bordado Date: Tue, 14 Sep 2021 13:23:20 +0100 Subject: [PATCH] cranelift: Add `bextend` tests to interpreter --- .../filetests/filetests/runtests/bextend.clif | 84 +++++++++++++++++++ .../filetests/runtests/i128-bextend.clif | 42 ++++++++++ 2 files changed, 126 insertions(+) create mode 100644 cranelift/filetests/filetests/runtests/bextend.clif create mode 100644 cranelift/filetests/filetests/runtests/i128-bextend.clif diff --git a/cranelift/filetests/filetests/runtests/bextend.clif b/cranelift/filetests/filetests/runtests/bextend.clif new file mode 100644 index 0000000000..9f78fd9d2b --- /dev/null +++ b/cranelift/filetests/filetests/runtests/bextend.clif @@ -0,0 +1,84 @@ +test interpret + +function %bextend_b1_b8(b1) -> b8 { +block0(v0: b1): + v1 = bextend.b8 v0 + return v1 +} +; run: %bextend_b1_b8(true) == true +; run: %bextend_b1_b8(false) == false + +function %bextend_b1_b16(b1) -> b16 { +block0(v0: b1): + v1 = bextend.b16 v0 + return v1 +} +; run: %bextend_b1_b16(true) == true +; run: %bextend_b1_b16(false) == false + +function %bextend_b1_b32(b1) -> b32 { +block0(v0: b1): + v1 = bextend.b32 v0 + return v1 +} +; run: %bextend_b1_b32(true) == true +; run: %bextend_b1_b32(false) == false + +function %bextend_b1_b64(b1) -> b64 { +block0(v0: b1): + v1 = bextend.b64 v0 + return v1 +} +; run: %bextend_b1_b64(true) == true +; run: %bextend_b1_b64(false) == false + + +function %bextend_b8_b16(b8) -> b16 { +block0(v0: b8): + v1 = bextend.b16 v0 + return v1 +} +; run: %bextend_b8_b16(true) == true +; run: %bextend_b8_b16(false) == false + +function %bextend_b8_b32(b8) -> b32 { +block0(v0: b8): + v1 = bextend.b32 v0 + return v1 +} +; run: %bextend_b8_b32(true) == true +; run: %bextend_b8_b32(false) == false + +function %bextend_b8_b64(b8) -> b64 { +block0(v0: b8): + v1 = bextend.b64 v0 + return v1 +} +; run: %bextend_b8_b64(true) == true +; run: %bextend_b8_b64(false) == false + + +function %bextend_b16_b32(b16) -> b32 { +block0(v0: b16): + v1 = bextend.b32 v0 + return v1 +} +; run: %bextend_b16_b32(true) == true +; run: %bextend_b16_b32(false) == false + +function %bextend_b16_b64(b16) -> b64 { +block0(v0: b16): + v1 = bextend.b64 v0 + return v1 +} +; run: %bextend_b16_b64(true) == true +; run: %bextend_b16_b64(false) == false + + +function %bextend_b32_b64(b32) -> b64 { +block0(v0: b32): + v1 = bextend.b64 v0 + return v1 +} +; run: %bextend_b32_b64(true) == true +; run: %bextend_b32_b64(false) == false diff --git a/cranelift/filetests/filetests/runtests/i128-bextend.clif b/cranelift/filetests/filetests/runtests/i128-bextend.clif new file mode 100644 index 0000000000..34372f98e4 --- /dev/null +++ b/cranelift/filetests/filetests/runtests/i128-bextend.clif @@ -0,0 +1,42 @@ +test interpret + +function %bextend_b1_b128(b1) -> b128 { +block0(v0: b1): + v1 = bextend.b128 v0 + return v1 +} +; run: %bextend_b1_b128(true) == true +; run: %bextend_b1_b128(false) == false + +function %bextend_b8_b128(b8) -> b128 { +block0(v0: b8): + v1 = bextend.b128 v0 + return v1 +} +; run: %bextend_b8_b128(true) == true +; run: %bextend_b8_b128(false) == false + +function %bextend_b16_b128(b16) -> b128 { +block0(v0: b16): + v1 = bextend.b128 v0 + return v1 +} +; run: %bextend_b16_b128(true) == true +; run: %bextend_b16_b128(false) == false + +function %bextend_b32_b128(b32) -> b128 { +block0(v0: b32): + v1 = bextend.b128 v0 + return v1 +} +; run: %bextend_b32_b128(true) == true +; run: %bextend_b32_b128(false) == false + + +function %bextend_b64_b128(b64) -> b128 { +block0(v0: b64): + v1 = bextend.b128 v0 + return v1 +} +; run: %bextend_b64_b128(true) == true +; run: %bextend_b64_b128(false) == false