[Bug debug/93865] .debug_line with LTO refers to bogus file-names

rguenth at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Fri Feb 21 08:02:00 GMT 2020


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93865

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |lto
                 CC|                            |hubicka at gcc dot gnu.org

--- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> ---
I think we need to canonicalize locations file either at stream-out time or
at stream-in time (then using a streamed comp-dir).  Since we're doing
cross CU inlining and thus end up mixing .loc from different comp-dirs inside
a single function I see no way of somehow transparently preserving
the comp-dir via the GIMPLE CUs DW_AT_comp_dir attribute (which is somewhat
useless since it contains the link directory).

Note the GIMPLE CU also has an empty Directory Table in .debug_line,
eventually we could stick the original TUs comp-dir there.  But we still
need to somehow carry the information across streaming which is where
we're losing it right now.


More information about the Gcc-bugs mailing list