add module to regspec_decode_* and get_rdflags
authorLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Thu, 2 Dec 2021 14:55:54 +0000 (14:55 +0000)
committerLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Thu, 2 Dec 2021 14:55:57 +0000 (14:55 +0000)
src/openpower/decoder/power_decoder2.py
src/openpower/decoder/power_regspec_map.py

index 49ab5066598d2b0a238b2c5a8497e515a1b6cc17..9a2a7394db78dd3ffb7aa7edc1445a8c121408b1 100644 (file)
@@ -1599,11 +1599,14 @@ class PowerDecode2(PowerDecodeSubset):
         comb += self.do_copy("svstate", self.state.svstate, True)  # SVSTATE
 
 
-def get_rdflags(e, cu):
+def get_rdflags(m, e, cu):
+    """returns a sequential list of the read "ok" flags for a given FU.
+    this list is in order of the CompUnit input specs
+    """
     rdl = []
     for idx in range(cu.n_src):
         regfile, regname, _ = cu.get_in_spec(idx)
-        rdflag, read = regspec_decode_read(e, regfile, regname)
+        rdflag, read = regspec_decode_read(m, e, regfile, regname)
         rdl.append(rdflag)
     log("rdflags", rdl)
     return Cat(*rdl)
index 4a738557f5d44194b08949eb52ffd8e6e5185528..ecea6c9cd8adb2ce7671a18b426a4705774921a5 100644 (file)
@@ -40,7 +40,7 @@ from openpower.decoder.power_enums import CryIn
 from openpower.util import log
 
 
-def regspec_decode_read(e, regfile, name):
+def regspec_decode_read(m, e, regfile, name):
     """regspec_decode_read
     """
 
@@ -122,7 +122,7 @@ def regspec_decode_read(e, regfile, name):
     assert False, "regspec not found %s %s" % (regfile, name)
 
 
-def regspec_decode_write(e, regfile, name):
+def regspec_decode_write(m, e, regfile, name):
     """regspec_decode_write
     """
 
@@ -199,8 +199,8 @@ def regspec_decode_write(e, regfile, name):
     assert False, "regspec not found %s %s" % (regfile, name)
 
 
-def regspec_decode(readmode, e, regfile, name):
+def regspec_decode(m, readmode, e, regfile, name):
     if readmode:
-        return regspec_decode_read(e, regfile, name)
-    return regspec_decode_write(e, regfile, name)
+        return regspec_decode_read(m, e, regfile, name)
+    return regspec_decode_write(m, e, regfile, name)