public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/105573] New: ICE when building numpy on SPARC64
@ 2022-05-11 21:57 sam at gentoo dot org
2022-05-11 22:03 ` [Bug target/105573] " sam at gentoo dot org
` (8 more replies)
0 siblings, 9 replies; 10+ messages in thread
From: sam at gentoo dot org @ 2022-05-11 21:57 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105573
Bug ID: 105573
Summary: ICE when building numpy on SPARC64
Product: gcc
Version: 11.3.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: sam at gentoo dot org
Target Milestone: ---
Created attachment 52957
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=52957&action=edit
loops.i
Originally reported downstream in Gentoo at https://bugs.gentoo.org/843575 by
Agostino Sarubbo (ago).
Occurs when building numpy 1.22.3 on SPARC64 with GCC 11.3 (but also seen it
with: numpy 1.22.3/gcc 11.2.1_p20220115; numpy 1.21.1/gcc 10.3.0).
I've minimised a reproducer (attached) and can reproduce it myself:
```
$ cat loops.i
UINT_sign_args, UINT_sign_steps;
*UINT_sign_ip1;
__attribute__((optimize("O3"))) UINT_sign() {
char *op1 = UINT_sign_args;
int os1 = UINT_sign_steps, i;
for (; i; i++, op1 += os1) {
unsigned in = *(unsigned *)UINT_sign_ip1;
int *out = op1;
*out = in > 0;
}
}
$ sparc64-unknown-linux-gnu-gcc -O2 -pipe -mcpu=niagara4 -c loops.i
loops.i:1:1: warning: data definition has no type or storage class
1 | UINT_sign_args, UINT_sign_steps;
| ^~~~~~~~~~~~~~
loops.i:1:1: warning: type defaults to ‘int’ in declaration of ‘UINT_sign_args’
[-Wimplicit-int]
loops.i:1:17: warning: type defaults to ‘int’ in declaration of
‘UINT_sign_steps’ [-Wimplicit-int]
1 | UINT_sign_args, UINT_sign_steps;
| ^~~~~~~~~~~~~~~
loops.i:2:1: warning: data definition has no type or storage class
2 | *UINT_sign_ip1;
| ^
loops.i:2:2: warning: type defaults to ‘int’ in declaration of ‘UINT_sign_ip1’
[-Wimplicit-int]
2 | *UINT_sign_ip1;
| ^~~~~~~~~~~~~
loops.i:3:33: warning: return type defaults to ‘int’ [-Wimplicit-int]
3 | __attribute__((optimize("O3"))) UINT_sign() {
| ^~~~~~~~~
loops.i: In function ‘UINT_sign’:
loops.i:4:15: warning: initialization of ‘char *’ from ‘int’ makes pointer from
integer without a cast [-Wint-conversion]
4 | char *op1 = UINT_sign_args;
| ^~~~~~~~~~~~~~
loops.i:8:16: warning: initialization of ‘int *’ from incompatible pointer type
‘char *’ [-Wincompatible-pointer-types]
8 | int *out = op1;
| ^~~
during GIMPLE pass: isel
loops.i:3:33: internal compiler error: in gimple_expand_vec_cond_expr, at
gimple-isel.cc:267
3 | __attribute__((optimize("O3"))) UINT_sign() {
| ^~~~~~~~~
Please submit a full bug report,
with preprocessed source if appropriate.
See <https://bugs.gentoo.org/> for instructions.
```
Please let me know if you need further information or hardware access (but I've
reproduced this above using a cross-compiler without issues).
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/105573] ICE when building numpy on SPARC64
2022-05-11 21:57 [Bug c++/105573] New: ICE when building numpy on SPARC64 sam at gentoo dot org
@ 2022-05-11 22:03 ` sam at gentoo dot org
2022-05-11 22:16 ` mpolacek at gcc dot gnu.org
` (7 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: sam at gentoo dot org @ 2022-05-11 22:03 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105573
--- Comment #1 from Sam James <sam at gentoo dot org> ---
It occurs with -mcpu=native or -mcpu=niagara4 but not if I drop that.
```
$ for t in param target; do cmd="gcc -Q -O2 --help=$t"; diff -U0 <(LANG=C $cmd)
<(LANG=C $cmd -mcpu=niagara4); done
--- /dev/fd/63 2022-05-11 15:01:56.915134318 -0700
+++ /dev/fd/62 2022-05-11 15:01:56.915134318 -0700
@@ -85,2 +85,2 @@
- --param=l1-cache-size= 64
- --param=l2-cache-size= 512
+ --param=l1-cache-size= 16
+ --param=l2-cache-size= 128
@@ -223 +223 @@
- --param=simultaneous-prefetches= 3
+ --param=simultaneous-prefetches= 2
--- /dev/fd/63 2022-05-11 15:01:56.965136466 -0700
+++ /dev/fd/62 2022-05-11 15:01:56.975136897 -0700
@@ -6 +6 @@
- -mcbcond [disabled]
+ -mcbcond [enabled]
@@ -8 +8 @@
- -mcpu= v9
+ -mcpu= niagara4
@@ -16 +16 @@
- -mfmaf [disabled]
+ -mfmaf [enabled]
@@ -27 +27 @@
- -mpopc [disabled]
+ -mpopc [enabled]
@@ -36 +36 @@
- -mtune= v9
+ -mtune= niagara4
@@ -41,3 +41,3 @@
- -mvis [disabled]
- -mvis2 [disabled]
- -mvis3 [disabled]
+ -mvis [enabled]
+ -mvis2 [enabled]
+ -mvis3 [enabled]
```
It looks like -mvis3 is the trigger:
```
$ sparc64-unknown-linux-gnu-gcc -O2 -pipe -c loops.i -mvis3
[...]
during GIMPLE pass: isel
loops.i:3:33: internal compiler error: in gimple_expand_vec_cond_expr, at
gimple-isel.cc:267
3 | __attribute__((optimize("O3"))) UINT_sign() {
| ^~~~~~~~~
0x5c4b2f internal_error(char const*, ...)
???:0
0x5bc583 fancy_abort(char const*, int, char const*)
???:0
[...]
```
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/105573] ICE when building numpy on SPARC64
2022-05-11 21:57 [Bug c++/105573] New: ICE when building numpy on SPARC64 sam at gentoo dot org
2022-05-11 22:03 ` [Bug target/105573] " sam at gentoo dot org
@ 2022-05-11 22:16 ` mpolacek at gcc dot gnu.org
2022-05-11 22:19 ` pinskia at gcc dot gnu.org
` (6 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: mpolacek at gcc dot gnu.org @ 2022-05-11 22:16 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105573
Marek Polacek <mpolacek at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |mpolacek at gcc dot gnu.org
--- Comment #2 from Marek Polacek <mpolacek at gcc dot gnu.org> ---
This seems to have been fixed in GCC 12 -- I can reproduce with
--target=sparc64-unknown-linux-gnu with GCC 11, but not GCC 12.
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/105573] ICE when building numpy on SPARC64
2022-05-11 21:57 [Bug c++/105573] New: ICE when building numpy on SPARC64 sam at gentoo dot org
2022-05-11 22:03 ` [Bug target/105573] " sam at gentoo dot org
2022-05-11 22:16 ` mpolacek at gcc dot gnu.org
@ 2022-05-11 22:19 ` pinskia at gcc dot gnu.org
2022-05-11 22:46 ` sam at gentoo dot org
` (5 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: pinskia at gcc dot gnu.org @ 2022-05-11 22:19 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105573
--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to Marek Polacek from comment #2)
> This seems to have been fixed in GCC 12 -- I can reproduce with
> --target=sparc64-unknown-linux-gnu with GCC 11, but not GCC 12.
If that is the case, it most likely been fixed by the patch which fixed PR
105312.
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/105573] ICE when building numpy on SPARC64
2022-05-11 21:57 [Bug c++/105573] New: ICE when building numpy on SPARC64 sam at gentoo dot org
` (2 preceding siblings ...)
2022-05-11 22:19 ` pinskia at gcc dot gnu.org
@ 2022-05-11 22:46 ` sam at gentoo dot org
2022-05-11 22:52 ` pinskia at gcc dot gnu.org
` (4 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: sam at gentoo dot org @ 2022-05-11 22:46 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105573
--- Comment #4 from Sam James <sam at gentoo dot org> ---
Confirmed: if I apply that patch, 11.3.0 works.
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/105573] ICE when building numpy on SPARC64
2022-05-11 21:57 [Bug c++/105573] New: ICE when building numpy on SPARC64 sam at gentoo dot org
` (3 preceding siblings ...)
2022-05-11 22:46 ` sam at gentoo dot org
@ 2022-05-11 22:52 ` pinskia at gcc dot gnu.org
2022-05-12 11:34 ` rguenth at gcc dot gnu.org
` (3 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: pinskia at gcc dot gnu.org @ 2022-05-11 22:52 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105573
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Depends on| |105312
--- Comment #5 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
We should commit the testcase and then close it as a dup of bug 105312 then.
Referenced Bugs:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105312
[Bug 105312] [11 Regression] ICE in gimple_expand_vec_cond_expr on arm-linux
since r12-834-ga6eacbf1055520
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/105573] ICE when building numpy on SPARC64
2022-05-11 21:57 [Bug c++/105573] New: ICE when building numpy on SPARC64 sam at gentoo dot org
` (4 preceding siblings ...)
2022-05-11 22:52 ` pinskia at gcc dot gnu.org
@ 2022-05-12 11:34 ` rguenth at gcc dot gnu.org
2022-05-12 15:36 ` sam at gentoo dot org
` (2 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: rguenth at gcc dot gnu.org @ 2022-05-12 11:34 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105573
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |RESOLVED
Resolution|--- |DUPLICATE
--- Comment #6 from Richard Biener <rguenth at gcc dot gnu.org> ---
Doing the dup honor.
*** This bug has been marked as a duplicate of bug 105312 ***
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/105573] ICE when building numpy on SPARC64
2022-05-11 21:57 [Bug c++/105573] New: ICE when building numpy on SPARC64 sam at gentoo dot org
` (5 preceding siblings ...)
2022-05-12 11:34 ` rguenth at gcc dot gnu.org
@ 2022-05-12 15:36 ` sam at gentoo dot org
2022-05-19 14:06 ` rguenth at gcc dot gnu.org
2023-04-25 6:21 ` cvs-commit at gcc dot gnu.org
8 siblings, 0 replies; 10+ messages in thread
From: sam at gentoo dot org @ 2022-05-12 15:36 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105573
--- Comment #7 from Sam James <sam at gentoo dot org> ---
1. Could you consider the fix for backporting please to 11? It works for me
as-is.
2. Will the testcase be committed?
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/105573] ICE when building numpy on SPARC64
2022-05-11 21:57 [Bug c++/105573] New: ICE when building numpy on SPARC64 sam at gentoo dot org
` (6 preceding siblings ...)
2022-05-12 15:36 ` sam at gentoo dot org
@ 2022-05-19 14:06 ` rguenth at gcc dot gnu.org
2023-04-25 6:21 ` cvs-commit at gcc dot gnu.org
8 siblings, 0 replies; 10+ messages in thread
From: rguenth at gcc dot gnu.org @ 2022-05-19 14:06 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105573
Bug 105573 depends on bug 105312, which changed state.
Bug 105312 Summary: [11 Regression] ICE in gimple_expand_vec_cond_expr on arm-linux since r12-834-ga6eacbf1055520
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105312
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution|--- |FIXED
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/105573] ICE when building numpy on SPARC64
2022-05-11 21:57 [Bug c++/105573] New: ICE when building numpy on SPARC64 sam at gentoo dot org
` (7 preceding siblings ...)
2022-05-19 14:06 ` rguenth at gcc dot gnu.org
@ 2023-04-25 6:21 ` cvs-commit at gcc dot gnu.org
8 siblings, 0 replies; 10+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2023-04-25 6:21 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105573
--- Comment #8 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Richard Biener <rguenth@gcc.gnu.org>:
https://gcc.gnu.org/g:a4916881b74c36c613a8a7abe040bb197ea8ba75
commit r14-210-ga4916881b74c36c613a8a7abe040bb197ea8ba75
Author: Sam James <sam@gentoo.org>
Date: Tue Apr 25 08:20:29 2023 +0200
[PATCH v2] testsuite: Add testcase for sparc ICE [PR105573]
r11-10018-g33914983cf3734c2f8079963ba49fcc117499ef3 fixed PR105312 and
added
a test case for target/arm but the duplicate PR105573 has a test case for
target/sparc that was uncommitted until now.
2023-04-21 Sam James <sam@gentoo.org>
PR tree-optimization/105312
PR target/105573
gcc/testsuite/
* gcc.target/sparc/pr105573.c: New test.
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2023-04-25 6:21 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-05-11 21:57 [Bug c++/105573] New: ICE when building numpy on SPARC64 sam at gentoo dot org
2022-05-11 22:03 ` [Bug target/105573] " sam at gentoo dot org
2022-05-11 22:16 ` mpolacek at gcc dot gnu.org
2022-05-11 22:19 ` pinskia at gcc dot gnu.org
2022-05-11 22:46 ` sam at gentoo dot org
2022-05-11 22:52 ` pinskia at gcc dot gnu.org
2022-05-12 11:34 ` rguenth at gcc dot gnu.org
2022-05-12 15:36 ` sam at gentoo dot org
2022-05-19 14:06 ` rguenth at gcc dot gnu.org
2023-04-25 6:21 ` cvs-commit at gcc dot gnu.org
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).