re PR lto/65015 (LTO produces randomly ordered debug information)
authorRichard Biener <rguenther@suse.de>
Fri, 13 Feb 2015 09:35:57 +0000 (09:35 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Fri, 13 Feb 2015 09:35:57 +0000 (09:35 +0000)
2015-02-13  Richard Biener  <rguenther@suse.de>

PR lto/65015
* dwarf2out.c (dwarf2out_finish): Use <artificial> as DW_AT_name
for LTO produced CUs.

From-SVN: r220678

gcc/ChangeLog
gcc/dwarf2out.c

index 6655004..1815502 100644 (file)
@@ -1,3 +1,9 @@
+2015-02-13  Richard Biener  <rguenther@suse.de>
+
+       PR lto/65015
+       * dwarf2out.c (dwarf2out_finish): Use <artificial> as DW_AT_name
+       for LTO produced CUs.
+
 2015-02-13  Bin Cheng  <bin.cheng@arm.com>
 
        PR tree-optimization/64705
index 4492f8a..ebf41c8 100644 (file)
@@ -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 (), "<artificial>");
   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)