Lines Matching refs:MCDesc

247 static void computeMaxLatency(InstrDesc &ID, const MCInstrDesc &MCDesc,  in computeMaxLatency()  argument
250 if (MCDesc.isCall()) { in computeMaxLatency()
262 static Error verifyOperands(const MCInstrDesc &MCDesc, const MCInst &MCI) { in verifyOperands() argument
265 unsigned NumExplicitDefs = MCDesc.getNumDefs(); in verifyOperands()
277 if (MCDesc.hasOptionalDef()) { in verifyOperands()
279 const MCOperand &Op = MCI.getOperand(MCDesc.getNumOperands() - 1); in verifyOperands()
293 const MCInstrDesc &MCDesc = MCII.get(MCI.getOpcode()); in populateWrites() local
340 unsigned NumExplicitDefs = MCDesc.getNumDefs(); in populateWrites()
341 unsigned NumImplicitDefs = MCDesc.getNumImplicitDefs(); in populateWrites()
344 if (MCDesc.hasOptionalDef()) in populateWrites()
347 unsigned NumVariadicOps = MCI.getNumOperands() - MCDesc.getNumOperands(); in populateWrites()
353 unsigned OptionalDefIdx = MCDesc.getNumOperands() - 1; in populateWrites()
360 if (MCDesc.OpInfo[CurrentDef].isOptionalDef()) { in populateWrites()
394 Write.RegisterID = MCDesc.getImplicitDefs()[CurrentDef]; in populateWrites()
418 if (MCDesc.hasOptionalDef()) { in populateWrites()
435 bool AssumeUsesOnly = !MCDesc.variadicOpsAreDefs(); in populateWrites()
436 CurrentDef = NumExplicitDefs + NumImplicitDefs + MCDesc.hasOptionalDef(); in populateWrites()
437 for (unsigned I = 0, OpIndex = MCDesc.getNumOperands(); in populateWrites()
462 const MCInstrDesc &MCDesc = MCII.get(MCI.getOpcode()); in populateReads() local
463 unsigned NumExplicitUses = MCDesc.getNumOperands() - MCDesc.getNumDefs(); in populateReads()
464 unsigned NumImplicitUses = MCDesc.getNumImplicitUses(); in populateReads()
466 if (MCDesc.hasOptionalDef()) in populateReads()
468 unsigned NumVariadicOps = MCI.getNumOperands() - MCDesc.getNumOperands(); in populateReads()
472 for (unsigned I = 0, OpIndex = MCDesc.getNumDefs(); I < NumExplicitUses; in populateReads()
493 Read.RegisterID = MCDesc.getImplicitUses()[I]; in populateReads()
502 bool AssumeDefsOnly = MCDesc.variadicOpsAreDefs(); in populateReads()
503 for (unsigned I = 0, OpIndex = MCDesc.getNumOperands(); in populateReads()
545 const MCInstrDesc &MCDesc = MCII.get(Opcode); in createInstrDescImpl() local
549 unsigned SchedClassID = MCDesc.getSchedClass(); in createInstrDescImpl()
581 if (MCDesc.isCall() && FirstCallInst) { in createInstrDescImpl()
589 if (MCDesc.isReturn() && FirstReturnInst) { in createInstrDescImpl()
596 ID->MayLoad = MCDesc.mayLoad(); in createInstrDescImpl()
597 ID->MayStore = MCDesc.mayStore(); in createInstrDescImpl()
598 ID->HasSideEffects = MCDesc.hasUnmodeledSideEffects(); in createInstrDescImpl()
604 computeMaxLatency(*ID, MCDesc, SCDesc, STI); in createInstrDescImpl()
606 if (Error Err = verifyOperands(MCDesc, MCI)) in createInstrDescImpl()
620 bool IsVariadic = MCDesc.isVariadic(); in createInstrDescImpl()