コード例 #1
0
 public override XCoreInstruction Decode(uint wInstr, XCore200Disassembler dasm)
 {
     if (!dasm.rdr.TryReadLeUInt16(out ushort u2))
     {
         return(dasm.CreateInvalidInstruction());
     }
     wInstr = (wInstr << 16) | u2;
     return(subDecoder.Decode(wInstr, dasm));
 }
コード例 #2
0
            public override XCoreInstruction Decode(uint wInstr, XCore200Disassembler dasm)
            {
                foreach (var m in mutators)
                {
                    if (!m(wInstr, dasm))
                    {
                        return(dasm.CreateInvalidInstruction());
                    }
                }
                var instr = new XCoreInstruction
                {
                    InstructionClass = iclass,
                    Mnemonic         = mnemonic,
                    Operands         = dasm.ops.ToArray()
                };

                return(instr);
            }