# instruction decoder - needs a Trap-capable Record (captures EINT etc.)
self.e = Decode2ToExecute1Type("core", opkls=IssuerDecode2ToOperand)
# instruction decoder - needs a Trap-capable Record (captures EINT etc.)
self.e = Decode2ToExecute1Type("core", opkls=IssuerDecode2ToOperand)
setattr(m.submodules, "dec_%s" % v.fn_name, v)
comb += v.dec.raw_opcode_in.eq(self.raw_insn_i)
comb += v.dec.bigendian.eq(self.bigendian_i)
setattr(m.submodules, "dec_%s" % v.fn_name, v)
comb += v.dec.raw_opcode_in.eq(self.raw_insn_i)
comb += v.dec.bigendian.eq(self.bigendian_i)
# ssh, cheat: trap uses the main decoder because of the rewriting
self.des[self.trapunit] = self.e.do
# ssh, cheat: trap uses the main decoder because of the rewriting
self.des[self.trapunit] = self.e.do