add create, inf, nan and zero to unit test code
authorLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Mon, 8 Jul 2019 06:17:46 +0000 (07:17 +0100)
committerLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Mon, 8 Jul 2019 06:17:46 +0000 (07:17 +0100)
src/ieee754/fpcommon/test/unit_test_double.py
src/ieee754/fpcommon/test/unit_test_half.py

index ac7ab7b66f8168620584bdf0ad8b22181f943394..bfa949dc821b7cfae5b65b02c71c6d407c3a1953 100644 (file)
@@ -33,6 +33,18 @@ def match(x, y):
         (x == y)
         )
 
+def create(s, e, x):
+    return (s<<63) | ((e+1023) << 52) | m
+
+def inf(s):
+    return create(s, 1024, 0)
+
+def nan(s):
+    return create(s, 1024, 1<<52)
+
+def zero(s):
+    return s<<63
+
 def get_case(dut, a, b):
     yield dut.in_a.v.eq(a)
     yield dut.in_a.stb.eq(1)
index 50c9c24e021d8ae5d0f046bd3a1f835dafde8a42..9f640846a8d7bf78a7a96d2c93f38590af30aab5 100644 (file)
@@ -33,6 +33,18 @@ def match(x, y):
         (x == y)
         )
 
+def create(s, e, x):
+    return (s<<15) | ((e+15) << 11) | m
+
+def inf(s):
+    return create(s, 16, 0)
+
+def nan(s):
+    return create(s, 16, 1<<11)
+
+def zero(s):
+    return s<<15
+
 def get_case(dut, a, b):
     yield dut.in_a.v.eq(a)
     yield dut.in_a.stb.eq(1)