[PATCH] D58386: [DebugInfo] Pre-RA MachineSink: sink DBG_VALUEs that don't immediately follow the sunk instruction too

Adrian Prantl via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jul 29 13:28:40 PDT 2019


aprantl added inline comments.


================
Comment at: lib/CodeGen/MachineSink.cpp:164
                          AllSuccsCache &AllSuccessors);
+    void SalvageUnsunkDebugUsersOfCopy(MachineInstr &,
+                                       MachineBasicBlock *TargetBlock);
----------------
doxygen comment?


================
Comment at: lib/CodeGen/MachineSink.cpp:407
+  // we know what to sink if the vreg def sinks.
+  if (!MI.isDebugValue())
+    return;
----------------
assert, since we already checked this above?


================
Comment at: lib/CodeGen/MachineSink.cpp:952
+      continue;
+    if (!SeenDbgUsers.count(MO.getReg()))
+      continue;
----------------
this looks very similar to the body of `ProcessDbgInst`...


================
Comment at: lib/CodeGen/MachineSink.cpp:998
+
+      // If is in same block, will either sink or be use-before-def,
+      if (User.getParent() == MI.getParent())
----------------
, -> . ?


================
Comment at: lib/CodeGen/MachineSink.cpp:1002
+
+      assert(User.getOperand(0).isReg());
+      DbgDefUsers.push_back(&User);
----------------
&& "???"


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

https://reviews.llvm.org/D58386





More information about the llvm-commits mailing list