diff options
author | Richard Guenther <rguenther@suse.de> | 2010-11-26 16:01:26 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2010-11-26 16:01:26 +0000 |
commit | ec0810c1812f0f00d36880770dce2a4cd3dcb77d (patch) | |
tree | 15e00701ea8b7297bfe6abe0a442f390c3fef7a0 /gcc | |
parent | 1e7965d89ee2b04956f62a0f23aad7b4fc4a35c1 (diff) | |
download | gcc-ec0810c1812f0f00d36880770dce2a4cd3dcb77d.zip gcc-ec0810c1812f0f00d36880770dce2a4cd3dcb77d.tar.gz gcc-ec0810c1812f0f00d36880770dce2a4cd3dcb77d.tar.bz2 |
re PR middle-end/46559 (libstdc++ link FAILs with -flto)
2010-11-26 Richard Guenther <rguenther@suse.de>
PR middle-end/46559
* dwarf2out.c (dwarf2out_finish): Use comp_unit_die as root
for location list processing.
From-SVN: r167181
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/dwarf2out.c | 7 |
2 files changed, 9 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e64e927..2687d4e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,11 @@ 2010-11-26 Richard Guenther <rguenther@suse.de> + PR middle-end/46559 + * dwarf2out.c (dwarf2out_finish): Use comp_unit_die as root + for location list processing. + +2010-11-26 Richard Guenther <rguenther@suse.de> + PR lto/46560 * cgraph.c (cgraph_clone_edge): Clone call_stmt dependent flags manually. diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index 3195a92..e230861 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -22965,7 +22965,6 @@ dwarf2out_finish (const char *filename) limbo_die_node *node, *next_node; comdat_type_node *ctnode; htab_t comdat_type_table; - dw_die_ref die = 0; unsigned int i; gen_remaining_tmpl_value_param_die_attribute (); @@ -22998,8 +22997,8 @@ dwarf2out_finish (const char *filename) instance. */ for (node = limbo_die_list; node; node = next_node) { + dw_die_ref die = node->die; next_node = node->next; - die = node->die; if (die->die_parent == NULL) { @@ -23177,7 +23176,7 @@ dwarf2out_finish (const char *filename) add_AT_macptr (comp_unit_die (), DW_AT_macro_info, macinfo_section_label); if (have_location_lists) - optimize_location_lists (die); + optimize_location_lists (comp_unit_die ()); /* Output all of the compilation units. We put the main one last so that the offsets are available to output_pubnames. */ @@ -23222,7 +23221,7 @@ dwarf2out_finish (const char *filename) ASM_GENERATE_INTERNAL_LABEL (loc_section_label, DEBUG_LOC_SECTION_LABEL, 0); ASM_OUTPUT_LABEL (asm_out_file, loc_section_label); - output_location_lists (die); + output_location_lists (comp_unit_die ()); } /* Output public names table if necessary. */ |