[PATCH] D67723: [DebugInfo] Add option to disable inline line tables.

Adrian Prantl via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Oct 21 16:52:39 PDT 2019


aprantl added a comment.

In D67723#1717416 <https://reviews.llvm.org/D67723#1717416>, @rnk wrote:

> In D67723#1710134 <https://reviews.llvm.org/D67723#1710134>, @probinson wrote:
>
> > FTR, since @rnk has mentioned my years-ago writings, what Sony has internally nowadays is a little different than what I said back then.  We have an option spelled `-gno-inlined-scopes`  which is slightly tricky to describe precisely, but the intent is that for debug-info purposes, certain functions appear to be empty.  That is, the declaration is still emitted (which is different from `nodebug`) but the generated IR has no source locations.
>
>
> Thanks for the info. That's interesting, and in the end I suppose it's pretty different from the behavior we had in mind for this flag.
>
>  ---
>
> I chatted offline with @dblaikie and he suggested perhaps it would be better to motivate this flag as one of the many existing knobs we have for controlling the volume of debug info produced by the debugger. We already have two major examples of this:
>
> - -gline-tables-only / -gmlt / -g1
> - -flimit-debug / -fno-standalone-debug This flag exists to give the user the ability to produce even less debug info, if that debug info seems to be putting pressure on the tools downstream: the linker or the debugger.


I agree that it would make sense to have a `-ginline-info-threshold=<#insns>` or `-gno-small-inline-functions` with a hardcoded threshold to implement the feature Paul described, and this patch seems to be a step in that direction, with the threshold being hardcoded to 0.

> We are motivated by one tool in particular at the moment, but if we're going to take the time to add a knob, we might as well make it work for DWARF.

Here you got me confused: When I read "we might as well make it work for DWARF", I read that as "we should emit the inlined instructions with line 0 under a DWARF debugger tuning". But that reading seems to to contradict your next sentence:

> If the user cares enough to find this flag, it seems more user friendly to make it behave the same rather than making it format-dependent.

Can you clarify?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D67723





More information about the llvm-commits mailing list