On 3/27/20 3:21 PM, Jeff Law wrote:
On Fri, 2020-03-27 at 10:10 +0100, Martin Liška wrote:
On 3/26/20 5:54 PM, Jeff Law wrote:
On Mon, 2020-03-09 at 17:56 +0100, Martin Liška wrote:
On 3/9/20 4:36 PM, H.J. Lu wrote:
We nee to support different variables, like TLS, data and bss variables.

Why do we need TLS? Right now, it's not supported by nm. Or am I wrong?

About BSS and DATA I agree that it would be handy. I can theoretically
covered with code in get_variable_section/bss_initializer_p. But it's
quite logic and I'm not sure we should simulate it.

@Honza/Richi: Do you have any opinion about that?
Or could we just fix the damn broken configure scripts?  Isn't that what's
driving all this nonsense?

Hello.

Yes. Apparently libtool people were unable to come up with a reasonable
workaround for that. One can read technical details in this PR:
https://sourceware.org/bugzilla/show_bug.cgi?id=25355
What's funny is that discussion doesn't mention the HP-UX bits which handle this
correctly.  However, I think my tests were all done without the common symbol
handling change we made late last year.  So that may complicate things.

Note that the switching to -fno-common was actually the trigger of the issues.
Before the change, one can easily disambiguate global vars and functions based
on the LDPK_COMMON symbol_kind.




The HP-UX bits for this in configure work correctly.    I verified that
months
ago and even have a sed script which will take a broken configure script and
fix
it.

How many packages will you have to fix?
IIRC it's less than a half-dozen.  I found them by capturing the generated
config.h files with and without LTO enabled and comparing them.  I don't offhand
know if the differences caused the packages to mis-behave or not -- we just
failed any build where those config.h files differed.


The current LTO plug-in extension will work fine with gcc10 + latest bintuils
release
branch. That's a viable solution for us openSUSE.
If it's working, then great.  But I worry about having to keep binutils/gcc
consistent.  In fact, what brought me into the conversation again was them
getting out of sync in the last few days and binutils tests started failing.

It was probably caused by H.J.'s attempt to use lto-wrapper for nm (for LTO 
bytecode)
which had various issues.

Martin


jeff


Reply via email to