Lines Matching refs:TargetInstrInfo
1 //===-- TargetInstrInfo.cpp - Target Instruction Information --------------===//
9 // This file implements the TargetInstrInfo class.
13 #include "llvm/CodeGen/TargetInstrInfo.h"
45 TargetInstrInfo::~TargetInstrInfo() = default;
48 TargetInstrInfo::getRegClass(const MCInstrDesc &MCID, unsigned OpNum,
68 void TargetInstrInfo::insertNoop(MachineBasicBlock &MBB,
75 void TargetInstrInfo::insertNoops(MachineBasicBlock &MBB,
101 unsigned TargetInstrInfo::getInlineAsmLength(
142 TargetInstrInfo::ReplaceTailWithBranchTo(MachineBasicBlock::iterator Tail,
168 MachineInstr *TargetInstrInfo::commuteInstructionImpl(MachineInstr &MI,
181 "TargetInstrInfo::CommuteInstructionImpl(): not commutable operands.");
249 MachineInstr *TargetInstrInfo::commuteInstruction(MachineInstr &MI, bool NewMI,
264 bool TargetInstrInfo::fixCommutedOpIndices(unsigned &ResultIdx1,
295 bool TargetInstrInfo::findCommutedOpIndices(const MachineInstr &MI,
299 "TargetInstrInfo::findCommutedOpIndices() can't handle bundles");
319 bool TargetInstrInfo::isUnpredicatedTerminator(const MachineInstr &MI) const {
330 bool TargetInstrInfo::PredicateInstruction(
335 "TargetInstrInfo::PredicateInstruction() can't handle bundles");
360 bool TargetInstrInfo::hasLoadFromStackSlot(
374 bool TargetInstrInfo::hasStoreToStackSlot(
388 bool TargetInstrInfo::getStackSlotRange(const TargetRegisterClass *RC,
418 void TargetInstrInfo::reMaterialize(MachineBasicBlock &MBB,
428 bool TargetInstrInfo::produceSameValue(const MachineInstr &MI0,
435 TargetInstrInfo::duplicate(MachineBasicBlock &MBB,
452 const TargetInstrInfo &TII,
483 MCInst TargetInstrInfo::getNop() const { llvm_unreachable("Not implemented"); }
486 TargetInstrInfo::getPatchpointUnfoldableRange(const MachineInstr &MI) const {
505 const TargetInstrInfo &TII) {
569 const TargetInstrInfo &TII) {
596 const TargetInstrInfo &TII) {
634 MachineInstr *TargetInstrInfo::foldMemoryOperand(MachineInstr &MI,
729 MachineInstr *TargetInstrInfo::foldMemoryOperand(MachineInstr &MI,
800 void TargetInstrInfo::lowerCopy(MachineInstr *MI,
833 bool TargetInstrInfo::hasReassociableOperands(
852 bool TargetInstrInfo::areOpcodesEqualOrInverse(unsigned Opcode1,
857 bool TargetInstrInfo::hasReassociableSibling(const MachineInstr &Inst,
892 bool TargetInstrInfo::isReassociationCandidate(const MachineInstr &Inst,
921 bool TargetInstrInfo::getMachineCombinerPatterns(
944 bool TargetInstrInfo::isThroughputPattern(unsigned Pattern) const {
949 TargetInstrInfo::getCombinerObjective(unsigned Pattern) const {
954 TargetInstrInfo::getReassociationOpcodes(unsigned Pattern,
1042 // TargetInstrInfo::getReassociationOpcodes.
1058 void TargetInstrInfo::getReassociateOperandIndices(
1081 void TargetInstrInfo::reassociateOps(
1089 const TargetInstrInfo *TII = MF->getSubtarget().getInstrInfo();
1247 void TargetInstrInfo::genAlternativeCodeSequence(
1268 MachineTraceStrategy TargetInstrInfo::getMachineCombinerTraceStrategy() const {
1272 bool TargetInstrInfo::isReallyTriviallyReMaterializable(
1351 int TargetInstrInfo::getSPAdjust(const MachineInstr &MI) const {
1375 bool TargetInstrInfo::isSchedulingBoundary(const MachineInstr &MI,
1398 bool TargetInstrInfo::usePreRAHazardRecognizer() const {
1403 ScheduleHazardRecognizer *TargetInstrInfo::
1411 ScheduleHazardRecognizer *TargetInstrInfo::CreateTargetMIHazardRecognizer(
1417 ScheduleHazardRecognizer *TargetInstrInfo::
1424 bool TargetInstrInfo::getMemOperandWithOffset(
1442 TargetInstrInfo::getOperandLatency(const InstrItineraryData *ItinData,
1458 unsigned TargetInstrInfo::getInstrLatency(const InstrItineraryData *ItinData,
1473 unsigned TargetInstrInfo::getNumMicroOps(const InstrItineraryData *ItinData,
1489 unsigned TargetInstrInfo::defaultDefLatency(const MCSchedModel &SchedModel,
1500 unsigned TargetInstrInfo::getPredicationCost(const MachineInstr &) const {
1504 unsigned TargetInstrInfo::getInstrLatency(const InstrItineraryData *ItinData,
1515 bool TargetInstrInfo::hasLowDefLatency(const TargetSchedModel &SchedModel,
1528 bool TargetInstrInfo::isFunctionSafeToSplit(const MachineFunction &MF) const {
1548 TargetInstrInfo::describeLoadedValue(const MachineInstr &MI,
1626 unsigned TargetInstrInfo::getCallFrameSizeAt(MachineInstr &MI) const {
1643 std::optional<unsigned> TargetInstrInfo::getOperandLatency(
1651 bool TargetInstrInfo::getRegSequenceInputs(
1678 bool TargetInstrInfo::getExtractSubregInputs(
1703 bool TargetInstrInfo::getInsertSubregInputs(
1732 std::string TargetInstrInfo::createMIROperandComment(
1790 TargetInstrInfo::PipelinerLoopInfo::~PipelinerLoopInfo() = default;
1792 void TargetInstrInfo::mergeOutliningCandidateAttributes(
1812 outliner::InstrType TargetInstrInfo::getOutliningType(
1889 bool TargetInstrInfo::isMBBSafeToOutlineFrom(MachineBasicBlock &MBB,