overflow-enable does not occur on shift operations
[soc.git] / src / soc / decoder / power_decoder2.py
index 51c3511f9dc93cde787029b4903e1358f57594da..046b715b19df68803c1c289cc2812b4c37ed31bf 100644 (file)
@@ -450,7 +450,11 @@ class DecodeOE(Elaboratable):
         with m.Switch(op.internal_op):
 
             # mulhw, mulhwu, mulhd, mulhdu - these *ignore* OE
-            with m.Case(MicrOp.OP_MUL_H64, MicrOp.OP_MUL_H32):
+            # also rotate
+            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):
                 pass
 
             # all other ops decode OE field