This is the mail archive of the
mailing list for the GCC project.
Re: [debug-early] LTO streaming of on-the-side dwarf data structures
- From: Aldy Hernandez <aldyh at redhat dot com>
- To: Richard Biener <richard dot guenther at gmail dot com>
- Cc: jason merrill <jason at redhat dot com>, GCC Mailing List <gcc at gcc dot gnu dot org>, Andrew MacLeod <amacleod at redhat dot com>
- Date: Wed, 15 Oct 2014 08:09:18 -0700
- Subject: Re: [debug-early] LTO streaming of on-the-side dwarf data structures
- Authentication-results: sourceware.org; auth=none
- References: <543C72D6 dot 90100 at redhat dot com> <CAFiYyc1e4zeeZ2nH9RgLENdSErrdNWc+87e3BToZ-+zjJBiqaw at mail dot gmail dot com> <543D8292 dot 4000803 at redhat dot com> <CAFiYyc1to_6Q1aCk-DqkHx8GCxYrCqxQniVpGCkmkbfgxtAF0Q at mail dot gmail dot com>
On 10/15/14 00:55, Richard Biener wrote:
On Tue, Oct 14, 2014 at 10:07 PM, Aldy Hernandez <firstname.lastname@example.org> wrote:
On 10/14/14 06:21, Richard Biener wrote:
On Tue, Oct 14, 2014 at 2:48 AM, Aldy Hernandez <email@example.com> wrote:
Another similar issue I've seen is handling DW_TAG_lexical_block
(gen_lexical_block_die). Ideally we should generate the
DW_TAG_lexical_block and the corresponding locals in early dumping, and then
fill in the high/low attributes of the lexical block the second time around.
We would need a hash similar to decl_die_table to get from
BLOCK->DW_TAG_lexical_block, similar to die_table_offset. For that matter,
we could store the relationship in die_table_offset, or in the die_offset if
I understood things correctly.
Yes, we'd create the DW_TAG_lexical_block early, store and stream a
reference to the early DIE in the BLOCK and annotate that DIE
late by means of some clever dwarf tricks.
I didn't realize adding fields/bits to the tree structure was on the
table. This makes things simpler.
That being said, it seems like a lot of this will become clearer as I
implement it. Thanks so much for the guidance. I'll now go off into a
little dark corner and think about this some more while I crank out some