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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |SUSPENDED
   Last reconfirmed|                            |2019-03-19
   Target Milestone|8.4                         |---
            Summary|[8/9 Regression] -flto -g   |-flto -g -gsplit-dwarf is
                   |-gsplit-dwarf is broken     |broken
     Ever confirmed|0                           |1

--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> ---
So the issues are multiples.  First of all the way we handle split-dwarf
requires the driver to objcopy the .dwo sections to the .o.dwo files - this
step
would have to happen after copying out early debug into temporaries.  But then
I have a hard time seeing how to find the debug.

Of course -gsplit-dwarf at link-time doesn't make much sense.

I guess the proper way of doing -gsplit-dwarf at compile-time with -flto
would be to emit a _single_ (independent of -ffat-lto-objects) set of
.dwo sections from dwarf2out_early_finish - in fact move _all_ of the
split-dwarf handling there.  Then the only "LTO" debug sections would be
the skeleton ones.  There's still the unsolved issue that late debug info
will refer to DIEs in the .dwo debug in its symbol + offset way which of
course does not work.  There's no way to do this since .dwo files are
designed to have _all_ the debug info, not just type or decl parts like
-fdebug-types-sections.

So -flto looks like fundamentally incompatible with -gsplit-dwarf
and I doubt it's worth supporting it for the fat part of the objects.

Reply via email to