aboutsummaryrefslogtreecommitdiffstats
path: root/ref_vclz.c
diff options
context:
space:
mode:
Diffstat (limited to 'ref_vclz.c')
-rw-r--r--ref_vclz.c30
1 files changed, 30 insertions, 0 deletions
diff --git a/ref_vclz.c b/ref_vclz.c
index 672a376..2472bd3 100644
--- a/ref_vclz.c
+++ b/ref_vclz.c
@@ -109,4 +109,34 @@ FNNAME (INSN_NAME)
TEST_UNARY_OP(INSN_NAME, q, uint, u, 32, 4);
dump_results_hex (TEST_MSG);
+
+ /* Test with zero as input. */
+ TEST_VDUP(vector, , int, s, 8, 8, 0);
+ TEST_VDUP(vector, , int, s, 16, 4, 0);
+ TEST_VDUP(vector, , int, s, 32, 2, 0);
+ TEST_VDUP(vector, , uint, u, 8, 8, 0);
+ TEST_VDUP(vector, , uint, u, 16, 4, 0);
+ TEST_VDUP(vector, , uint, u, 32, 2, 0);
+ TEST_VDUP(vector, q, int, s, 8, 16, 0);
+ TEST_VDUP(vector, q, int, s, 16, 8, 0);
+ TEST_VDUP(vector, q, int, s, 32, 4, 0);
+ TEST_VDUP(vector, q, uint, u, 8, 16, 0);
+ TEST_VDUP(vector, q, uint, u, 16, 8, 0);
+ TEST_VDUP(vector, q, uint, u, 32, 4, 0);
+
+ /* Apply a unary operator named INSN_NAME */
+ TEST_UNARY_OP(INSN_NAME, , int, s, 8, 8);
+ TEST_UNARY_OP(INSN_NAME, , int, s, 16, 4);
+ TEST_UNARY_OP(INSN_NAME, , int, s, 32, 2);
+ TEST_UNARY_OP(INSN_NAME, , uint, u, 8, 8);
+ TEST_UNARY_OP(INSN_NAME, , uint, u, 16, 4);
+ TEST_UNARY_OP(INSN_NAME, , uint, u, 32, 2);
+ TEST_UNARY_OP(INSN_NAME, q, int, s, 8, 16);
+ TEST_UNARY_OP(INSN_NAME, q, int, s, 16, 8);
+ TEST_UNARY_OP(INSN_NAME, q, int, s, 32, 4);
+ TEST_UNARY_OP(INSN_NAME, q, uint, u, 8, 16);
+ TEST_UNARY_OP(INSN_NAME, q, uint, u, 16, 8);
+ TEST_UNARY_OP(INSN_NAME, q, uint, u, 32, 4);
+
+ dump_results_hex2 (TEST_MSG, " (input=0)");
}