[Lldb-commits] [PATCH] D152708: [RFC][Draft] Enable primitive support for Two-Level Line Tables in LLVM
David Blaikie via Phabricator via lldb-commits
lldb-commits at lists.llvm.org
Mon Jun 12 10:04:47 PDT 2023
dblaikie added a comment.
Really appreciate you providing this prototype.
> This solves one of the current weaknesses in DWARF debugging, which is the inability to set breakpoints or step onto inlined callsites. However, there are other proposals (such as Location View Numbering) that could achieve the same thing, and the costs of TLLT in storage size and design complexity may make it a non-ideal solution to this problem.
FWIW, one of the major motivations for this was not only to include the stop points, but also to allow symbolizing including stack frames - so you'd need to know that all the inlined instructions come from the inlined call site. I think, maybe, my vague understanding of Location View Numbering wouldn't cover that case, and only covers the "how do I describe the variable when I'm stopped at this synthetic location that exists just before or after the call", for instance?
It is unfortunate to hear that TLLT are a significant size increase, though not entirely surprising - it's a bunch of extra info to encode. I'll be glad to have this example to experiment with.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D152708/new/
https://reviews.llvm.org/D152708
More information about the lldb-commits
mailing list