This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [debug-early] C++ clones and limbo DIEs
- From: Richard Biener <richard dot guenther at gmail dot com>
- To: Jason Merrill <jason at redhat dot com>
- Cc: Aldy Hernandez <aldyh at redhat dot com>,gcc-patches <gcc-patches at gcc dot gnu dot org>
- Date: Fri, 16 Jan 2015 19:41:23 +0100
- Subject: Re: [debug-early] C++ clones and limbo DIEs
- Authentication-results: sourceware.org; auth=none
- References: <54B87E5B dot 1090502 at redhat dot com> <54B88149 dot 1040906 at redhat dot com> <CAFiYyc1M8wXGdzUYQuTGM7UB0-U-+iHiEDdD6qWp=M_dMTDZ1Q at mail dot gmail dot com> <54B93CF5 dot 9080107 at redhat dot com>
On January 16, 2015 5:31:49 PM CET, Jason Merrill <jason@redhat.com> wrote:
>On 01/16/2015 05:55 AM, Richard Biener wrote:
>> I'd hope that in the very distant future all early DIEs would be
>"created"
>> by the frontends (that is, dwarf2out.c wouldn't walk into
>parents/siblings
>> so much).
>
>Are you thinking that the front end would immediately call a debug hook
>
>for every block, local variable and such, or just for higher level
>entities?
For every block, local variable and such.
Yes. The FE then also has the chance to append whatever FE specific attributes without langhooks in dwarf2out.
>> I hoped we wouldn't need the limbo list at all ... that is, parent
>DIEs
>> are always present when we create children. I think that should
>> work in principle if the frontends would create DIEs while parsing.
>
>So create the function DIE as soon as we see the declaration? That
>seems reasonable. Then that would be the point of early debug, not
>later at EOF.
Yes.
Richard.
>> Note that dwarf2out forces parent DIE creation in some cases
>> but not in some others - it would be interesting to sort out which
>> parent DIEs it thinks it cannot create when we create the DIE
>> for a sibling. Maybe it's just poor ordering of early_global_decl
>> calls?
>
>Agreed.
>
>Jason