[Bug lto/93384] [10 Regression] Python 3.9.0a3 fails to build on ppc64le with GCC 10.0.1: redefined symbol cannot be used on reloc

jakub at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Wed Jan 29 12:46:00 GMT 2020


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

--- Comment #20 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
I've tried to create small testcase for this:
__attribute__((noipa, noreturn)) void foo (void) { while (1) ; }
__attribute__((noinline)) void bar (void) { asm (""); foo (); }
void baz (int x) { if (x) bar (); }
and
extern void bar (void);
void qux (int x) { if (!x) bar (); }

./xgcc -B ./ -O2 -flto -ffat-lto-objects pr93384_0.c -S -fpic
-fno-semantic-interposition
./xgcc -B ./ -O2 -flto -ffat-lto-objects pr93384_1.c -S -fpic
-fno-semantic-interposition
as -o pr93384_0.{o,s}
as -o pr93384_1.{o,s}
./xgcc -B ./ -O2 -flto -shared -fpic -fno-semantic-interposition -o pr93384.so
pr93384_{0,1}.o -save-temps -v -flto-partition=one

but unfortunately (at least on x86_64-linux) it doesn't reproduce this, the
bar.localalias gets suffixed in one case to bar.localalias.lto_priv.0 and in
another one (though it didn't exist in the assembly at that point) to
bar.localalias.lto_priv.1.


More information about the Gcc-bugs mailing list