Lines Matching defs:MCDesc

222 static void computeMaxLatency(InstrDesc &ID, const MCInstrDesc &MCDesc,
226 if (MCDesc.isCall()) {
239 static Error verifyOperands(const MCInstrDesc &MCDesc, const MCInst &MCI) {
242 unsigned NumExplicitDefs = MCDesc.getNumDefs();
254 if (MCDesc.hasOptionalDef()) {
256 const MCOperand &Op = MCI.getOperand(MCDesc.getNumOperands() - 1);
270 const MCInstrDesc &MCDesc = MCII.get(MCI.getOpcode());
278 // 2. Uses start at index #(MCDesc.getNumDefs()).
302 // MCDesc reports:
317 unsigned NumExplicitDefs = MCDesc.getNumDefs();
318 unsigned NumImplicitDefs = MCDesc.implicit_defs().size();
321 if (MCDesc.hasOptionalDef())
324 unsigned NumVariadicOps = MCI.getNumOperands() - MCDesc.getNumOperands();
330 unsigned OptionalDefIdx = MCDesc.getNumOperands() - 1;
337 if (MCDesc.operands()[CurrentDef].isOptionalDef()) {
375 Write.RegisterID = MCDesc.implicit_defs()[CurrentDef];
399 if (MCDesc.hasOptionalDef()) {
416 bool AssumeUsesOnly = !MCDesc.variadicOpsAreDefs();
417 CurrentDef = NumExplicitDefs + NumImplicitDefs + MCDesc.hasOptionalDef();
418 for (unsigned I = 0, OpIndex = MCDesc.getNumOperands();
445 const MCInstrDesc &MCDesc = MCII.get(MCI.getOpcode());
446 unsigned NumExplicitUses = MCDesc.getNumOperands() - MCDesc.getNumDefs();
447 unsigned NumImplicitUses = MCDesc.implicit_uses().size();
449 if (MCDesc.hasOptionalDef())
451 unsigned NumVariadicOps = MCI.getNumOperands() - MCDesc.getNumOperands();
455 for (unsigned I = 0, OpIndex = MCDesc.getNumDefs(); I < NumExplicitUses;
478 Read.RegisterID = MCDesc.implicit_uses()[I];
489 bool AssumeDefsOnly = MCDesc.variadicOpsAreDefs();
490 for (unsigned I = 0, OpIndex = MCDesc.getNumOperands();
567 const MCInstrDesc &MCDesc = MCII.get(Opcode);
602 if (MCDesc.isCall() && FirstCallInst) {
610 if (MCDesc.isReturn() && FirstReturnInst) {
618 computeMaxLatency(*ID, MCDesc, SCDesc, STI, CallLatency);
620 if (Error Err = verifyOperands(MCDesc, MCI))
634 bool IsVariadic = MCDesc.isVariadic();
702 const MCInstrDesc &MCDesc = MCII.get(MCI.getOpcode());
706 NewIS->setMayLoad(MCDesc.mayLoad());
707 NewIS->setMayStore(MCDesc.mayStore());
708 NewIS->setHasSideEffects(MCDesc.hasUnmodeledSideEffects());