debug/94450 - remove DW_TAG_imported_unit generated in LTRANS units
This removes the DW_TAG_imported_unit we generate for each referenced early debug unit in LTRANS units. They are more harmful than they do good and the semantics can be read in a way making it even wrong. 2020-04-02 Richard Biener <rguenther@suse.de> PR debug/94450 * dwarf2out.c (dwarf2out_early_finish): Remove code emitting DW_TAG_imported_unit.
This commit is contained in:
parent
879bc686a0
commit
54af95767e
@ -1,3 +1,9 @@
|
||||
2020-04-02 Richard Biener <rguenther@suse.de>
|
||||
|
||||
PR debug/94450
|
||||
* dwarf2out.c (dwarf2out_early_finish): Remove code emitting
|
||||
DW_TAG_imported_unit.
|
||||
|
||||
2020-04-02 Maciej W. Rozycki <macro@wdc.com>
|
||||
|
||||
* doc/install.texi (Specific) <riscv32-*-elf, riscv32-*-linux>
|
||||
|
@ -32040,24 +32040,6 @@ dwarf2out_early_finish (const char *filename)
|
||||
sure to adjust the phase after annotating the LTRANS CU DIE. */
|
||||
if (in_lto_p)
|
||||
{
|
||||
/* Force DW_TAG_imported_unit to be created now, otherwise
|
||||
we might end up without it or ordered after DW_TAG_inlined_subroutine
|
||||
referencing DIEs from it. */
|
||||
if (! flag_wpa && flag_incremental_link != INCREMENTAL_LINK_LTO)
|
||||
{
|
||||
unsigned i;
|
||||
tree tu;
|
||||
if (external_die_map)
|
||||
FOR_EACH_VEC_SAFE_ELT (all_translation_units, i, tu)
|
||||
if (sym_off_pair *desc = external_die_map->get (tu))
|
||||
{
|
||||
dw_die_ref import = new_die (DW_TAG_imported_unit,
|
||||
comp_unit_die (), NULL_TREE);
|
||||
add_AT_external_die_ref (import, DW_AT_import,
|
||||
desc->sym, desc->off);
|
||||
}
|
||||
}
|
||||
|
||||
early_dwarf_finished = true;
|
||||
if (dump_file)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user