public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug tree-optimization/64404] New: [5 Regression] ICE: in vect_get_vec_def_for_operand, at tree-vect-stmts.c:1464 with --param=sccvn-max-alias-queries-per-access=1
@ 2014-12-25 8:35 zsojka at seznam dot cz
2014-12-25 12:20 ` [Bug tree-optimization/64404] " dominiq at lps dot ens.fr
` (5 more replies)
0 siblings, 6 replies; 7+ messages in thread
From: zsojka at seznam dot cz @ 2014-12-25 8:35 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64404
Bug ID: 64404
Summary: [5 Regression] ICE: in vect_get_vec_def_for_operand,
at tree-vect-stmts.c:1464 with
--param=sccvn-max-alias-queries-per-access=1
Product: gcc
Version: 5.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: tree-optimization
Assignee: unassigned at gcc dot gnu.org
Reporter: zsojka at seznam dot cz
Created attachment 34330
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=34330&action=edit
reduced testcase
Compiler output:
$ gcc -O3 --param=sccvn-max-alias-queries-per-access=1 testcase.c
testcase.c: In function 'Compute':
testcase.c:11:1: internal compiler error: in vect_get_vec_def_for_operand, at
tree-vect-stmts.c:1464
Compute (void)
^
0xe62369 vect_get_vec_def_for_operand(tree_node*, gimple_statement_base*,
tree_node**)
/mnt/svn/gcc-trunk/gcc/tree-vect-stmts.c:1464
0xe700c6 vectorizable_store
/mnt/svn/gcc-trunk/gcc/tree-vect-stmts.c:5316
0xe75e51 vect_transform_stmt(gimple_statement_base*, gimple_stmt_iterator*,
bool*, _slp_tree*, _slp_instance*)
/mnt/svn/gcc-trunk/gcc/tree-vect-stmts.c:7257
0xe7b88d vect_transform_loop(_loop_vec_info*)
/mnt/svn/gcc-trunk/gcc/tree-vect-loop.c:6134
0xe968b6 vectorize_loops()
/mnt/svn/gcc-trunk/gcc/tree-vectorizer.c:491
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.
Tested revisions:
r219053 - ICE
4_9 r219040 - OK
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug tree-optimization/64404] [5 Regression] ICE: in vect_get_vec_def_for_operand, at tree-vect-stmts.c:1464 with --param=sccvn-max-alias-queries-per-access=1
2014-12-25 8:35 [Bug tree-optimization/64404] New: [5 Regression] ICE: in vect_get_vec_def_for_operand, at tree-vect-stmts.c:1464 with --param=sccvn-max-alias-queries-per-access=1 zsojka at seznam dot cz
@ 2014-12-25 12:20 ` dominiq at lps dot ens.fr
2015-01-08 9:07 ` rguenth at gcc dot gnu.org
` (4 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: dominiq at lps dot ens.fr @ 2014-12-25 12:20 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64404
Dominique d'Humieres <dominiq at lps dot ens.fr> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Last reconfirmed| |2014-12-25
CC| |rguenth at gcc dot gnu.org
Ever confirmed|0 |1
--- Comment #1 from Dominique d'Humieres <dominiq at lps dot ens.fr> ---
Caused by revision r217827.
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug tree-optimization/64404] [5 Regression] ICE: in vect_get_vec_def_for_operand, at tree-vect-stmts.c:1464 with --param=sccvn-max-alias-queries-per-access=1
2014-12-25 8:35 [Bug tree-optimization/64404] New: [5 Regression] ICE: in vect_get_vec_def_for_operand, at tree-vect-stmts.c:1464 with --param=sccvn-max-alias-queries-per-access=1 zsojka at seznam dot cz
2014-12-25 12:20 ` [Bug tree-optimization/64404] " dominiq at lps dot ens.fr
@ 2015-01-08 9:07 ` rguenth at gcc dot gnu.org
2015-01-13 9:37 ` rguenth at gcc dot gnu.org
` (3 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: rguenth at gcc dot gnu.org @ 2015-01-08 9:07 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64404
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |ASSIGNED
Assignee|unassigned at gcc dot gnu.org |rguenth at gcc dot gnu.org
Target Milestone|--- |5.0
--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> ---
Mine.
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug tree-optimization/64404] [5 Regression] ICE: in vect_get_vec_def_for_operand, at tree-vect-stmts.c:1464 with --param=sccvn-max-alias-queries-per-access=1
2014-12-25 8:35 [Bug tree-optimization/64404] New: [5 Regression] ICE: in vect_get_vec_def_for_operand, at tree-vect-stmts.c:1464 with --param=sccvn-max-alias-queries-per-access=1 zsojka at seznam dot cz
2014-12-25 12:20 ` [Bug tree-optimization/64404] " dominiq at lps dot ens.fr
2015-01-08 9:07 ` rguenth at gcc dot gnu.org
@ 2015-01-13 9:37 ` rguenth at gcc dot gnu.org
2015-01-13 10:57 ` rguenth at gcc dot gnu.org
` (2 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: rguenth at gcc dot gnu.org @ 2015-01-13 9:37 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64404
--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> ---
Ok, this also shows the (known :/) wrong-code issue we have with the same-dr
and mixed SLP / loop vectorization. The vectorizer is fed
<bb 3>:
# d_16 = PHI <d_13(4), 0(2)>
# ivtmp_15 = PHI <ivtmp_14(4), 1024(2)>
_4 = X[d_16].l;
_5 = X[d_16].h;
_6 = _4 + _5;
Y[d_16].l = _6;
Y[d_16].h = _6;
Z[d_16].l = _4;
_11 = X[d_16].h;
Z[d_16].h = _11;
d_13 = d_16 + 1;
ivtmp_14 = ivtmp_15 - 1;
if (ivtmp_14 != 0)
goto <bb 4>;
else
goto <bb 5>;
<bb 4>:
goto <bb 3>;
where the Y = X op is SLPed but the Z = X one fails to SLP because of the
CSEd load (thus SLP analysis figures that the store has gaps). When
trying to loop vectorize the Z = X op (by unrolling the loop once)
we get at the DEF for _11 which unfortunately is already vectorized
with SLP and the vectorized stmt is the one with the load permutation
applied.
We really are not prepared to vectorize this loop!
In fact the second X.h load shouldn't be considered a grouped load, but
nothing "splits" it apart again.
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug tree-optimization/64404] [5 Regression] ICE: in vect_get_vec_def_for_operand, at tree-vect-stmts.c:1464 with --param=sccvn-max-alias-queries-per-access=1
2014-12-25 8:35 [Bug tree-optimization/64404] New: [5 Regression] ICE: in vect_get_vec_def_for_operand, at tree-vect-stmts.c:1464 with --param=sccvn-max-alias-queries-per-access=1 zsojka at seznam dot cz
` (2 preceding siblings ...)
2015-01-13 9:37 ` rguenth at gcc dot gnu.org
@ 2015-01-13 10:57 ` rguenth at gcc dot gnu.org
2015-01-13 12:36 ` rguenth at gcc dot gnu.org
2015-01-13 12:36 ` rguenth at gcc dot gnu.org
5 siblings, 0 replies; 7+ messages in thread
From: rguenth at gcc dot gnu.org @ 2015-01-13 10:57 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64404
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Priority|P3 |P1
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug tree-optimization/64404] [5 Regression] ICE: in vect_get_vec_def_for_operand, at tree-vect-stmts.c:1464 with --param=sccvn-max-alias-queries-per-access=1
2014-12-25 8:35 [Bug tree-optimization/64404] New: [5 Regression] ICE: in vect_get_vec_def_for_operand, at tree-vect-stmts.c:1464 with --param=sccvn-max-alias-queries-per-access=1 zsojka at seznam dot cz
` (4 preceding siblings ...)
2015-01-13 12:36 ` rguenth at gcc dot gnu.org
@ 2015-01-13 12:36 ` rguenth at gcc dot gnu.org
5 siblings, 0 replies; 7+ messages in thread
From: rguenth at gcc dot gnu.org @ 2015-01-13 12:36 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64404
--- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> ---
Author: rguenth
Date: Tue Jan 13 12:35:27 2015
New Revision: 219527
URL: https://gcc.gnu.org/viewcvs?rev=219527&root=gcc&view=rev
Log:
2015-01-13 Richard Biener <rguenther@suse.de>
PR tree-optimization/64404
* tree-vect-stmts.c (vectorizable_load): Reject conflicting
SLP types for CSEd loads.
* gcc.dg/vect/pr64404.c: New testcase.
Added:
trunk/gcc/testsuite/gcc.dg/vect/pr64404.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-vect-stmts.c
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug tree-optimization/64404] [5 Regression] ICE: in vect_get_vec_def_for_operand, at tree-vect-stmts.c:1464 with --param=sccvn-max-alias-queries-per-access=1
2014-12-25 8:35 [Bug tree-optimization/64404] New: [5 Regression] ICE: in vect_get_vec_def_for_operand, at tree-vect-stmts.c:1464 with --param=sccvn-max-alias-queries-per-access=1 zsojka at seznam dot cz
` (3 preceding siblings ...)
2015-01-13 10:57 ` rguenth at gcc dot gnu.org
@ 2015-01-13 12:36 ` rguenth at gcc dot gnu.org
2015-01-13 12:36 ` rguenth at gcc dot gnu.org
5 siblings, 0 replies; 7+ messages in thread
From: rguenth at gcc dot gnu.org @ 2015-01-13 12:36 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64404
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Priority|P1 |P3
Status|ASSIGNED |RESOLVED
Resolution|--- |FIXED
--- Comment #5 from Richard Biener <rguenth at gcc dot gnu.org> ---
Fixed.
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2015-01-13 12:36 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-12-25 8:35 [Bug tree-optimization/64404] New: [5 Regression] ICE: in vect_get_vec_def_for_operand, at tree-vect-stmts.c:1464 with --param=sccvn-max-alias-queries-per-access=1 zsojka at seznam dot cz
2014-12-25 12:20 ` [Bug tree-optimization/64404] " dominiq at lps dot ens.fr
2015-01-08 9:07 ` rguenth at gcc dot gnu.org
2015-01-13 9:37 ` rguenth at gcc dot gnu.org
2015-01-13 10:57 ` rguenth at gcc dot gnu.org
2015-01-13 12:36 ` rguenth at gcc dot gnu.org
2015-01-13 12:36 ` rguenth 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).