Lines Matching refs:SIInstrInfo

125   if (!SIInstrInfo::isMAI(MI) ||  in isXDL()
137 static bool isSendMsgTraceDataOrGDS(const SIInstrInfo &TII, in isSendMsgTraceDataOrGDS()
170 return SIInstrInfo::isVALU(MI) && in isLdsDma()
171 (SIInstrInfo::isMUBUF(MI) || SIInstrInfo::isFLAT(MI)); in isLdsDma()
174 static unsigned getHWReg(const SIInstrInfo *TII, const MachineInstr &RegInstr) { in getHWReg()
190 if (SIInstrInfo::isSMRD(*MI) && checkSMRDHazards(MI) > 0) in getHazardType()
203 if ((SIInstrInfo::isVMEM(*MI) || in getHazardType()
204 SIInstrInfo::isFLAT(*MI)) in getHazardType()
208 if (SIInstrInfo::isVALU(*MI) && checkVALUHazards(MI) > 0) in getHazardType()
211 if (SIInstrInfo::isDPP(*MI) && checkDPPHazards(MI) > 0) in getHazardType()
220 if ((SIInstrInfo::isVALU(*MI) || SIInstrInfo::isVMEM(*MI) || in getHazardType()
221 SIInstrInfo::isFLAT(*MI) || SIInstrInfo::isDS(*MI) || in getHazardType()
222 SIInstrInfo::isEXP(*MI)) && checkMAIVALUHazards(MI) > 0) in getHazardType()
243 if (SIInstrInfo::isMAI(*MI) && checkMAIHazards(MI) > 0) in getHazardType()
246 if ((SIInstrInfo::isVMEM(*MI) || in getHazardType()
247 SIInstrInfo::isFLAT(*MI) || in getHazardType()
248 SIInstrInfo::isDS(*MI)) && checkMAILdStHazards(MI) > 0) in getHazardType()
257 static void insertNoopsInBundle(MachineInstr *MI, const SIInstrInfo &TII, in insertNoopsInBundle()
316 if (SIInstrInfo::isSMRD(*MI)) in PreEmitNoopsCommon()
327 if (SIInstrInfo::isVMEM(*MI) || SIInstrInfo::isFLAT(*MI)) in PreEmitNoopsCommon()
330 if (SIInstrInfo::isVALU(*MI)) in PreEmitNoopsCommon()
333 if (SIInstrInfo::isDPP(*MI)) in PreEmitNoopsCommon()
342 if ((SIInstrInfo::isVALU(*MI) || SIInstrInfo::isVMEM(*MI) || in PreEmitNoopsCommon()
343 SIInstrInfo::isFLAT(*MI) || SIInstrInfo::isDS(*MI) || in PreEmitNoopsCommon()
344 SIInstrInfo::isEXP(*MI)) && checkMAIVALUHazards(MI) > 0) in PreEmitNoopsCommon()
366 if (SIInstrInfo::isMAI(*MI)) in PreEmitNoopsCommon()
369 if (SIInstrInfo::isVMEM(*MI) || in PreEmitNoopsCommon()
370 SIInstrInfo::isFLAT(*MI) || in PreEmitNoopsCommon()
371 SIInstrInfo::isDS(*MI)) in PreEmitNoopsCommon()
481 GetNumWaitStatesFn GetNumWaitStates = SIInstrInfo::getNumWaitStates) { in getWaitStatesSince()
593 return !SIInstrInfo::isSMRD(*MI); in breaksSMEMSoftClause()
597 return !SIInstrInfo::isVMEM(*MI) && !SIInstrInfo::isFLAT(*MI); in breaksVMEMSoftClause()
722 const SIInstrInfo *TII = ST.getInstrInfo(); in checkDPPHazards()
752 const SIInstrInfo *TII = ST.getInstrInfo(); in checkDivFMasHazards()
767 const SIInstrInfo *TII = ST.getInstrInfo(); in checkGetRegHazards()
780 const SIInstrInfo *TII = ST.getInstrInfo(); in checkSetRegHazards()
795 const SIInstrInfo *TII = ST.getInstrInfo(); in createsVALUHazard()
868 if (ST.hasTransForwardingHazard() && !SIInstrInfo::isTRANS(*VALU)) { in checkVALUHazards()
872 if (!SIInstrInfo::isTRANS(MI)) in checkVALUHazards()
875 const SIInstrInfo *TII = ST.getInstrInfo(); in checkVALUHazards()
896 if (!SIInstrInfo::isVALU(MI)) in checkVALUHazards()
898 const SIInstrInfo *TII = ST.getInstrInfo(); in checkVALUHazards()
899 if (SIInstrInfo::isSDWA(MI)) { in checkVALUHazards()
939 if (!SIInstrInfo::isVALU(MI)) in checkVALUHazards()
1031 const SIInstrInfo *TII = ST.getInstrInfo(); in checkRWLaneHazards()
1054 const SIInstrInfo *TII = ST.getInstrInfo(); in checkRFEHazards()
1066 const SIInstrInfo *TII = ST.getInstrInfo(); in checkReadM0Hazards()
1092 const SIInstrInfo *TII = ST.getInstrInfo(); in fixVcmpxPermlaneHazards()
1102 return SIInstrInfo::isVALU(MI) && Opc != AMDGPU::V_NOP_e32 && in fixVcmpxPermlaneHazards()
1128 if (!SIInstrInfo::isSALU(*MI) && !SIInstrInfo::isSMRD(*MI)) in fixVMEMtoScalarWriteHazards()
1137 if (!SIInstrInfo::isVMEM(I) && !SIInstrInfo::isDS(I) && in fixVMEMtoScalarWriteHazards()
1138 !SIInstrInfo::isFLAT(I)) in fixVMEMtoScalarWriteHazards()
1152 return SIInstrInfo::isVALU(MI) || in fixVMEMtoScalarWriteHazards()
1163 const SIInstrInfo *TII = ST.getInstrInfo(); in fixVMEMtoScalarWriteHazards()
1174 if (!SIInstrInfo::isVALU(*MI)) in fixSMEMtoVectorWriteHazards()
1188 const SIInstrInfo *TII = ST.getInstrInfo(); in fixSMEMtoVectorWriteHazards()
1206 return SIInstrInfo::isSMRD(I) && I.readsRegister(SDSTReg, TRI); in fixSMEMtoVectorWriteHazards()
1256 if (!ST.hasVcmpxExecWARHazard() || !SIInstrInfo::isVALU(*MI)) in fixVcmpxExecWARHazard()
1264 if (SIInstrInfo::isVALU(I)) in fixVcmpxExecWARHazard()
1269 const SIInstrInfo *TII = ST.getInstrInfo(); in fixVcmpxExecWARHazard()
1271 if (SIInstrInfo::isVALU(MI)) { in fixVcmpxExecWARHazard()
1305 HasLds |= SIInstrInfo::isDS(MI); in shouldRunLdsBranchVmemWARHazardFixup()
1307 SIInstrInfo::isVMEM(MI) || SIInstrInfo::isSegmentSpecificFLAT(MI); in shouldRunLdsBranchVmemWARHazardFixup()
1322 if (SIInstrInfo::isDS(MI)) in fixLdsBranchVmemWARHazard()
1324 if (SIInstrInfo::isVMEM(MI) || SIInstrInfo::isSegmentSpecificFLAT(MI)) in fixLdsBranchVmemWARHazard()
1366 const SIInstrInfo *TII = ST.getInstrInfo(); in fixLdsBranchVmemWARHazard()
1376 if (!SIInstrInfo::isLDSDIR(*MI)) in fixLdsDirectVALUHazard()
1385 if (!SIInstrInfo::isVALU(I)) in fixLdsDirectVALUHazard()
1387 VisitedTrans = VisitedTrans || SIInstrInfo::isTRANS(I); in fixLdsDirectVALUHazard()
1395 return SIInstrInfo::isVMEM(I) || SIInstrInfo::isFLAT(I) || in fixLdsDirectVALUHazard()
1396 SIInstrInfo::isDS(I) || SIInstrInfo::isEXP(I); in fixLdsDirectVALUHazard()
1399 return SIInstrInfo::isVALU(MI) ? 1 : 0; in fixLdsDirectVALUHazard()
1420 if (!SIInstrInfo::isLDSDIR(*MI)) in fixLdsDirectVMEMHazard()
1427 if (!SIInstrInfo::isVMEM(I) && !SIInstrInfo::isFLAT(I) && in fixLdsDirectVMEMHazard()
1428 !SIInstrInfo::isDS(I)) in fixLdsDirectVMEMHazard()
1433 return SIInstrInfo::isVALU(I) || SIInstrInfo::isEXP(I) || in fixLdsDirectVMEMHazard()
1455 if (!SIInstrInfo::isVALU(*MI)) in fixVALUPartialForwardingHazard()
1504 if (SIInstrInfo::isVMEM(I) || SIInstrInfo::isFLAT(I) || in fixVALUPartialForwardingHazard()
1505 SIInstrInfo::isDS(I) || SIInstrInfo::isEXP(I) || in fixVALUPartialForwardingHazard()
1512 if (SIInstrInfo::isVALU(I)) { in fixVALUPartialForwardingHazard()
1519 } else if (SIInstrInfo::isSALU(I)) { in fixVALUPartialForwardingHazard()
1583 if (SIInstrInfo::isVALU(MI)) in fixVALUPartialForwardingHazard()
1602 if (!SIInstrInfo::isVALU(*MI)) in fixVALUTransUseHazard()
1639 if (SIInstrInfo::isVMEM(I) || SIInstrInfo::isFLAT(I) || in fixVALUTransUseHazard()
1640 SIInstrInfo::isDS(I) || SIInstrInfo::isEXP(I) || in fixVALUTransUseHazard()
1646 if (SIInstrInfo::isTRANS(I)) { in fixVALUTransUseHazard()
1657 if (SIInstrInfo::isVALU(MI)) in fixVALUTransUseHazard()
1659 if (SIInstrInfo::isTRANS(MI)) in fixVALUTransUseHazard()
1678 if (!SIInstrInfo::isWMMA(*MI)) in fixWMMAHazards()
1681 const SIInstrInfo *TII = ST.getInstrInfo(); in fixWMMAHazards()
1685 if (!SIInstrInfo::isWMMA(I)) in fixWMMAHazards()
1726 return SIInstrInfo::isVALU(I); in fixWMMAHazards()
1744 if (!SIInstrInfo::isMUBUF(*MI) && !SIInstrInfo::isMTBUF(*MI)) in checkNSAtoVMEMHazard()
1747 const SIInstrInfo *TII = ST.getInstrInfo(); in checkNSAtoVMEMHazard()
1753 if (!SIInstrInfo::isMIMG(I)) in checkNSAtoVMEMHazard()
1770 if (!SIInstrInfo::isVMEM(I) && !SIInstrInfo::isFLAT(I)) in checkFPAtomicToDenormModeHazard()
1772 return SIInstrInfo::isFPAtomic(I); in checkFPAtomicToDenormModeHazard()
1776 if (WaitStates >= 3 || SIInstrInfo::isVALU(MI)) in checkFPAtomicToDenormModeHazard()
1799 assert(SIInstrInfo::isMAI(*MI)); in checkMAIHazards()
1810 if (!SIInstrInfo::isMFMA(*MI) || MFI->getOccupancy() < 2) in checkMFMAPadding()
1816 if (!SIInstrInfo::isMFMA(MI)) in checkMFMAPadding()
1839 return SIInstrInfo::isVALU(MI); in checkMAIHazards908()
1889 if (!SIInstrInfo::isMFMA(MI)) in checkMAIHazards908()
1968 if (!SIInstrInfo::isMFMA(MI)) in checkMAIHazards908()
2003 return SIInstrInfo::isVALU(MI) && !SIInstrInfo::isMFMA(MI); in checkMAIHazards90A()
2007 return SIInstrInfo::isVALU(MI) && !SIInstrInfo::isMFMA(MI) && in checkMAIHazards90A()
2008 !SIInstrInfo::isDOT(MI); in checkMAIHazards90A()
2011 if (!SIInstrInfo::isMFMA(*MI)) in checkMAIHazards90A()
2065 if (!SIInstrInfo::isMFMA(MI)) in checkMAIHazards90A()
2241 return SIInstrInfo::isVALU(MI) && !SIInstrInfo::isMAI(MI); in checkMAILdStHazards()
2264 if (SIInstrInfo::isMFMA(*MI)) in checkMAIVALUHazards()
2269 bool IsMemOrExport = SIInstrInfo::isVMEM(*MI) || in checkMAIVALUHazards()
2270 SIInstrInfo::isFLAT(*MI) || in checkMAIVALUHazards()
2271 SIInstrInfo::isDS(*MI) || in checkMAIVALUHazards()
2272 SIInstrInfo::isEXP(*MI); in checkMAIVALUHazards()
2273 bool IsVALU = SIInstrInfo::isVALU(*MI); in checkMAIVALUHazards()
2278 if (!SIInstrInfo::isMFMA(MI) || in checkMAIVALUHazards()
2287 if (!SIInstrInfo::isDOT(MI) || in checkMAIVALUHazards()
2488 if (!SIInstrInfo::isMFMA(MI) || isDGEMM(MI.getOpcode()) || in checkMAIVALUHazards()
2541 if (SIInstrInfo::isMFMA(MI)) in ShouldPreferAnother()