remove grev, leaving tests for later use with grevlut
[soc.git] / src / soc / fu / shift_rot / formal / proof_main_stage.py
index 2423518b672e8527e6ae5fbd8582ef9484a161d5..379211d623a01259f77c90229cae0d57f40228a7 100644 (file)
@@ -3,6 +3,13 @@
 """
 Links:
 * https://bugs.libre-soc.org/show_bug.cgi?id=340
+
+run tests with:
+pip install pytest
+pip install pytest-xdist
+pytest -n auto src/soc/fu/shift_rot/formal/proof_main_stage.py
+because that tells pytest to run the tests in parallel, it will take a few
+minutes instead of an hour.
 """
 
 import unittest
@@ -32,8 +39,9 @@ class TstOp(enum.Enum):
     RLCR = MicrOp.OP_RLCR
     EXTSWSLI = MicrOp.OP_EXTSWSLI
     TERNLOG = MicrOp.OP_TERNLOG
-    GREV32 = MicrOp.OP_GREV, 32
-    GREV64 = MicrOp.OP_GREV, 64
+    # grev removed -- leaving code for later use in grevlut
+    # GREV32 = MicrOp.OP_GREV, 32
+    # GREV64 = MicrOp.OP_GREV, 64
 
     @property
     def op(self):
@@ -309,6 +317,7 @@ class Driver(Elaboratable):
                     m.d.comb += Assert(dut.o.o.data[i] == lut[j])
         m.d.comb += Assert(dut.o.xer_ca.data == 0)
 
+    # grev removed -- leaving code for later use in grevlut
     def _check_grev32(self, m, dut):
         m.d.comb += Assume(dut.i.ctx.op.is_32bit)
         # assert zero-extended
@@ -319,6 +328,7 @@ class Driver(Elaboratable):
         m.d.comb += Assert((dut.o.o.data >> i)[0] == (dut.i.ra >> idx)[0])
         m.d.comb += Assert(dut.o.xer_ca.data == 0)
 
+    # grev removed -- leaving code for later use in grevlut
     def _check_grev64(self, m, dut):
         m.d.comb += Assume(~dut.i.ctx.op.is_32bit)
         i = Signal(6)
@@ -361,9 +371,11 @@ class ALUTestCase(FHDLTestCase):
     def test_ternlog(self):
         self.run_it(TstOp.TERNLOG)
 
+    @unittest.skip("grev removed -- leaving code for later use in grevlut")
     def test_grev32(self):
         self.run_it(TstOp.GREV32)
 
+    @unittest.skip("grev removed -- leaving code for later use in grevlut")
     def test_grev64(self):
         self.run_it(TstOp.GREV64)