Skip to content

Commit c8781b3

Browse files
committed
Refactor
1 parent 9ebc6d2 commit c8781b3

File tree

1 file changed

+9
-4
lines changed

1 file changed

+9
-4
lines changed

llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2059,7 +2059,7 @@ bool SIInsertWaitcnts::mayAccessScratchThroughFlat(
20592059
});
20602060
}
20612061

2062-
static bool isCacheInvOrWBInst(MachineInstr &Inst) {
2062+
static bool isGFX12CacheInvOrWBInst(MachineInstr &Inst) {
20632063
auto Opc = Inst.getOpcode();
20642064
return Opc == AMDGPU::GLOBAL_INV || Opc == AMDGPU::GLOBAL_WB ||
20652065
Opc == AMDGPU::GLOBAL_WBINV;
@@ -2140,11 +2140,16 @@ void SIInsertWaitcnts::updateEventWaitcntAfter(MachineInstr &Inst,
21402140
ScoreBrackets->updateByEvent(TII, TRI, MRI, LDS_ACCESS, Inst);
21412141
}
21422142
} else if (TII->isFLAT(Inst)) {
2143-
int FlatASCount = 0;
2143+
if (isGFX12CacheInvOrWBInst(Inst)) {
2144+
ScoreBrackets->updateByEvent(TII, TRI, MRI, getVmemWaitEventType(Inst),
2145+
Inst);
2146+
return;
2147+
}
21442148

2145-
assert(isCacheInvOrWBInst(Inst) || Inst.mayLoadOrStore());
2149+
int FlatASCount = 0;
2150+
assert(Inst.mayLoadOrStore());
21462151

2147-
if (isCacheInvOrWBInst(Inst) || mayAccessVMEMThroughFlat(Inst)) {
2152+
if (mayAccessVMEMThroughFlat(Inst)) {
21482153
++FlatASCount;
21492154
ScoreBrackets->updateByEvent(TII, TRI, MRI, getVmemWaitEventType(Inst),
21502155
Inst);

0 commit comments

Comments
 (0)