[PATCH] D106875: [DebugInfo] Attempt to preserve more information during tail duplication
    Jeremy Morse via Phabricator via llvm-commits 
    llvm-commits at lists.llvm.org
       
    Wed Jul 28 06:18:32 PDT 2021
    
    
  
jmorse added inline comments.
================
Comment at: llvm/lib/CodeGen/TailDuplicator.cpp:233-242
+      UI = MRI->use_begin(VReg);
+      while (UI != MRI->use_end()) {
+        MachineOperand &UseMO = *UI;
+        MachineInstr *UseMI = UseMO.getParent();
+        ++UI;
+        if (!UseMI->isDebugValue())
+          continue;
----------------
StephenTozer wrote:
> jmorse wrote:
> > Performance opinion: better to store debug uses and re-visit rather than enumerate all the uses again, it'll preserve the same performance characteristics as before this patch.
> > 
> > Also: will not UseMO.setReg invalidate the vreg use list?
> The vreg use list is (as far as I'm aware) a linked list, so calling `setReg` after iterating to the next use will not cause any issues.
Ah, I missed the pre-increment x_x
Repository:
  rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D106875/new/
https://reviews.llvm.org/D106875
    
    
More information about the llvm-commits
mailing list