How to sort mixed DWARF32 and DWARF64 .debug_*
Michael Matz
matz@suse.de
Fri Nov 13 13:43:05 GMT 2020
Hello,
On Fri, 13 Nov 2020, Nick Clifton via Binutils wrote:
> > Let me rephrase the problem:
> > If a .debug_* output section S can be larger than 32-bit and its section
> > offset is referenced by a DWARF32 input section of itself or another
> > .debug_* output section,
> > the relocation may be subject to 32-bit relocation overflow.
>
> But in this case using DWARF32 is the wrong thing to do. The producers
> should be generating DWARF64. Mitigation is all very well, but it will
> not solve the overall problem, nor will it guarantee good debug info.
>
> > (We can imagine that for a known large project, most compilation units
> > are DWARF64.
> > Some archives may have DWARF32 debug info and may be difficult to rebuild.
> > This partition scheme can solve the problems.)
>
> Ok, although I still think that the onus should be on the library maintainers
> to rebuild their binaries. But I take your point that this might not always
> be practical.
The typical example in such cases are the crt*.o files. (As are
system-provided static archives, no matter how bad we think such practice
is :) libc_nonshared.a? ).
Ciao,
Michael.
More information about the Binutils
mailing list