[llvm] [AMDGPU] Consider FLAT instructions for VMEM hazard detection (PR #137170)
Robert Imschweiler via llvm-commits
llvm-commits at lists.llvm.org
Wed May 28 07:15:00 PDT 2025
================
@@ -1417,9 +1417,8 @@ static bool shouldRunLdsBranchVmemWARHazardFixup(const MachineFunction &MF,
bool HasVmem = false;
for (auto &MBB : MF) {
for (auto &MI : MBB) {
- HasLds |= SIInstrInfo::isDS(MI);
- HasVmem |= (SIInstrInfo::isVMEM(MI) && !SIInstrInfo::isFLAT(MI)) ||
- SIInstrInfo::isSegmentSpecificFLAT(MI);
+ HasLds |= SIInstrInfo::isDS(MI) || SIInstrInfo::isLDSDMA(MI);
+ HasVmem |= SIInstrInfo::isVMEM(MI) && !SIInstrInfo::isLDSDMA(MI);
----------------
ro-i wrote:
Hm ok. But previously, we had `(SIInstrInfo::isVMEM(MI) && !SIInstrInfo::isFLAT(MI)) || SIInstrInfo::isSegmentSpecificFLAT(MI)`. And isn't that basically meaning that we want to have FLAT instructions as long as they don't do LDS DMA?
https://github.com/llvm/llvm-project/pull/137170
More information about the llvm-commits
mailing list