[llvm] [AMDGPU] Speedup SIFormMemoryClauses live-in register set calculation. (PR #89919)
Matt Arsenault via llvm-commits
llvm-commits at lists.llvm.org
Thu Apr 25 05:10:50 PDT 2024
================
@@ -275,10 +275,29 @@ bool SIFormMemoryClauses::runOnMachineFunction(MachineFunction &MF) {
unsigned FuncMaxClause = MF.getFunction().getFnAttributeAsParsedInteger(
"amdgpu-max-memory-clause", MaxClause);
- for (MachineBasicBlock &MBB : MF) {
- GCNDownwardRPTracker RPT(*LIS);
+ SmallVector<MachineInstr *, 16> FirstBBClauseMI;
+ for (auto &MBB : MF) {
+ for (auto &MI : MBB) {
+ if (!MI.isMetaInstruction() &&
+ isValidClauseInst(MI, isVMEMClauseInst(MI))) {
+ FirstBBClauseMI.push_back(&MI);
+ break;
+ }
+ }
+ }
+ if (FirstBBClauseMI.empty())
+ return false;
+
+ auto LRM = getLiveRegMap(FirstBBClauseMI, false /*After*/, *LIS);
----------------
arsenm wrote:
```suggestion
auto LRM = getLiveRegMap(FirstBBClauseMI, /*After=*/false, *LIS);
```
https://github.com/llvm/llvm-project/pull/89919
More information about the llvm-commits
mailing list