[PATCH] D94746: [AMDGPU] Move kill lowering to WQM pass and add live mask tracking

Jay Foad via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Jan 15 07:24:01 PST 2021


foad added inline comments.


================
Comment at: llvm/lib/Target/AMDGPU/SIInsertSkips.cpp:213-214
   MDT->getBase().insertEdge(&MBB, EarlyExitBlock);
+  if (OldSuccessor)
+    MDT->getBase().deleteEdge(&MBB, OldSuccessor);
 }
----------------
Seems like dead code since OldSuccessor is never set to anything useful.


================
Comment at: llvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp:15
-/// with shader side effects (stores and atomics). This pass is run on the
-/// scheduled machine IR but before register coalescing, so that machine SSA is
-/// available for analysis. It ensures that WQM is enabled when necessary, but
----------------
Are you changing whether or not this pass can assume SSA form?


================
Comment at: llvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp:150
   DenseMap<const MachineInstr *, InstrInfo> Instructions;
-  MapVector<MachineBasicBlock *, BlockInfo> Blocks;
-  SmallVector<MachineInstr *, 1> LiveMaskQueries;
+  DenseMap<MachineBasicBlock *, BlockInfo> Blocks;
+
----------------
I think this was changed to a MapVector to give a stable iteration order, so changing it back to DenseMap seems dangerous.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D94746/new/

https://reviews.llvm.org/D94746



More information about the llvm-commits mailing list