[PATCH 00/14] Share DWARF partial symtabs between objfiles

Tom Tromey tom@tromey.com
Mon Feb 24 23:20:00 GMT 2020


>>>>> "Simon" == Simon Marchi <simark@simark.ca> writes:

>> 0 eeeb07c1120 Share DWARF partial symtabs
>> 1 597fab7df48 Move signatured_type::type to unshareable object
>> 2 9ec85b37d88 Split type_unit_group
>> 3 f4d2c85a250 Introduce dwarf2_enter_objfile and use it
>> 4 afcc2a6d028 Remove symtab links from dwarf2_psymtab and dwarf2_per_cu_quick_data
>> 5 11fad00951b Introduce dwarf2_unshareable and move die_type_hash
>> 6 49fe37ffefb Add objfile member to DWARF batons
>> 7 842794fd4d9 Add dwarf2_per_cu_data::index
>> 8 cbf63c32179 Fix a memory leak and remove an unused member
>> 9 fe38cf467e1 Add "objfile" parameter to two partial_symtab methods
>> 10 e0e096e6956 Convert IS_TYPE_UNIT_GROUP to method
>> 11 ad71f2eb272 Introduce dwarf2_per_objfile::obstack
>> 12 4a127c55a71 Simplify setting of reading_partial_symbols

Simon> I don't undersatnd why you say that patches #1-#5 won't be salvaged, I think
Simon> they will still be necessary.  For example, #1 and #2 are still necessary to
Simon> take out objfile-specific parts from dwarf2_per_cu_data, aren't they?

Yeah, I suppose so.  I think the goal should be to eliminate the
dwarf2_enter_objfile stuff, so I suppose really only one patch would be
wholly gone; and dwarf2_unshareable changed to sort of the "opposite"
patch.

Simon>   objfile -> dwarf2_per_objfile -> dwarf2_shared_between_objfiles

Simon> I find the last one a bit long, although it's clear.  I'm open to
Simon> any suggestions.

We talked on irc and thought dwarf2_per_bfd sounded ok, given that this
naming is already used for objfile data.

>> Also I have another patch here that adds a subclass of partial_symtab
>> for DWARF includes.  I *think* this solves the need to wrap the
>> compunit_symtab pointer in an optional<>, though it remains hard to be
>> completely certain.  I'll send that sometime soon, I think it could go
>> in separately.

Simon> I don't really know about that and the current work uses enough of my brain
Simon> cycles, so I could take a look, but only once we are done with the current
Simon> series (unless you think it impacts the current series).

If it could eliminate the optional, it would simplify some of the code.
I'll look at that a bit.

Tom



More information about the Gdb-patches mailing list