Fix not being able to use all instructions in ISA class
[soc.git] / src / soc / decoder / isa / all.py
index 2cd59a0fe34ffbfdb9aae3b6eea0db7427601776..b6623fe8d642ecd0d7f0ef9f7eba2734139c77e2 100644 (file)
@@ -1,8 +1,19 @@
+from caller import ISACaller
 from fixedarith import fixedarith
 from fixedload import fixedload
 from fixedstore import fixedstore
 
 
 
-class ISA(fixedarith, fixedload, fixedstore):
-    pass
+class ISA(ISACaller):
+    def __init__(self, dec, regs):
+        super().__init__(dec, regs)
+        self.fixedarith = fixedarith(dec, regs)
+        self.fixedload = fixedload(dec, regs)
+        self.fixedstore = fixedstore(dec, regs)
+
+        self.instrs = {
+            **self.fixedarith.instrs,
+            **self.fixedload.instrs,
+            **self.fixedstore.instrs,
+        }