summaryrefslogtreecommitdiff
path: root/src/test/lib/tests/test_gteq.sail
diff options
context:
space:
mode:
authorRobert Norton2017-07-19 18:08:02 +0100
committerRobert Norton2017-07-19 18:08:02 +0100
commit632b10c0d4b01dc1af8593b8ae1f088fbfd9e342 (patch)
treeac566808213125670da5f4dc3d702fe663333f7e /src/test/lib/tests/test_gteq.sail
parentd8969b1f9631dc15d5fb6b3b33a4a69dbfb7358a (diff)
split library tests into separate files to avoid risk of sail compiler stack overflow.
Diffstat (limited to 'src/test/lib/tests/test_gteq.sail')
-rw-r--r--src/test/lib/tests/test_gteq.sail41
1 files changed, 41 insertions, 0 deletions
diff --git a/src/test/lib/tests/test_gteq.sail b/src/test/lib/tests/test_gteq.sail
new file mode 100644
index 00000000..79d4d378
--- /dev/null
+++ b/src/test/lib/tests/test_gteq.sail
@@ -0,0 +1,41 @@
+function unit test() = {
+ test_assert("gteq0", ( 1 >= -1));
+ test_assert("gteq1", (-1 >= -1));
+ test_assert("gteq2", not(-1 >= 1));
+
+ (* XXX default is signed -- document this! *)
+ test_assert("gteq_vec0", (0x1 >= 0xf));
+ test_assert("gteq_vec1", (0xf >= 0xf));
+ test_assert("gteq_vec2", not(0xf >= 0x1));
+
+ (* XXX odd type error here -- sail seems to prefer gteq_vec...
+ test_assert("gteq_vec_range0", (0x1 >= -1));
+ test_assert("gteq_vec_range1", (0xf >= -1));
+ test_assert("gteq_vec_range2", not(0xf >= 1));
+
+ test_assert("gteq_range_vec0", ( 1 >= 0xf));
+ test_assert("gteq_range_vec1", (-1 >= 0xf));
+ test_assert("gteq_range_vec2", not(-1 >= 0x1));*)
+
+ (* XXX missing implementations
+ test_assert("gteq_unsigned0", ( 1 >=_u -1));
+ test_assert("gteq_unsigned1", not(-1 >=_u -1));
+ test_assert("gteq_unsigned2", not(-1 >=_u 1)); *)
+
+ (* XXX missing
+ test_assert("gteq_unsigned_vec0", not(0x1 >=_u 0xf));
+ test_assert("gteq_unsigned_vec1", not(0xf >=_u 0xf));
+ test_assert("gteq_unsigned_vec2", (0xf >=_u 0x1)); *)
+
+ (* NB there is no gteq_vec_range unsigned or signed *)
+
+ (* XXX missing implementations
+ test_assert("gteq_signed0", ( 1 >=_s -1));
+ test_assert("gteq_signed1", not(-1 >=_s -1));
+ test_assert("gteq_signed2", not(-1 >=_s 1)); *)
+
+ test_assert("gteq_vec_signed0", (0x1 >=_s 0xf));
+ test_assert("gteq_vec_signed1", (0xf >=_s 0xf));
+ test_assert("gteq_vec_signed2", not(0xf >=_s 0x1));
+}
+