[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

2020-01-31 Thread vstinner at redhat dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93384 --- Comment #29 from Victor Stinner --- Jakub Jelinek: "Fixed on the trunk." Oh wow, that was quick! Thanks for the fix!

[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

2020-01-31 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93384 Jakub Jelinek changed: What|Removed |Added Status|NEW |RESOLVED Resolution|---

[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

2020-01-30 Thread cvs-commit at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93384 --- Comment #27 from CVS Commits --- The master branch has been updated by Jakub Jelinek : https://gcc.gnu.org/g:5fb07870fa4c86f529930bae76689ed5bdfcb192 commit r10-6359-g5fb07870fa4c86f529930bae76689ed5bdfcb192 Author: Jakub Jelinek Date: T

[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

2020-01-30 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93384 --- Comment #26 from Jakub Jelinek --- Created attachment 47741 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=47741&action=edit gcc10-pr93384.patch Untested fix (only the make localalias name unique part, not the ipa-pure-const.c change).

[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

2020-01-29 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93384 --- Comment #25 from Jakub Jelinek --- Yeah, I think that is a good summary. I wasn't sure if 2) is safe, but perhaps it is if it comes from analysis of the function body (for user attributes, I believe I've seen (or even wrote, don't remember)

[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

2020-01-29 Thread hubicka at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93384 --- Comment #24 from Jan Hubicka --- Reading through the PR I understand it as follows 1) we create localalias for a symbol 2) ipa-pure-const founds that the function is noreturn. Here seems to be a bug, since it does TREE_THIS_VOLATI

[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

2020-01-29 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93384 --- Comment #23 from Jakub Jelinek --- Ah, just small change is needed to make it reproduce the problem: $ cat pr93384_0.c void bar (void); __attribute__((noipa)) void quux (int x) { if (x == 5) bar (); } __attribute__((noipa, noreturn)) void foo

[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

2020-01-29 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93384 --- Comment #22 from Jakub Jelinek --- To be precise, the above testcase doesn't reproduce the ppc64le assembler error, for that to reproduce it is needed that there is at least one direct call to the *.localalias emitted before the two .set dire

[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

2020-01-29 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93384 Jakub Jelinek changed: What|Removed |Added Status|WAITING |NEW --- Comment #21 from Jakub Jelinek

[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

2020-01-29 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93384 --- Comment #20 from Jakub Jelinek --- 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 ()

[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

2020-01-29 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93384 --- Comment #19 from Jakub Jelinek --- Perhaps a workaround (and probably the right thing in any case) would be to add _Py_NO_RETURN to _PyObject_AssertFailed declaration in Include/cpython/object.h because it will always call Py_FatalError which

[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

2020-01-29 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93384 --- Comment #18 from Jakub Jelinek --- Perhaps if we want to really make sure all the flags are what we expect them, we should call clone_function_name_numbered instead of clone_function_name, though I'm afraid I have no idea how well that works

[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

2020-01-29 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93384 --- Comment #17 from Jakub Jelinek --- So, it seems #0 symtab_node::noninterposable_alias (this=) at ../../gcc/symtab.c:1878 #1 0x10f6e5a0 in function_and_variable_visibility (whole_program=) at ../../gcc/ipa-visibility.c:772 #2 0x

[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

2020-01-28 Thread amodra at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93384 --- Comment #16 from Alan Modra --- It is possible to fix this in the assembler too, but I'm reluctant to do so. If we make some sort of promise that .set x,y .set x,y gives the same results as when only the first .set is present, t

[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

2020-01-28 Thread bergner at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93384 --- Comment #15 from Peter Bergner --- So using the configure setup (minus the -specs=... options) in Comment 13, I was able to recreate the issue using unpatched Python-3.9.0a3 and GCC10. The failing command is: /home/bergner/gcc/install/gcc-f

[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

2020-01-28 Thread vstinner at redhat dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93384 --- Comment #14 from Victor Stinner --- Fedora downstream issue: https://bugzilla.redhat.com/show_bug.cgi?id=1795575

[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

2020-01-28 Thread vstinner at redhat dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93384 --- Comment #13 from Victor Stinner --- I used 3.9.0a3 release of Python to reproduce the issue: https://www.python.org/ftp/python/3.9.0/Python-3.9.0a3.tar.xz Here are the full commands to configure Python on ppc64le for Fedora Rawhide with PGO

[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

2020-01-28 Thread vstinner at redhat dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93384 --- Comment #12 from Victor Stinner --- Created attachment 47726 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=47726&action=edit preprocessed object.c (gcc -E), bzip2 compressed Here is the gcc -E output of Objects/object.c. Truncated ex

[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

2020-01-28 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93384 --- Comment #11 from Jakub Jelinek --- Seems node->call_for_symbol_and_aliases (symtab_node::noninterposable_alias, (void *)&new_node, true); if (new_node) return new_node; should catch that, so the ques

[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

2020-01-28 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93384 Jakub Jelinek changed: What|Removed |Added Target Milestone|--- |10.0 Summary|Python 3.9.0a3 f