[Bug lto/85339] [8 Regression] With early LTO debug the early DWARF misses line-info

2018-04-11 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85339

Richard Biener  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #3 from Richard Biener  ---
Fixed.

[Bug lto/85339] [8 Regression] With early LTO debug the early DWARF misses line-info

2018-04-11 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85339

--- Comment #2 from Richard Biener  ---
Author: rguenth
Date: Wed Apr 11 13:05:35 2018
New Revision: 259317

URL: https://gcc.gnu.org/viewcvs?rev=259317=gcc=rev
Log:
2018-04-11  Richard Biener  

PR lto/85339
* dwarf2out.c (dwarf2out_finish): Remove DW_AT_stmt_list attribute
from early DWARF output.
(dwarf2out_early_finish): Output line info unconditionally into
early DWARF and add reference to it.

Modified:
trunk/gcc/ChangeLog
trunk/gcc/dwarf2out.c

[Bug lto/85339] [8 Regression] With early LTO debug the early DWARF misses line-info

2018-04-11 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85339

Richard Biener  changed:

   What|Removed |Added

 Status|UNCONFIRMED |ASSIGNED
   Last reconfirmed||2018-04-11
   Assignee|unassigned at gcc dot gnu.org  |rguenth at gcc dot 
gnu.org
 Ever confirmed|0   |1

[Bug lto/85339] [8 Regression] With early LTO debug the early DWARF misses line-info

2018-04-11 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85339

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|--- |8.0

--- Comment #1 from Richard Biener  ---
With this detailed location info on types one should be able to nearly re-build
a 1:1 source equivalent from debug info - for types ;)

Hunk missing in the patch:

@@ -31045,7 +31046,8 @@ dwarf2out_finish (const char *)
   /* Reset die CU symbol so we don't output it twice.  */
   comp_unit_die ()->die_id.die_symbol = NULL;

-  /* Remove DW_AT_macro from the early output.  */
+  /* Remove DW_AT_macro and DW_AT_stmt_list from the early output.  */
+  remove_AT (comp_unit_die (), DW_AT_stmt_list);
   if (have_macinfo)
remove_AT (comp_unit_die (), DEBUG_MACRO_ATTRIBUTE);