* [Bug tree-optimization/59591] ICE in vect_get_vec_def_for_stmt_copy, at tree-vect-stmts.c:156 for -march=core-avx2
2013-12-24 8:47 [Bug tree-optimization/59591] New: ICE in vect_get_vec_def_for_stmt_copy, at tree-vect-stmts.c:156 for -march=core-avx2 izamyatin at gmail dot com
@ 2013-12-24 8:48 ` izamyatin at gmail dot com
2013-12-24 12:26 ` [Bug tree-optimization/59591] [4.9 Regression] " hjl.tools at gmail dot com
` (6 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: izamyatin at gmail dot com @ 2013-12-24 8:48 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59591
--- Comment #1 from Igor Zamyatin <izamyatin at gmail dot com> ---
Created attachment 31509
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=31509&action=edit
small testcase
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug tree-optimization/59591] [4.9 Regression] ICE in vect_get_vec_def_for_stmt_copy, at tree-vect-stmts.c:156 for -march=core-avx2
2013-12-24 8:47 [Bug tree-optimization/59591] New: ICE in vect_get_vec_def_for_stmt_copy, at tree-vect-stmts.c:156 for -march=core-avx2 izamyatin at gmail dot com
2013-12-24 8:48 ` [Bug tree-optimization/59591] " izamyatin at gmail dot com
@ 2013-12-24 12:26 ` hjl.tools at gmail dot com
2013-12-24 12:38 ` dominiq at lps dot ens.fr
` (5 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: hjl.tools at gmail dot com @ 2013-12-24 12:26 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59591
H.J. Lu <hjl.tools at gmail dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|--- |4.9.0
Summary|ICE in |[4.9 Regression] ICE in
|vect_get_vec_def_for_stmt_c |vect_get_vec_def_for_stmt_c
|opy, at |opy, at
|tree-vect-stmts.c:156 for |tree-vect-stmts.c:156 for
|-march=core-avx2 |-march=core-avx2
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug tree-optimization/59591] [4.9 Regression] ICE in vect_get_vec_def_for_stmt_copy, at tree-vect-stmts.c:156 for -march=core-avx2
2013-12-24 8:47 [Bug tree-optimization/59591] New: ICE in vect_get_vec_def_for_stmt_copy, at tree-vect-stmts.c:156 for -march=core-avx2 izamyatin at gmail dot com
2013-12-24 8:48 ` [Bug tree-optimization/59591] " izamyatin at gmail dot com
2013-12-24 12:26 ` [Bug tree-optimization/59591] [4.9 Regression] " hjl.tools at gmail dot com
@ 2013-12-24 12:38 ` dominiq at lps dot ens.fr
2013-12-27 12:07 ` jakub at gcc dot gnu.org
` (4 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: dominiq at lps dot ens.fr @ 2013-12-24 12:38 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59591
Dominique d'Humieres <dominiq at lps dot ens.fr> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Last reconfirmed| |2013-12-24
Ever confirmed|0 |1
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug tree-optimization/59591] [4.9 Regression] ICE in vect_get_vec_def_for_stmt_copy, at tree-vect-stmts.c:156 for -march=core-avx2
2013-12-24 8:47 [Bug tree-optimization/59591] New: ICE in vect_get_vec_def_for_stmt_copy, at tree-vect-stmts.c:156 for -march=core-avx2 izamyatin at gmail dot com
` (2 preceding siblings ...)
2013-12-24 12:38 ` dominiq at lps dot ens.fr
@ 2013-12-27 12:07 ` jakub at gcc dot gnu.org
2013-12-27 19:16 ` jakub at gcc dot gnu.org
` (3 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: jakub at gcc dot gnu.org @ 2013-12-27 12:07 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59591
--- Comment #3 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Slightly reduced fortran testcase for -O3 -mavx2:
subroutine foo (m, n, o, p, q, e, a, b, x, f)
integer, intent (in) :: n, o, p, q, m, f
integer, dimension (n:o) :: e, a, b
integer, dimension (n:o, p:q) :: x
integer :: j, i
do j = 1, m
do i = n, f
if (e(i) .eq. 0) then
a(i) = x(i, b(i))
endif
enddo
enddo
end subroutine foo
and C testcase for -O3 -mavx2 -fopenmp-simd:
int p[256], q[256], r[256], t[256];
void
foo (void)
{
int i;
#pragma omp simd safelen(64)
for (i = 0; i < 256; i++)
if (r[i] > 32)
t[i] = p[q[i] * 3L + 2L];
}
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug tree-optimization/59591] [4.9 Regression] ICE in vect_get_vec_def_for_stmt_copy, at tree-vect-stmts.c:156 for -march=core-avx2
2013-12-24 8:47 [Bug tree-optimization/59591] New: ICE in vect_get_vec_def_for_stmt_copy, at tree-vect-stmts.c:156 for -march=core-avx2 izamyatin at gmail dot com
` (3 preceding siblings ...)
2013-12-27 12:07 ` jakub at gcc dot gnu.org
@ 2013-12-27 19:16 ` jakub at gcc dot gnu.org
2013-12-30 12:19 ` jakub at gcc dot gnu.org
` (2 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: jakub at gcc dot gnu.org @ 2013-12-27 19:16 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59591
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |ASSIGNED
Assignee|unassigned at gcc dot gnu.org |jakub at gcc dot gnu.org
--- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Created attachment 31525
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=31525&action=edit
gcc49-pr59591.patch
Untested fix. Still need to turn the testcase into runtime testcase and look
at the other gather direction (the patch fixes the modifier = NARROW case, need
to look at modifier = WIDEN case).
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug tree-optimization/59591] [4.9 Regression] ICE in vect_get_vec_def_for_stmt_copy, at tree-vect-stmts.c:156 for -march=core-avx2
2013-12-24 8:47 [Bug tree-optimization/59591] New: ICE in vect_get_vec_def_for_stmt_copy, at tree-vect-stmts.c:156 for -march=core-avx2 izamyatin at gmail dot com
` (4 preceding siblings ...)
2013-12-27 19:16 ` jakub at gcc dot gnu.org
@ 2013-12-30 12:19 ` jakub at gcc dot gnu.org
2013-12-30 17:05 ` jakub at gcc dot gnu.org
2013-12-30 17:08 ` jakub at gcc dot gnu.org
7 siblings, 0 replies; 9+ messages in thread
From: jakub at gcc dot gnu.org @ 2013-12-30 12:19 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59591
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Attachment #31525|0 |1
is obsolete| |
--- Comment #5 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Created attachment 31540
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=31540&action=edit
gcc49-pr59591.patch
Updated patch with runtime testcases. Unfortunately, I don't have access to
any CPUs with AVX2 right now, so can't test whether it works there properly.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug tree-optimization/59591] [4.9 Regression] ICE in vect_get_vec_def_for_stmt_copy, at tree-vect-stmts.c:156 for -march=core-avx2
2013-12-24 8:47 [Bug tree-optimization/59591] New: ICE in vect_get_vec_def_for_stmt_copy, at tree-vect-stmts.c:156 for -march=core-avx2 izamyatin at gmail dot com
` (5 preceding siblings ...)
2013-12-30 12:19 ` jakub at gcc dot gnu.org
@ 2013-12-30 17:05 ` jakub at gcc dot gnu.org
2013-12-30 17:08 ` jakub at gcc dot gnu.org
7 siblings, 0 replies; 9+ messages in thread
From: jakub at gcc dot gnu.org @ 2013-12-30 17:05 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59591
--- Comment #6 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Author: jakub
Date: Mon Dec 30 17:05:10 2013
New Revision: 206248
URL: http://gcc.gnu.org/viewcvs?rev=206248&root=gcc&view=rev
Log:
PR tree-optimization/59591
* tree-vect-stmts.c (vectorizable_mask_load_store): Fix up handling
of modifier = NARROW masked gathers.
(permute_vec_elements): Use gimple_get_lhs instead of
gimple_assign_lhs.
* gcc.dg/vect/pr59591-1.c: New test.
* gcc.dg/vect/pr59591-2.c: New test.
* gcc.target/i386/pr59591-1.c: New test.
* gcc.target/i386/pr59591-2.c: New test.
Added:
trunk/gcc/testsuite/gcc.dg/vect/pr59591-1.c
trunk/gcc/testsuite/gcc.dg/vect/pr59591-2.c
trunk/gcc/testsuite/gcc.target/i386/pr59591-1.c
trunk/gcc/testsuite/gcc.target/i386/pr59591-2.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-vect-stmts.c
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug tree-optimization/59591] [4.9 Regression] ICE in vect_get_vec_def_for_stmt_copy, at tree-vect-stmts.c:156 for -march=core-avx2
2013-12-24 8:47 [Bug tree-optimization/59591] New: ICE in vect_get_vec_def_for_stmt_copy, at tree-vect-stmts.c:156 for -march=core-avx2 izamyatin at gmail dot com
` (6 preceding siblings ...)
2013-12-30 17:05 ` jakub at gcc dot gnu.org
@ 2013-12-30 17:08 ` jakub at gcc dot gnu.org
7 siblings, 0 replies; 9+ messages in thread
From: jakub at gcc dot gnu.org @ 2013-12-30 17:08 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59591
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution|--- |FIXED
--- Comment #7 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Fixed.
^ permalink raw reply [flat|nested] 9+ messages in thread