From 3c780bb2d55431af3ade07c418f831ff19505735 Mon Sep 17 00:00:00 2001 From: Richard Biener Date: Fri, 13 Feb 2015 09:35:57 +0000 Subject: [PATCH] re PR lto/65015 (LTO produces randomly ordered debug information) 2015-02-13 Richard Biener PR lto/65015 * dwarf2out.c (dwarf2out_finish): Use as DW_AT_name for LTO produced CUs. From-SVN: r220678 --- gcc/ChangeLog | 6 ++++++ gcc/dwarf2out.c | 9 +++++++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 66550042ee9..1815502e576 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2015-02-13 Richard Biener + + PR lto/65015 + * dwarf2out.c (dwarf2out_finish): Use as DW_AT_name + for LTO produced CUs. + 2015-02-13 Bin Cheng PR tree-optimization/64705 diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index 4492f8afc43..ebf41c8e5a1 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -24527,8 +24527,13 @@ dwarf2out_finish (const char *filename) gen_remaining_tmpl_value_param_die_attribute (); /* Add the name for the main input file now. We delayed this from - dwarf2out_init to avoid complications with PCH. */ - add_name_attribute (comp_unit_die (), remap_debug_filename (filename)); + dwarf2out_init to avoid complications with PCH. + For LTO produced units use a fixed artificial name to avoid + leaking tempfile names into the dwarf. */ + if (!in_lto_p) + add_name_attribute (comp_unit_die (), remap_debug_filename (filename)); + else + add_name_attribute (comp_unit_die (), ""); if (!IS_ABSOLUTE_PATH (filename) || targetm.force_at_comp_dir) add_comp_dir_attribute (comp_unit_die ()); else if (get_AT (comp_unit_die (), DW_AT_comp_dir) == NULL) -- 2.30.2