incompatibility with POWER9 on mulhw/u due to lack of spec clarity
authorLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Thu, 27 Aug 2020 16:23:01 +0000 (17:23 +0100)
committerLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Thu, 27 Aug 2020 16:23:01 +0000 (17:23 +0100)
both microwatt and IBM POWER9 violate spec
http://lists.libre-soc.org/pipermail/libre-soc-dev/2020-August/000302.html

src/soc/decoder/power_decoder2.py

index 046b715b19df68803c1c289cc2812b4c37ed31bf..0629217eaa3bfb021d37adf5c3dbe029b6982741 100644 (file)
@@ -451,7 +451,9 @@ class DecodeOE(Elaboratable):
 
             # mulhw, mulhwu, mulhd, mulhdu - these *ignore* OE
             # also rotate
-            with m.Case(MicrOp.OP_MUL_H64, MicrOp.OP_MUL_H32,
+            # XXX ARGH! ignoring OE causes incompatibility with microwatt
+            # http://lists.libre-soc.org/pipermail/libre-soc-dev/2020-August/000302.html
+            with m.Case(#MicrOp.OP_MUL_H64, MicrOp.OP_MUL_H32,
                         MicrOp.OP_SHL, MicrOp.OP_SHR, MicrOp.OP_RLC,
                         MicrOp.OP_RLCL, MicrOp.OP_RLCR,
                         MicrOp.OP_EXTSWSLI):