Lines Matching defs:IT
262 static void setMemOp(InstructionTemplate &IT, int OpIdx,
264 const auto Op = IT.getInstr().Operands[OpIdx];
266 IT.getValueFor(Op) = OpVal;
300 InstructionTemplate IT(&Instr);
302 setMemOp(IT, 1, MCOperand::createReg(BaseReg));
303 setMemOp(IT, 2, MCOperand::createImm(Scale));
304 setMemOp(IT, 3, MCOperand::createReg(IndexReg));
305 setMemOp(IT, 4, MCOperand::createImm(Disp));
307 setMemOp(IT, 5, MCOperand::createReg(0));
316 IT, 0,
320 CT.Instructions.push_back(std::move(IT));
742 void fillMemoryOperands(InstructionTemplate &IT, MCRegister Reg,
912 void ExegesisX86Target::fillMemoryOperands(InstructionTemplate &IT,
915 assert(!isInvalidMemoryInstr(IT.getInstr()) &&
917 int MemOpIdx = X86II::getMemoryOperandNo(IT.getInstr().Description.TSFlags);
920 MemOpIdx += X86II::getOperandBias(IT.getInstr().Description);
921 setMemOp(IT, MemOpIdx + 0, MCOperand::createReg(Reg)); // BaseReg
922 setMemOp(IT, MemOpIdx + 1, MCOperand::createImm(1)); // ScaleAmt
923 setMemOp(IT, MemOpIdx + 2, MCOperand::createReg(0)); // IndexReg
924 setMemOp(IT, MemOpIdx + 3, MCOperand::createImm(Offset)); // Disp
925 setMemOp(IT, MemOpIdx + 4, MCOperand::createReg(0)); // Segment