start parsing all source files, output python
[soc.git] / src / soc / decoder / pseudo / pagereader.py
index 61b7838ff45c846907014792e921f4c6fae04e23..aa0557bc5f4cd3d00f9b529a6d88f9d9912fe536 100644 (file)
@@ -66,6 +66,7 @@ class ISA:
     def __init__(self):
         self.instr = OrderedDict()
         self.forms = {}
+        self.page = {}
         for pth in os.listdir(os.path.join(get_isa_dir())):
             print (get_isa_dir(), pth)
             assert pth.endswith(".mdwn"), "only %s in isa dir" % pth
@@ -161,6 +162,11 @@ class ISA:
         fl = self.forms.get(form, [])
         self.forms[form] = fl + [opcode]
 
+        # create list of instructions by page
+        page = op['page']
+        pl = self.page.get(page, [])
+        self.page[page] = pl + [opcode]
+
     def pprint_ops(self):
         for k, v in self.instr.items():
             print ("# %s %s" % (v.opcode, v.desc))