Home
last modified time | relevance | path

Searched refs:SIInstrInfo (Results 1 – 25 of 67) sorted by relevance

123

/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DGCNHazardRecognizer.cpp119 static bool isSendMsgTraceDataOrGDS(const SIInstrInfo &TII, in isSendMsgTraceDataOrGDS()
159 return SIInstrInfo::isVALU(MI) && in isLdsDma()
160 (SIInstrInfo::isMUBUF(MI) || SIInstrInfo::isFLAT(MI)); in isLdsDma()
163 static unsigned getHWReg(const SIInstrInfo *TII, const MachineInstr &RegInstr) { in getHWReg()
179 if (SIInstrInfo::isSMRD(*MI) && checkSMRDHazards(MI) > 0) in getHazardType()
191 if (SIInstrInfo::isVMEM(*MI) && checkVMEMHazards(MI) > 0) in getHazardType()
194 if (SIInstrInfo::isVALU(*MI) && checkVALUHazards(MI) > 0) in getHazardType()
197 if (SIInstrInfo::isDPP(*MI) && checkDPPHazards(MI) > 0) in getHazardType()
206 if ((SIInstrInfo::isVALU(*MI) || SIInstrInfo::isVMEM(*MI) || in getHazardType()
207 SIInstrInfo::isDS(*MI) || SIInstrInfo::isEXP(*MI)) && in getHazardType()
[all …]
H A DSIInsertHardClauses.cpp106 if ((SIInstrInfo::isVMEM(MI) && !SIInstrInfo::isFLAT(MI)) || in getHardClauseType()
107 SIInstrInfo::isSegmentSpecificFLAT(MI)) { in getHardClauseType()
115 if (SIInstrInfo::isFLAT(MI)) in getHardClauseType()
119 if (SIInstrInfo::isMIMG(MI)) { in getHardClauseType()
131 if ((SIInstrInfo::isVMEM(MI) && !SIInstrInfo::isFLAT(MI)) || in getHardClauseType()
132 SIInstrInfo::isSegmentSpecificFLAT(MI)) { in getHardClauseType()
137 if (SIInstrInfo::isFLAT(MI)) { in getHardClauseType()
144 if (SIInstrInfo::isSMRD(MI)) in getHardClauseType()
178 bool emitClause(const ClauseInfo &CI, const SIInstrInfo *SII) { in emitClause()
206 const SIInstrInfo *SII = ST->getInstrInfo(); in run()
H A DSIModeRegister.cpp128 void processBlockPhase1(MachineBasicBlock &MBB, const SIInstrInfo *TII);
130 void processBlockPhase2(MachineBasicBlock &MBB, const SIInstrInfo *TII);
132 void processBlockPhase3(MachineBasicBlock &MBB, const SIInstrInfo *TII);
134 Status getInstructionMode(MachineInstr &MI, const SIInstrInfo *TII);
137 const SIInstrInfo *TII, Status InstrMode);
171 const SIInstrInfo *TII) { in getInstructionMode()
222 const SIInstrInfo *TII, Status InstrMode) { in insertSetreg()
257 const SIInstrInfo *TII) { in processBlockPhase1()
355 const SIInstrInfo *TII) { in processBlockPhase2()
419 const SIInstrInfo *TII) { in processBlockPhase3()
[all …]
H A DAMDGPUMCInstLower.cpp52 case SIInstrInfo::MO_GOTPCREL: in getSpecifier()
54 case SIInstrInfo::MO_GOTPCREL32_LO: in getSpecifier()
56 case SIInstrInfo::MO_GOTPCREL32_HI: in getSpecifier()
58 case SIInstrInfo::MO_REL32_LO: in getSpecifier()
60 case SIInstrInfo::MO_REL32_HI: in getSpecifier()
62 case SIInstrInfo::MO_ABS32_LO: in getSpecifier()
64 case SIInstrInfo::MO_ABS32_HI: in getSpecifier()
109 if (MO.getTargetFlags() == SIInstrInfo::MO_FAR_BRANCH_OFFSET) { in lowerOperand()
124 const auto *TII = static_cast<const SIInstrInfo*>(ST.getInstrInfo()); in lowerT16D16Helper()
175 const auto *TII = static_cast<const SIInstrInfo *>(ST.getInstrInfo()); in lower()
[all …]
H A DAMDGPUExportClustering.cpp29 return SIInstrInfo::isEXP(*SU.getInstr()); in isExport()
32 static bool isPositionExport(const SIInstrInfo *TII, SUnit *SU) { in isPositionExport()
38 static void sortChain(const SIInstrInfo *TII, SmallVector<SUnit *, 8> &Chain, in sortChain()
108 const SIInstrInfo *TII = static_cast<const SIInstrInfo *>(DAG->TII); in apply()
H A DSIInstrInfo.cpp63 SIInstrInfo::SIInstrInfo(const GCNSubtarget &ST) in SIInstrInfo() function in SIInstrInfo
110 if (SIInstrInfo::isVOP1(MI) || SIInstrInfo::isVOP2(MI) || in canRemat()
111 SIInstrInfo::isVOP3(MI) || SIInstrInfo::isSDWA(MI) || in canRemat()
112 SIInstrInfo::isSALU(MI)) in canRemat()
115 if (SIInstrInfo::isSMRD(MI)) { in canRemat()
125 bool SIInstrInfo::isReallyTriviallyReMaterializable( in isReallyTriviallyReMaterializable()
150 bool SIInstrInfo::resultDependsOnExec(const MachineInstr &MI) const { in resultDependsOnExec()
190 bool SIInstrInfo::isIgnorableUse(const MachineOperand &MO) const { in isIgnorableUse()
196 bool SIInstrInfo::isSafeToSink(MachineInstr &MI, in isSafeToSink()
236 bool SIInstrInfo::areLoadsFromSameBasePtr(SDNode *Load0, SDNode *Load1, in areLoadsFromSameBasePtr()
[all …]
H A DSIPeepholeSDWA.cpp42 const SIInstrInfo *TII);
53 const SIInstrInfo *TII;
100 const SIInstrInfo *TII) = 0;
111 virtual MachineInstr *potentialToConvert(const SIInstrInfo *TII,
114 virtual bool convertToSDWA(MachineInstr &MI, const SIInstrInfo *TII) = 0;
144 MachineInstr *potentialToConvert(const SIInstrInfo *TII,
147 bool convertToSDWA(MachineInstr &MI, const SIInstrInfo *TII) override;
149 const SIInstrInfo *TII) override;
156 uint64_t getSrcMods(const SIInstrInfo *TII,
174 MachineInstr *potentialToConvert(const SIInstrInfo *TII,
[all …]
H A DAMDGPUSetWavePriority.cpp53 const SIInstrInfo *TII;
107 return SIInstrInfo::isVMEM(MI) && MI.mayLoad(); in isVMEMLoad()
154 } else if (SIInstrInfo::isDS(MI)) { in run()
159 } else if (SIInstrInfo::isVALU(MI)) { in run()
192 while (I != E && !SIInstrInfo::isVALU(*I) && !I->isTerminator()) in run()
H A DAMDGPUIGroupLP.cpp90 const SIInstrInfo *TII;
103 InstructionRule(const SIInstrInfo *TII, unsigned SGID, in InstructionRule()
154 const SIInstrInfo *TII;
230 ScheduleDAGInstrs *DAG, const SIInstrInfo *TII) in SchedGroup()
236 ScheduleDAGInstrs *DAG, const SIInstrInfo *TII) in SchedGroup()
822 const SIInstrInfo *TII;
837 IGLPStrategy(ScheduleDAGInstrs *DAG, const SIInstrInfo *TII) in IGLPStrategy()
856 MFMASmallGemmOpt(ScheduleDAGInstrs *DAG, const SIInstrInfo *TII) in MFMASmallGemmOpt()
914 bool analyzeDAG(const SIInstrInfo *TII);
942 IsPipeExp(const SIInstrInfo *TII, unsigned SGID, bool NeedsCache = false) in IsPipeExp()
[all …]
H A DGCNVOPDUtils.h22 class SIInstrInfo; variable
24 bool checkVOPDRegConstraints(const SIInstrInfo &TII,
H A DSIInsertWaitcnts.cpp188 return (SIInstrInfo::isVMEM(Inst) && !SIInstrInfo::isFLAT(Inst)) || in updateVMCntOnly()
189 SIInstrInfo::isFLATGlobal(Inst) || SIInstrInfo::isFLATScratch(Inst); in updateVMCntOnly()
200 if (!SIInstrInfo::isImage(Inst)) in getVmemType()
212 if (BaseInfo->Sampler || BaseInfo->MSAA || SIInstrInfo::isVSAMPLE(Inst)) in getVmemType()
354 void updateByEvent(const SIInstrInfo *TII, const SIRegisterInfo *TRI,
507 const SIInstrInfo *TII = nullptr;
645 const SIInstrInfo *TII = nullptr;
752 assert(SIInstrInfo::isVMEM(Inst)); in getVmemWaitEventType()
755 if (!ST->hasVscnt() || SIInstrInfo::mayWriteLDSThroughDMA(Inst)) in getVmemWaitEventType()
758 (!Inst.mayLoad() || SIInstrInfo::isAtomicNoRet(Inst))) { in getVmemWaitEventType()
[all …]
H A DAMDGPUWaitSGPRHazards.cpp47 const SIInstrInfo *TII;
231 if (SIInstrInfo::isFLAT(*MI) && !SIInstrInfo::isFLATGlobal(*MI)) in runOnMachineBasicBlock()
236 if ((SIInstrInfo::isVMEM(*MI) && !SIInstrInfo::isFLAT(*MI)) || in runOnMachineBasicBlock()
237 SIInstrInfo::isSMRD(*MI)) { in runOnMachineBasicBlock()
276 bool IsVALU = SIInstrInfo::isVALU(*MI); in runOnMachineBasicBlock()
277 bool IsSALU = SIInstrInfo::isSALU(*MI); in runOnMachineBasicBlock()
H A DAMDGPUMacroFusion.cpp16 #include "SIInstrInfo.h"
30 const SIInstrInfo &TII = static_cast<const SIInstrInfo&>(TII_); in shouldScheduleAdjacent()
H A DSIFormMemoryClauses.cpp102 return SIInstrInfo::isVMEM(MI); in isVMEMClauseInst()
106 return SIInstrInfo::isSMRD(MI); in isSMEMClauseInst()
117 if (SIInstrInfo::isAtomic(MI)) in isValidClauseInst()
267 const SIInstrInfo *TII = ST->getInstrInfo(); in run()
H A DGCNHazardRecognizer.h28 class SIInstrInfo; variable
47 const SIInstrInfo &TII;
H A DSIFrameLowering.cpp178 const DebugLoc &DL, const SIInstrInfo *TII, in buildGitPtr()
231 const SIInstrInfo *TII;
342 const DebugLoc &DL, const SIInstrInfo *TII, in PrologEpilogSGPRSpillBuilder()
387 const SIInstrInfo *TII = ST.getInstrInfo(); in emitEntryFunctionFlatScratchInit()
542 const SIInstrInfo *TII = ST.getInstrInfo(); in getEntryFunctionReservedScratchRsrcReg()
612 const SIInstrInfo *TII = ST.getInstrInfo(); in emitEntryFunctionPrologue()
782 const SIInstrInfo *TII = ST.getInstrInfo(); in emitEntryFunctionScratchRsrcRegSetup()
943 const SIInstrInfo *TII = ST.getInstrInfo(); in buildScratchExecCopy()
974 const SIInstrInfo *TII = ST.getInstrInfo(); in emitCSRSpillStores()
1060 const SIInstrInfo *TII = ST.getInstrInfo(); in emitCSRSpillRestores()
[all …]
H A DGCNVOPDUtils.cpp37 bool llvm::checkVOPDRegConstraints(const SIInstrInfo &TII, in checkVOPDRegConstraints()
192 const SIInstrInfo &STII = static_cast<const SIInstrInfo &>(TII); in shouldScheduleVOPDAdjacent()
H A DAMDGPURegisterBankInfo.h29 class SIInstrInfo; variable
46 const SIInstrInfo *TII;
H A DSIRegisterInfo.cpp111 const SIInstrInfo &TII;
118 SGPRSpillBuilder(const SIRegisterInfo &TRI, const SIInstrInfo &TII, in SGPRSpillBuilder()
124 SGPRSpillBuilder(const SIRegisterInfo &TRI, const SIInstrInfo &TII, in SGPRSpillBuilder()
852 assert(SIInstrInfo::isMUBUF(*MI) || SIInstrInfo::isFLATScratch(*MI)); in getScratchInstrOffset()
878 if (!SIInstrInfo::isMUBUF(*MI) && !SIInstrInfo::isFLATScratch(*MI)) in getFrameIndexInstrOffset()
944 if (!SIInstrInfo::isMUBUF(*MI) && !SIInstrInfo::isFLATScratch(*MI)) in needsFrameBaseReg()
949 const SIInstrInfo *TII = ST.getInstrInfo(); in needsFrameBaseReg()
950 if (SIInstrInfo::isMUBUF(*MI)) in needsFrameBaseReg()
967 const SIInstrInfo *TII = ST.getInstrInfo(); in materializeFrameBaseRegister()
1012 const SIInstrInfo *TII = ST.getInstrInfo(); in resolveFrameIndex()
[all …]
H A DAMDGPUCombinerHelper.h26 const SIInstrInfo &TII;
H A DGCNCreateVOPD.cpp57 bool doReplace(const SIInstrInfo *SII, VOPDCombineInfo &CI) { in doReplace()
136 const SIInstrInfo *SII = ST->getInstrInfo(); in run()
H A DSIPreEmitPeephole.cpp29 const SIInstrInfo *TII = nullptr;
311 const SIInstrInfo &TII;
319 BranchWeightCostModel(const SIInstrInfo &TII, const MachineInstr &Branch, in BranchWeightCostModel()
H A DSIFixVGPRCopies.cpp71 const SIInstrInfo *TII = ST.getInstrInfo(); in run()
H A DSILowerI1Copies.h51 const SIInstrInfo *TII = nullptr;
H A DSILateBranchLowering.cpp30 const SIInstrInfo *TII = nullptr;
81 const SIInstrInfo *TII, MachineFunction &MF) { in generateEndPgm()

123