add pagename to list
authorLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Thu, 2 Apr 2020 15:47:00 +0000 (16:47 +0100)
committerLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Thu, 2 Apr 2020 15:47:00 +0000 (16:47 +0100)
src/soc/decoder/pseudo/pagereader.py

index a95824811089848da555e0b2405989c58f523bad..9914a8155ee3cef86683cb603588d2d66840208e 100644 (file)
@@ -41,15 +41,16 @@ this translates to:
     Special Registers Altered:
     4-space-indented register description
     blank
-    blank (optional)
-
+    blank(s) (optional for convenience at end-of-page)
 """
 
 from collections import namedtuple, OrderedDict
 from copy import copy
 import os
 
-op = namedtuple("Ops", ("desc", "form", "opcode", "regs", "pcode", "sregs"))
+opfields = ("desc", "form", "opcode", "regs", "pcode", "sregs", "page")
+op = namedtuple("Ops", opfields)
+
 
 def get_isa_dir():
     fdir = os.path.abspath(os.path.dirname(__file__))
@@ -59,6 +60,7 @@ def get_isa_dir():
     fdir = os.path.split(fdir)[0]
     return os.path.join(fdir, "libreriscv", "openpower", "isa")
 
+
 class ISA:
 
     def __init__(self):
@@ -70,11 +72,14 @@ class ISA:
             self.read_file(pth)
 
     def read_file(self, fname):
+        pagename = fname.split('.')[0]
         fname = os.path.join(get_isa_dir(), fname)
         with open(fname) as f:
             lines = f.readlines()
         
-        d = {}
+        # set up dict with current page name
+        d = {'pagename': pagename}
+
         l = lines.pop(0).rstrip() # get first line
         while lines:
             print (l)