public OpCodeAdr64(Inst inst, long position, int opCode) : base(inst, position, opCode) { Rd = opCode & 0x1f; Imm = DecoderHelper.DecodeImmS19_2(opCode); Imm |= ((long)opCode >> 29) & 3; }
public OpCodeBImmCmp64(Inst inst, long position, int opCode) : base(inst, position, opCode) { Rt = opCode & 0x1f; Imm = position + DecoderHelper.DecodeImmS19_2(opCode); RegisterSize = (opCode >> 31) != 0 ? State.RegisterSize.Int64 : State.RegisterSize.Int32; }
public OpCodeBImmCond64(Inst inst, long position, int opCode) : base(inst, position, opCode) { int o0 = (opCode >> 4) & 1; if (o0 != 0) { Emitter = InstEmit.Und; return; } Cond = (Condition)(opCode & 0xf); Imm = position + DecoderHelper.DecodeImmS19_2(opCode); }
public OpCodeMemLit64(Inst inst, long position, int opCode) : base(inst, position, opCode) { Rt = opCode & 0x1f; Imm = position + DecoderHelper.DecodeImmS19_2(opCode); switch ((opCode >> 30) & 3) { case 0: Size = 2; Signed = false; Prefetch = false; break; case 1: Size = 3; Signed = false; Prefetch = false; break; case 2: Size = 2; Signed = true; Prefetch = false; break; case 3: Size = 0; Signed = false; Prefetch = true; break; } }
public OpCodeSimdMemLit64(Inst inst, long position, int opCode) : base(inst, position, opCode) { int opc = (opCode >> 30) & 3; if (opc == 3) { Emitter = InstEmit.Und; return; } Rt = opCode & 0x1f; Imm = position + DecoderHelper.DecodeImmS19_2(opCode); Size = opc + 2; }