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
opcode, regs = o[0], o[1:]
op = copy(d)
op['regs'] = regs
+ regs[0] = regs[0].split(",")
op['opcode'] = opcode
self.instr[opcode] = Ops(**op)
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))