* [Bug target/105528] [11/12/13 Regression] ICE: in expand_expr_real_2, at expr.cc:10290 with -O2 -mavx512f
2022-05-09 6:29 [Bug rtl-optimization/105528] New: [11/12/13 Regression] ICE: in expand_expr_real_2, at expr.cc:10290 with -O2 -mavx512f zsojka at seznam dot cz
@ 2022-05-09 6:36 ` pinskia at gcc dot gnu.org
2022-05-09 6:39 ` [Bug tree-optimization/105528] " pinskia at gcc dot gnu.org
` (11 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: pinskia at gcc dot gnu.org @ 2022-05-09 6:36 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105528
--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
This is rather interesting adding -g allows it to compile.
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug tree-optimization/105528] [11/12/13 Regression] ICE: in expand_expr_real_2, at expr.cc:10290 with -O2 -mavx512f
2022-05-09 6:29 [Bug rtl-optimization/105528] New: [11/12/13 Regression] ICE: in expand_expr_real_2, at expr.cc:10290 with -O2 -mavx512f zsojka at seznam dot cz
2022-05-09 6:36 ` [Bug target/105528] " pinskia at gcc dot gnu.org
@ 2022-05-09 6:39 ` pinskia at gcc dot gnu.org
2022-05-09 6:41 ` pinskia at gcc dot gnu.org
` (10 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: pinskia at gcc dot gnu.org @ 2022-05-09 6:39 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105528
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Target Milestone|--- |11.4
Component|target |tree-optimization
Ever confirmed|0 |1
Last reconfirmed| |2022-05-09
--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Without -g:
_9 = _8 >= { 4294967295, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
_10 = BIT_FIELD_REF <w, 32, 160>;
_11 = VIEW_CONVERT_EXPR<unsigned int[16]>(w)[_10];
_12 = _11 + 1;
_18 = w;
_19 = .VEC_SET (_18, _12, _10);
w = _19;
v_13 = VEC_COND_EXPR <_9, { 4294967264, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }>;
With -g:
v_13 = .VCONDU (_8, { 4294967295, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
}, { 4294967264, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, 111);
vector(16) unsigned int _8;
vector(16) <signed-boolean:1> _9;
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug tree-optimization/105528] [11/12/13 Regression] ICE: in expand_expr_real_2, at expr.cc:10290 with -O2 -mavx512f
2022-05-09 6:29 [Bug rtl-optimization/105528] New: [11/12/13 Regression] ICE: in expand_expr_real_2, at expr.cc:10290 with -O2 -mavx512f zsojka at seznam dot cz
2022-05-09 6:36 ` [Bug target/105528] " pinskia at gcc dot gnu.org
2022-05-09 6:39 ` [Bug tree-optimization/105528] " pinskia at gcc dot gnu.org
@ 2022-05-09 6:41 ` pinskia at gcc dot gnu.org
2022-05-09 6:43 ` pinskia at gcc dot gnu.org
` (9 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: pinskia at gcc dot gnu.org @ 2022-05-09 6:41 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105528
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |compare-debug-failure
--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Even though this is not directly a compare debug failure, it could be if expand
didn't crash.
Note GCC 10.x had:
_9 = VEC_COND_EXPR <_8 >= { 4294967295, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0 }, { 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5 }, { 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }>;
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug tree-optimization/105528] [11/12/13 Regression] ICE: in expand_expr_real_2, at expr.cc:10290 with -O2 -mavx512f
2022-05-09 6:29 [Bug rtl-optimization/105528] New: [11/12/13 Regression] ICE: in expand_expr_real_2, at expr.cc:10290 with -O2 -mavx512f zsojka at seznam dot cz
` (2 preceding siblings ...)
2022-05-09 6:41 ` pinskia at gcc dot gnu.org
@ 2022-05-09 6:43 ` pinskia at gcc dot gnu.org
2022-05-09 7:03 ` [Bug tree-optimization/105528] [11/12/13 Regression] ICE: in expand_expr_real_2, at expr.cc:10290 with -O2 -mavx512f since r11-8059-g5240c5ca2e2b1f36 marxin at gcc dot gnu.org
` (8 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: pinskia at gcc dot gnu.org @ 2022-05-09 6:43 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105528
--- Comment #4 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Most likely introduced by r11-1445-g502d63b6d61415.
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug tree-optimization/105528] [11/12/13 Regression] ICE: in expand_expr_real_2, at expr.cc:10290 with -O2 -mavx512f since r11-8059-g5240c5ca2e2b1f36
2022-05-09 6:29 [Bug rtl-optimization/105528] New: [11/12/13 Regression] ICE: in expand_expr_real_2, at expr.cc:10290 with -O2 -mavx512f zsojka at seznam dot cz
` (3 preceding siblings ...)
2022-05-09 6:43 ` pinskia at gcc dot gnu.org
@ 2022-05-09 7:03 ` marxin at gcc dot gnu.org
2022-05-09 7:52 ` jakub at gcc dot gnu.org
` (7 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: marxin at gcc dot gnu.org @ 2022-05-09 7:03 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105528
Martin Liška <marxin at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Summary|[11/12/13 Regression] ICE: |[11/12/13 Regression] ICE:
|in expand_expr_real_2, at |in expand_expr_real_2, at
|expr.cc:10290 with -O2 |expr.cc:10290 with -O2
|-mavx512f |-mavx512f since
| |r11-8059-g5240c5ca2e2b1f36
CC| |marxin at gcc dot gnu.org,
| |rguenth at gcc dot gnu.org,
| |rsandifo at gcc dot gnu.org
--- Comment #5 from Martin Liška <marxin at gcc dot gnu.org> ---
Started with r11-8059-g5240c5ca2e2b1f36.
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug tree-optimization/105528] [11/12/13 Regression] ICE: in expand_expr_real_2, at expr.cc:10290 with -O2 -mavx512f since r11-8059-g5240c5ca2e2b1f36
2022-05-09 6:29 [Bug rtl-optimization/105528] New: [11/12/13 Regression] ICE: in expand_expr_real_2, at expr.cc:10290 with -O2 -mavx512f zsojka at seznam dot cz
` (4 preceding siblings ...)
2022-05-09 7:03 ` [Bug tree-optimization/105528] [11/12/13 Regression] ICE: in expand_expr_real_2, at expr.cc:10290 with -O2 -mavx512f since r11-8059-g5240c5ca2e2b1f36 marxin at gcc dot gnu.org
@ 2022-05-09 7:52 ` jakub at gcc dot gnu.org
2022-05-09 8:14 ` rguenth at gcc dot gnu.org
` (6 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: jakub at gcc dot gnu.org @ 2022-05-09 7:52 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105528
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |jakub at gcc dot gnu.org
Assignee|unassigned at gcc dot gnu.org |jakub at gcc dot gnu.org
Status|NEW |ASSIGNED
--- Comment #6 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
I'll have a look.
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug tree-optimization/105528] [11/12/13 Regression] ICE: in expand_expr_real_2, at expr.cc:10290 with -O2 -mavx512f since r11-8059-g5240c5ca2e2b1f36
2022-05-09 6:29 [Bug rtl-optimization/105528] New: [11/12/13 Regression] ICE: in expand_expr_real_2, at expr.cc:10290 with -O2 -mavx512f zsojka at seznam dot cz
` (5 preceding siblings ...)
2022-05-09 7:52 ` jakub at gcc dot gnu.org
@ 2022-05-09 8:14 ` rguenth at gcc dot gnu.org
2022-05-09 9:58 ` jakub at gcc dot gnu.org
` (5 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: rguenth at gcc dot gnu.org @ 2022-05-09 8:14 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105528
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Priority|P3 |P2
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug tree-optimization/105528] [11/12/13 Regression] ICE: in expand_expr_real_2, at expr.cc:10290 with -O2 -mavx512f since r11-8059-g5240c5ca2e2b1f36
2022-05-09 6:29 [Bug rtl-optimization/105528] New: [11/12/13 Regression] ICE: in expand_expr_real_2, at expr.cc:10290 with -O2 -mavx512f zsojka at seznam dot cz
` (6 preceding siblings ...)
2022-05-09 8:14 ` rguenth at gcc dot gnu.org
@ 2022-05-09 9:58 ` jakub at gcc dot gnu.org
2022-05-09 10:16 ` pinskia at gcc dot gnu.org
` (4 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: jakub at gcc dot gnu.org @ 2022-05-09 9:58 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105528
--- Comment #7 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Created attachment 52941
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=52941&action=edit
gcc12-pr105528.patch
Untested fix. gsi_remove moves iterator to the next stmt after the removed
one, and the caller uses gsi_next, so if gsi_remove happened, the caller skips
processing one stmt.
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug tree-optimization/105528] [11/12/13 Regression] ICE: in expand_expr_real_2, at expr.cc:10290 with -O2 -mavx512f since r11-8059-g5240c5ca2e2b1f36
2022-05-09 6:29 [Bug rtl-optimization/105528] New: [11/12/13 Regression] ICE: in expand_expr_real_2, at expr.cc:10290 with -O2 -mavx512f zsojka at seznam dot cz
` (7 preceding siblings ...)
2022-05-09 9:58 ` jakub at gcc dot gnu.org
@ 2022-05-09 10:16 ` pinskia at gcc dot gnu.org
2022-05-10 16:34 ` cvs-commit at gcc dot gnu.org
` (3 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: pinskia at gcc dot gnu.org @ 2022-05-09 10:16 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105528
--- Comment #8 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to Jakub Jelinek from comment #7)
> Created attachment 52941 [details]
> gcc12-pr105528.patch
>
> Untested fix. gsi_remove moves iterator to the next stmt after the removed
> one, and the caller uses gsi_next, so if gsi_remove happened, the caller
> skips processing one stmt.
That explains the -g difference even.
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug tree-optimization/105528] [11/12/13 Regression] ICE: in expand_expr_real_2, at expr.cc:10290 with -O2 -mavx512f since r11-8059-g5240c5ca2e2b1f36
2022-05-09 6:29 [Bug rtl-optimization/105528] New: [11/12/13 Regression] ICE: in expand_expr_real_2, at expr.cc:10290 with -O2 -mavx512f zsojka at seznam dot cz
` (8 preceding siblings ...)
2022-05-09 10:16 ` pinskia at gcc dot gnu.org
@ 2022-05-10 16:34 ` cvs-commit at gcc dot gnu.org
2022-05-10 16:42 ` cvs-commit at gcc dot gnu.org
` (2 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2022-05-10 16:34 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105528
--- Comment #9 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Jakub Jelinek <jakub@gcc.gnu.org>:
https://gcc.gnu.org/g:ddd46293e2b508b260eefe1adbad6720df7a5dd2
commit r13-275-gddd46293e2b508b260eefe1adbad6720df7a5dd2
Author: Jakub Jelinek <jakub@redhat.com>
Date: Tue May 10 18:34:08 2022 +0200
isel: Fix up gimple_expand_vec_set_expr [PR105528]
The following testcase ICEs (and only without -g), because we don't replace
one VEC_COND_EXPR with .VCOND* call.
We don't do that because gimple_expand_vec_set_expr adds some stmts before
*gsi and then uses gsi_remove to remove it. gsi_remove moves the iterator
to the next stmt and in the caller we then do gsi_next before looking at
another stmt, which means we can skip processing of one stmt, which in this
case happened to be a VEC_COND_EXPR but with -g is some debug stmt in
between. As we always emit some stmts before it, it is easy to update the
iterator to the last stmt emitted there, so that caller continues really
with the next stmt.
2022-05-10 Jakub Jelinek <jakub@redhat.com>
PR tree-optimization/105528
* gimple-isel.cc (gimple_expand_vec_set_expr): After gsi_remove
set *gsi to gsi_for_stmt (ass_stmt). Fix up function comment.
* gcc.dg/pr105528.c: New test.
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug tree-optimization/105528] [11/12/13 Regression] ICE: in expand_expr_real_2, at expr.cc:10290 with -O2 -mavx512f since r11-8059-g5240c5ca2e2b1f36
2022-05-09 6:29 [Bug rtl-optimization/105528] New: [11/12/13 Regression] ICE: in expand_expr_real_2, at expr.cc:10290 with -O2 -mavx512f zsojka at seznam dot cz
` (9 preceding siblings ...)
2022-05-10 16:34 ` cvs-commit at gcc dot gnu.org
@ 2022-05-10 16:42 ` cvs-commit at gcc dot gnu.org
2022-05-10 16:47 ` cvs-commit at gcc dot gnu.org
2022-05-10 16:49 ` jakub at gcc dot gnu.org
12 siblings, 0 replies; 14+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2022-05-10 16:42 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105528
--- Comment #10 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-12 branch has been updated by Jakub Jelinek
<jakub@gcc.gnu.org>:
https://gcc.gnu.org/g:9468cc35daca9fd6a0ec479217bb40a77616fb25
commit r12-8362-g9468cc35daca9fd6a0ec479217bb40a77616fb25
Author: Jakub Jelinek <jakub@redhat.com>
Date: Tue May 10 18:34:08 2022 +0200
isel: Fix up gimple_expand_vec_set_expr [PR105528]
The following testcase ICEs (and only without -g), because we don't replace
one VEC_COND_EXPR with .VCOND* call.
We don't do that because gimple_expand_vec_set_expr adds some stmts before
*gsi and then uses gsi_remove to remove it. gsi_remove moves the iterator
to the next stmt and in the caller we then do gsi_next before looking at
another stmt, which means we can skip processing of one stmt, which in this
case happened to be a VEC_COND_EXPR but with -g is some debug stmt in
between. As we always emit some stmts before it, it is easy to update the
iterator to the last stmt emitted there, so that caller continues really
with the next stmt.
2022-05-10 Jakub Jelinek <jakub@redhat.com>
PR tree-optimization/105528
* gimple-isel.cc (gimple_expand_vec_set_expr): After gsi_remove
set *gsi to gsi_for_stmt (ass_stmt). Fix up function comment.
* gcc.dg/pr105528.c: New test.
(cherry picked from commit ddd46293e2b508b260eefe1adbad6720df7a5dd2)
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug tree-optimization/105528] [11/12/13 Regression] ICE: in expand_expr_real_2, at expr.cc:10290 with -O2 -mavx512f since r11-8059-g5240c5ca2e2b1f36
2022-05-09 6:29 [Bug rtl-optimization/105528] New: [11/12/13 Regression] ICE: in expand_expr_real_2, at expr.cc:10290 with -O2 -mavx512f zsojka at seznam dot cz
` (10 preceding siblings ...)
2022-05-10 16:42 ` cvs-commit at gcc dot gnu.org
@ 2022-05-10 16:47 ` cvs-commit at gcc dot gnu.org
2022-05-10 16:49 ` jakub at gcc dot gnu.org
12 siblings, 0 replies; 14+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2022-05-10 16:47 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105528
--- Comment #11 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-11 branch has been updated by Jakub Jelinek
<jakub@gcc.gnu.org>:
https://gcc.gnu.org/g:03f73056bf688da31b649fd04e70c9d7a0dcc001
commit r11-9975-g03f73056bf688da31b649fd04e70c9d7a0dcc001
Author: Jakub Jelinek <jakub@redhat.com>
Date: Tue May 10 18:34:08 2022 +0200
isel: Fix up gimple_expand_vec_set_expr [PR105528]
The following testcase ICEs (and only without -g), because we don't replace
one VEC_COND_EXPR with .VCOND* call.
We don't do that because gimple_expand_vec_set_expr adds some stmts before
*gsi and then uses gsi_remove to remove it. gsi_remove moves the iterator
to the next stmt and in the caller we then do gsi_next before looking at
another stmt, which means we can skip processing of one stmt, which in this
case happened to be a VEC_COND_EXPR but with -g is some debug stmt in
between. As we always emit some stmts before it, it is easy to update the
iterator to the last stmt emitted there, so that caller continues really
with the next stmt.
2022-05-10 Jakub Jelinek <jakub@redhat.com>
PR tree-optimization/105528
* gimple-isel.cc (gimple_expand_vec_set_expr): After gsi_remove
set *gsi to gsi_for_stmt (ass_stmt). Fix up function comment.
* gcc.dg/pr105528.c: New test.
(cherry picked from commit ddd46293e2b508b260eefe1adbad6720df7a5dd2)
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug tree-optimization/105528] [11/12/13 Regression] ICE: in expand_expr_real_2, at expr.cc:10290 with -O2 -mavx512f since r11-8059-g5240c5ca2e2b1f36
2022-05-09 6:29 [Bug rtl-optimization/105528] New: [11/12/13 Regression] ICE: in expand_expr_real_2, at expr.cc:10290 with -O2 -mavx512f zsojka at seznam dot cz
` (11 preceding siblings ...)
2022-05-10 16:47 ` cvs-commit at gcc dot gnu.org
@ 2022-05-10 16:49 ` jakub at gcc dot gnu.org
12 siblings, 0 replies; 14+ messages in thread
From: jakub at gcc dot gnu.org @ 2022-05-10 16:49 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105528
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Resolution|--- |FIXED
Status|ASSIGNED |RESOLVED
--- Comment #12 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Fixed.
^ permalink raw reply [flat|nested] 14+ messages in thread