[PATCH] D66328: [DebugInfo] Add debug location to dynamic atexit destructor

Adrian Prantl via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Mon Aug 19 14:43:41 PDT 2019


aprantl added inline comments.


================
Comment at: test/CodeGen/debug-info-no-location.cpp:4
+// CHECK-NEXT: ret void, !dbg !51
+// CHECK: !48 = distinct !DISubprogram(name: "`dynamic atexit destructor for 'f'", scope: !3, file: !3, line: 16, type: !49, scopeLine: 16, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !27, retainedNodes: !29)
+// CHECK: !51 = !DILocation(line: 16, scope: !48)
----------------
rnk wrote:
> aprantl wrote:
> > Please don't hardcode metadata numbers in the tests, this is bound to break almost immediately.
> > 
> > It seems like this function is compiler-generated and thus should be marked as artificial?
> I think using an artificial location (line 0) is consistent with other calls to StartFunction in CGDeclCXX.
I was referring to the `DIFlag::Artificial` that translates into `DISubprogram::isArtificial()` here. The line 0 is orthogonal, but also nice to have!


Repository:
  rC Clang

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

https://reviews.llvm.org/D66328





More information about the cfe-commits mailing list