[llvm] [AMDGPU] Fix machine verification failure from INIT_EXEC lowering (PR #98333)

Jay Foad via llvm-commits llvm-commits at lists.llvm.org
Wed Jul 10 09:30:05 PDT 2024


================
@@ -1717,7 +1719,7 @@ bool SIWholeQuadMode::runOnMachineFunction(MachineFunction &MF) {
   LIS->removeAllRegUnitsForPhysReg(AMDGPU::SCC);
 
   // If we performed any kills then recompute EXEC
-  if (!KillInstrs.empty())
+  if (!KillInstrs.empty() || !InitExecInstrs.empty())
     LIS->removeAllRegUnitsForPhysReg(AMDGPU::EXEC);
----------------
jayfoad wrote:

Well I see stuff like this in the dumps:
```
# After SI Whole Quad Mode
********** INTERVALS **********
EXEC_LO_LO16 [16r,16d:0) 0 at 16r
EXEC_LO_HI16 [16r,16d:0) 0 at 16r
EXEC_HI_LO16 [16r,16d:0) 0 at 16r
EXEC_HI_HI16 [16r,16d:0) 0 at 16r
```

https://github.com/llvm/llvm-project/pull/98333


More information about the llvm-commits mailing list