[PATCH] D64595: [Debuginfo][SROA] Need to handle dbg.value in SROA pass.

Alexey Lapshin via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Aug 19 14:08:31 PDT 2019


avl marked 2 inline comments as done.
avl added inline comments.


================
Comment at: llvm/test/DebugInfo/X86/sroa-after-inlining.ll:6
+; intrinsics into dbg.value. Inlining creates new opportunities for SROA, 
+; so it is called again. This time it does not handle correctly previously 
+; inserted dbg.value intrinsics.
----------------
dstenb wrote:
> Could you perhaps expand the last sentence a bit so that it describes how SROA did not handle it correctly?
current SROA implementation while doing "Migrate debug information from the old alloca to the new alloca(s)" handles only dbg.declare intrinsic. In this case original dbg.declare was lowered by instcombine pass into dbg.value. When it comes into SROA second time, all dbg.value intrinsics, inserted by instcombine pass before second SROA, just not updated(though SROA was actually done). 


================
Comment at: llvm/test/DebugInfo/X86/sroa-after-inlining2.ll:189-191
+!41 = !DILocation(line: 24, column: 5, scope: !7)
+!42 = !DILocation(line: 24, column: 10, scope: !7)
+!43 = !DILocation(line: 24, column: 24, scope: !7)
----------------
dstenb wrote:
> Can the different column entries be merged into one entry? That would increase the SNR of the test case.
> 
> (For future reference: Clang can omit column information when passed -gno-column-info.)
Ok.


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

https://reviews.llvm.org/D64595





More information about the llvm-commits mailing list