[PATCH] D106042: [AMDGPU] Ignore KILLs when forming clauses

Jay Foad via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jul 15 03:04:32 PDT 2021


foad added inline comments.


================
Comment at: llvm/lib/Target/AMDGPU/SIInsertHardClauses.cpp:80
 
-  HardClauseType getHardClauseType(const MachineInstr &MI) {
+  HardClauseType getHardClauseType(const SIInstrInfo *SII,
+                                   const MachineInstr &MI) {
----------------
What is SII for here?


================
Comment at: llvm/lib/Target/AMDGPU/SIInsertHardClauses.cpp:129
       return false;
-    assert(Size <= 64 && "Hard clause is too long!");
+    assert(CI.Length <= 64 && "Hard clause is too long!");
 
----------------
I'm not sure if it's safe to use CI.Length instead of Size here. The difference is that if the clause has any trailing INTERNAL instructions then CI.Length includes them but Size does not. So with your changes, I would expect a sequence like this to be marked as a clause of length 4 instead of length 3:

  load
  internal
  load
  internal


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D106042



More information about the llvm-commits mailing list