[llvm-dev] Debug Locations for Optimized Code

Kostya Serebryany via llvm-dev llvm-dev at lists.llvm.org
Thu Dec 8 10:55:10 PST 2016


On Thu, Dec 8, 2016 at 10:37 AM, Robinson, Paul <paul.robinson at sony.com>
wrote:

> If the sanitizers already rely on the debug info line table, which
> already has a file table, why can't frame layout descriptions use
> that as well?
>
>
>
> the frame layout descriptions contain names of the local variables, which
> are not part of line tables.
>
>
>
> Sorry, I was not clear, but I was actually responding to this statement:
>
>
>
> > Frame layout
> > descriptions encode line numbers for local variable declarations. They
> > don't include file names to keep object size under control, and we
> > can't really afford to add more duplicate debug info.
>
>
>
> This suggests that omitting file info from frame layout descriptions is a
> problem.  But surely whoever is reading the descriptions can get file info
> from the line table, so there is no need to duplicate that info—in short,
> why is this a problem in frame layouts?
>


>
>
> I assume you build your own frame layout descriptions because you want to
> work with –gmlt info instead of requiring full –g info?  If you have full
> –g then the variable info is in the .debug_info section already.
>

Yes. Most of the *big* asan users can't use -g due to enormous code size
and thus fall back to -gmlt.
So, asan should work well with gmlt


> --paulr
>
>
>
> *From:* Kostya Serebryany [mailto:kcc at google.com]
> *Sent:* Thursday, December 08, 2016 9:35 AM
> *To:* Robinson, Paul
> *Cc:* Evgenii Stepanov; llvm-dev at lists.llvm.org
> *Subject:* Re: [llvm-dev] Debug Locations for Optimized Code
>
>
>
>
>
>
>
> On Wed, Dec 7, 2016 at 5:49 PM, Robinson, Paul <paul.robinson at sony.com>
> wrote:
>
>
>
> > -----Original Message-----
> > From: Evgenii Stepanov [mailto:eugeni.stepanov at gmail.com]
> > Sent: Wednesday, December 07, 2016 4:51 PM
> > To: Kostya Serebryany
> > Cc: Robinson, Paul; llvm-dev at lists.llvm.org
> > Subject: Re: [llvm-dev] Debug Locations for Optimized Code
> >
> > In fact, we are already using "parallel" debug info. Frame layout
> > descriptions encode line numbers for local variable declarations. They
> > don't include file names to keep object size under control, and we
> > can't really afford to add more duplicate debug info.
> >
> > On Wed, Dec 7, 2016 at 1:44 PM, Kostya Serebryany via llvm-dev
> > <llvm-dev at lists.llvm.org> wrote:
> > > my 2c.
> > >
> > > the sanitizers rely on debug info to produce human-readable error
> > messages,
>
> If the sanitizers already rely on the debug info line table, which
> already has a file table, why can't frame layout descriptions use
> that as well?
>
>
>
> the frame layout descriptions contain names of the local variables, which
> are not part of line tables.
>
>
>
>
>
> --paulr
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20161208/b7e0d71c/attachment.html>


More information about the llvm-dev mailing list