William Maddox wrote:
It appears that portions of the LTO information are emitted in the usual debugging sections, rather, information that would already be present there is shared. This is great for reducing the size of object files that contain both LTO info and debugging info, but means that LTO breaks if 'strip --strip-debug' has been run on object files submitted to it as input. Is this intended or desirable behavior?
I'm not sure if it's intended, but I don't think it's desirable. The information needed to do LTO optimizations should be independent from the debugging information.
We could have a --strip-lto option for strip, but I don't think --strip-debug should remove LTO data.
Mark, Kenny, your thoughts? Diego.