Lines Matching refs:SIInstrInfo
104 if (!SIInstrInfo::isMAI(MI) || in isXDL()
113 static bool isSendMsgTraceDataOrGDS(const SIInstrInfo &TII, in isSendMsgTraceDataOrGDS()
145 static unsigned getHWReg(const SIInstrInfo *TII, const MachineInstr &RegInstr) { in getHWReg()
161 if (SIInstrInfo::isSMRD(*MI) && checkSMRDHazards(MI) > 0) in getHazardType()
174 if ((SIInstrInfo::isVMEM(*MI) || in getHazardType()
175 SIInstrInfo::isFLAT(*MI)) in getHazardType()
179 if (SIInstrInfo::isVALU(*MI) && checkVALUHazards(MI) > 0) in getHazardType()
182 if (SIInstrInfo::isDPP(*MI) && checkDPPHazards(MI) > 0) in getHazardType()
191 if ((SIInstrInfo::isVALU(*MI) || SIInstrInfo::isVMEM(*MI) || in getHazardType()
192 SIInstrInfo::isFLAT(*MI) || SIInstrInfo::isDS(*MI) || in getHazardType()
193 SIInstrInfo::isEXP(*MI)) && checkMAIVALUHazards(MI) > 0) in getHazardType()
214 if (SIInstrInfo::isMAI(*MI) && checkMAIHazards(MI) > 0) in getHazardType()
217 if ((SIInstrInfo::isVMEM(*MI) || in getHazardType()
218 SIInstrInfo::isFLAT(*MI) || in getHazardType()
219 SIInstrInfo::isDS(*MI)) && checkMAILdStHazards(MI) > 0) in getHazardType()
228 static void insertNoopsInBundle(MachineInstr *MI, const SIInstrInfo &TII, in insertNoopsInBundle()
279 if (SIInstrInfo::isSMRD(*MI)) in PreEmitNoopsCommon()
290 if (SIInstrInfo::isVMEM(*MI) || SIInstrInfo::isFLAT(*MI)) in PreEmitNoopsCommon()
293 if (SIInstrInfo::isVALU(*MI)) in PreEmitNoopsCommon()
296 if (SIInstrInfo::isDPP(*MI)) in PreEmitNoopsCommon()
305 if ((SIInstrInfo::isVALU(*MI) || SIInstrInfo::isVMEM(*MI) || in PreEmitNoopsCommon()
306 SIInstrInfo::isFLAT(*MI) || SIInstrInfo::isDS(*MI) || in PreEmitNoopsCommon()
307 SIInstrInfo::isEXP(*MI)) && checkMAIVALUHazards(MI) > 0) in PreEmitNoopsCommon()
329 if (SIInstrInfo::isMAI(*MI)) in PreEmitNoopsCommon()
332 if (SIInstrInfo::isVMEM(*MI) || in PreEmitNoopsCommon()
333 SIInstrInfo::isFLAT(*MI) || in PreEmitNoopsCommon()
334 SIInstrInfo::isDS(*MI)) in PreEmitNoopsCommon()
415 WaitStates += SIInstrInfo::getNumWaitStates(*I); in getWaitStatesSince()
515 return !SIInstrInfo::isSMRD(*MI); in breaksSMEMSoftClause()
519 return !SIInstrInfo::isVMEM(*MI) && !SIInstrInfo::isFLAT(*MI); in breaksVMEMSoftClause()
644 const SIInstrInfo *TII = ST.getInstrInfo(); in checkDPPHazards()
674 const SIInstrInfo *TII = ST.getInstrInfo(); in checkDivFMasHazards()
689 const SIInstrInfo *TII = ST.getInstrInfo(); in checkGetRegHazards()
702 const SIInstrInfo *TII = ST.getInstrInfo(); in checkSetRegHazards()
717 const SIInstrInfo *TII = ST.getInstrInfo(); in createsVALUHazard()
830 const SIInstrInfo *TII = ST.getInstrInfo(); in checkRWLaneHazards()
853 const SIInstrInfo *TII = ST.getInstrInfo(); in checkRFEHazards()
865 const SIInstrInfo *TII = ST.getInstrInfo(); in checkReadM0Hazards()
884 const SIInstrInfo *TII = ST.getInstrInfo(); in fixVcmpxPermlaneHazards()
889 return SIInstrInfo::isVALU(MI) && Opc != AMDGPU::V_NOP_e32 && in fixVcmpxPermlaneHazards()
915 if (!SIInstrInfo::isSALU(*MI) && !SIInstrInfo::isSMRD(*MI)) in fixVMEMtoScalarWriteHazards()
924 if (!SIInstrInfo::isVMEM(I) && !SIInstrInfo::isDS(I) && in fixVMEMtoScalarWriteHazards()
925 !SIInstrInfo::isFLAT(I)) in fixVMEMtoScalarWriteHazards()
939 return SIInstrInfo::isVALU(MI) || in fixVMEMtoScalarWriteHazards()
950 const SIInstrInfo *TII = ST.getInstrInfo(); in fixVMEMtoScalarWriteHazards()
961 if (!SIInstrInfo::isVALU(*MI)) in fixSMEMtoVectorWriteHazards()
975 const SIInstrInfo *TII = ST.getInstrInfo(); in fixSMEMtoVectorWriteHazards()
993 return SIInstrInfo::isSMRD(I) && I.readsRegister(SDSTReg, TRI); in fixSMEMtoVectorWriteHazards()
1043 if (!ST.hasVcmpxExecWARHazard() || !SIInstrInfo::isVALU(*MI)) in fixVcmpxExecWARHazard()
1051 if (SIInstrInfo::isVALU(I)) in fixVcmpxExecWARHazard()
1056 const SIInstrInfo *TII = ST.getInstrInfo(); in fixVcmpxExecWARHazard()
1058 if (SIInstrInfo::isVALU(MI)) { in fixVcmpxExecWARHazard()
1092 HasLds |= SIInstrInfo::isDS(MI); in shouldRunLdsBranchVmemWARHazardFixup()
1094 SIInstrInfo::isVMEM(MI) || SIInstrInfo::isSegmentSpecificFLAT(MI); in shouldRunLdsBranchVmemWARHazardFixup()
1109 if (SIInstrInfo::isDS(MI)) in fixLdsBranchVmemWARHazard()
1111 if (SIInstrInfo::isVMEM(MI) || SIInstrInfo::isSegmentSpecificFLAT(MI)) in fixLdsBranchVmemWARHazard()
1153 const SIInstrInfo *TII = ST.getInstrInfo(); in fixLdsBranchVmemWARHazard()
1168 if (!SIInstrInfo::isMUBUF(*MI) && !SIInstrInfo::isMTBUF(*MI)) in checkNSAtoVMEMHazard()
1171 const SIInstrInfo *TII = ST.getInstrInfo(); in checkNSAtoVMEMHazard()
1177 if (!SIInstrInfo::isMIMG(I)) in checkNSAtoVMEMHazard()
1194 if (!SIInstrInfo::isVMEM(I) && !SIInstrInfo::isFLAT(I)) in checkFPAtomicToDenormModeHazard()
1196 return SIInstrInfo::isFPAtomic(I); in checkFPAtomicToDenormModeHazard()
1200 if (WaitStates >= 3 || SIInstrInfo::isVALU(MI)) in checkFPAtomicToDenormModeHazard()
1223 assert(SIInstrInfo::isMAI(*MI)); in checkMAIHazards()
1233 return SIInstrInfo::isVALU(MI); in checkMAIHazards908()
1263 return SIInstrInfo::isMAI(MI) && in checkMAIHazards908()
1400 return SIInstrInfo::isMAI(MI) && in checkMAIHazards90A()
1406 return SIInstrInfo::isVALU(MI) && !IsMFMAFn(MI); in checkMAIHazards90A()
1410 return SIInstrInfo::isVALU(MI) && !IsMFMAFn(MI) && !SIInstrInfo::isDOT(MI); in checkMAIHazards90A()
1584 return SIInstrInfo::isVALU(MI) && !SIInstrInfo::isMAI(MI); in checkMAILdStHazards()
1603 return SIInstrInfo::isMAI(MI) && in checkMAIVALUHazards()
1618 bool IsMemOrExport = SIInstrInfo::isVMEM(*MI) || in checkMAIVALUHazards()
1619 SIInstrInfo::isFLAT(*MI) || in checkMAIVALUHazards()
1620 SIInstrInfo::isDS(*MI) || in checkMAIVALUHazards()
1621 SIInstrInfo::isEXP(*MI); in checkMAIVALUHazards()
1622 bool IsVALU = SIInstrInfo::isVALU(*MI); in checkMAIVALUHazards()
1638 if (!SIInstrInfo::isDOT(MI) || in checkMAIVALUHazards()
1835 if (SIInstrInfo::isMAI(MI) && in ShouldPreferAnother()