public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug tree-optimization/58137] New: [trunk, ICE] full unroll + AVX2 vectorization
@ 2013-08-12 13:33 kirill.yukhin at intel dot com
2013-08-12 13:35 ` [Bug tree-optimization/58137] " kirill.yukhin at intel dot com
` (8 more replies)
0 siblings, 9 replies; 10+ messages in thread
From: kirill.yukhin at intel dot com @ 2013-08-12 13:33 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58137
Bug ID: 58137
Summary: [trunk, ICE] full unroll + AVX2 vectorization
Product: gcc
Version: 4.9.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: tree-optimization
Assignee: unassigned at gcc dot gnu.org
Reporter: kirill.yukhin at intel dot com
Created attachment 30635
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=30635&action=edit
Reproducer
Hello attached test produces ICE, when compiled as
$ gcc -S -O3 1.c -mavx2
It seems that full unroll or copyprop (or whatever) introduces something wrong.
1.c: In function 'more_xrv':
1.c:23:1: error: type mismatch in pointer plus expression
more_xrv(void)
^
struct XRV *
struct XRV *
struct XRV *
vect_vec_iv_.15_88 = vect_cst_.13_60 + { 64B, 64B, 64B, 64B };
1.c:23:1: error: type mismatch in pointer plus expression
struct XRV *
struct XRV *
struct XRV *
...
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug tree-optimization/58137] [trunk, ICE] full unroll + AVX2 vectorization
2013-08-12 13:33 [Bug tree-optimization/58137] New: [trunk, ICE] full unroll + AVX2 vectorization kirill.yukhin at intel dot com
@ 2013-08-12 13:35 ` kirill.yukhin at intel dot com
2013-08-12 19:58 ` bernd.edlinger at hotmail dot de
` (7 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: kirill.yukhin at intel dot com @ 2013-08-12 13:35 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58137
--- Comment #1 from Yukhin Kirill <kirill.yukhin at intel dot com> ---
Actually, this case come while debugging Spec2000's perl workload on AVX-512
changes (with bigger tripcount).
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug tree-optimization/58137] [trunk, ICE] full unroll + AVX2 vectorization
2013-08-12 13:33 [Bug tree-optimization/58137] New: [trunk, ICE] full unroll + AVX2 vectorization kirill.yukhin at intel dot com
2013-08-12 13:35 ` [Bug tree-optimization/58137] " kirill.yukhin at intel dot com
@ 2013-08-12 19:58 ` bernd.edlinger at hotmail dot de
2013-08-12 23:54 ` bernd.edlinger at hotmail dot de
` (6 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: bernd.edlinger at hotmail dot de @ 2013-08-12 19:58 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58137
Bernd Edlinger <bernd.edlinger at hotmail dot de> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |bernd.edlinger at hotmail dot de
--- Comment #2 from Bernd Edlinger <bernd.edlinger at hotmail dot de> ---
reproduced also with arm-none-eabi:
../arm-eabi/bin/arm-eabi-gcc -O3 -mfpu=neon -mfloat-abi=softfp 1.c
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug tree-optimization/58137] [trunk, ICE] full unroll + AVX2 vectorization
2013-08-12 13:33 [Bug tree-optimization/58137] New: [trunk, ICE] full unroll + AVX2 vectorization kirill.yukhin at intel dot com
2013-08-12 13:35 ` [Bug tree-optimization/58137] " kirill.yukhin at intel dot com
2013-08-12 19:58 ` bernd.edlinger at hotmail dot de
@ 2013-08-12 23:54 ` bernd.edlinger at hotmail dot de
2013-08-13 10:53 ` kirill.yukhin at intel dot com
` (5 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: bernd.edlinger at hotmail dot de @ 2013-08-12 23:54 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58137
--- Comment #3 from Bernd Edlinger <bernd.edlinger at hotmail dot de> ---
Created attachment 30639
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=30639&action=edit
possible fix
This seems to be a bug in the constant folding of constant
vector values at forwprop4.
Could some one check if the generated code is now correct ?
Thanks.
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug tree-optimization/58137] [trunk, ICE] full unroll + AVX2 vectorization
2013-08-12 13:33 [Bug tree-optimization/58137] New: [trunk, ICE] full unroll + AVX2 vectorization kirill.yukhin at intel dot com
` (2 preceding siblings ...)
2013-08-12 23:54 ` bernd.edlinger at hotmail dot de
@ 2013-08-13 10:53 ` kirill.yukhin at intel dot com
2013-08-20 11:03 ` bernd.edlinger at hotmail dot de
` (4 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: kirill.yukhin at intel dot com @ 2013-08-13 10:53 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58137
--- Comment #4 from Yukhin Kirill <kirill.yukhin at intel dot com> ---
> Could some one check if the generated code is now correct ?
Patch works both on attached AVX2 testcase and on root AVX-512 issue, thanks.
I think it should be submitted to gcc-patches.
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug tree-optimization/58137] [trunk, ICE] full unroll + AVX2 vectorization
2013-08-12 13:33 [Bug tree-optimization/58137] New: [trunk, ICE] full unroll + AVX2 vectorization kirill.yukhin at intel dot com
` (3 preceding siblings ...)
2013-08-13 10:53 ` kirill.yukhin at intel dot com
@ 2013-08-20 11:03 ` bernd.edlinger at hotmail dot de
2013-09-05 12:45 ` rguenth at gcc dot gnu.org
` (3 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: bernd.edlinger at hotmail dot de @ 2013-08-20 11:03 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58137
--- Comment #5 from Bernd Edlinger <bernd.edlinger at hotmail dot de> ---
OK, a slightly improved patch was posted at:
http://gcc.gnu.org/ml/gcc-patches/2013-08/msg01099.html
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug tree-optimization/58137] [trunk, ICE] full unroll + AVX2 vectorization
2013-08-12 13:33 [Bug tree-optimization/58137] New: [trunk, ICE] full unroll + AVX2 vectorization kirill.yukhin at intel dot com
` (4 preceding siblings ...)
2013-08-20 11:03 ` bernd.edlinger at hotmail dot de
@ 2013-09-05 12:45 ` rguenth at gcc dot gnu.org
2013-09-05 12:59 ` rguenth at gcc dot gnu.org
` (2 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: rguenth at gcc dot gnu.org @ 2013-09-05 12:45 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58137
--- Comment #6 from Richard Biener <rguenth at gcc dot gnu.org> ---
Author: rguenth
Date: Thu Sep 5 12:45:20 2013
New Revision: 202282
URL: http://gcc.gnu.org/viewcvs?rev=202282&root=gcc&view=rev
Log:
2013-09-05 Richard Biener <rguenther@suse.de>
PR tree-optimization/58137
* tree-vect-stmts.c (get_vectype_for_scalar_type_and_size):
Do not create vectors of pointers.
* tree-vect-loop.c (get_initial_def_for_induction): Use proper
types for the components of the vector initializer.
* tree-cfg.c (verify_gimple_assign_binary): Remove special-casing
allowing pointer vectors with PLUS_EXPR/MINUS_EXPR.
* gcc.target/i386/pr58137.c: New testcase.
Added:
trunk/gcc/testsuite/gcc.target/i386/pr58137.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-cfg.c
trunk/gcc/tree-vect-loop.c
trunk/gcc/tree-vect-stmts.c
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug tree-optimization/58137] [trunk, ICE] full unroll + AVX2 vectorization
2013-08-12 13:33 [Bug tree-optimization/58137] New: [trunk, ICE] full unroll + AVX2 vectorization kirill.yukhin at intel dot com
` (5 preceding siblings ...)
2013-09-05 12:45 ` rguenth at gcc dot gnu.org
@ 2013-09-05 12:59 ` rguenth at gcc dot gnu.org
2013-12-06 12:39 ` rguenth at gcc dot gnu.org
2013-12-06 12:40 ` rguenth at gcc dot gnu.org
8 siblings, 0 replies; 10+ messages in thread
From: rguenth at gcc dot gnu.org @ 2013-09-05 12:59 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58137
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |RESOLVED
Resolution|--- |FIXED
--- Comment #7 from Richard Biener <rguenth at gcc dot gnu.org> ---
Fixed.
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug tree-optimization/58137] [trunk, ICE] full unroll + AVX2 vectorization
2013-08-12 13:33 [Bug tree-optimization/58137] New: [trunk, ICE] full unroll + AVX2 vectorization kirill.yukhin at intel dot com
` (6 preceding siblings ...)
2013-09-05 12:59 ` rguenth at gcc dot gnu.org
@ 2013-12-06 12:39 ` rguenth at gcc dot gnu.org
2013-12-06 12:40 ` rguenth at gcc dot gnu.org
8 siblings, 0 replies; 10+ messages in thread
From: rguenth at gcc dot gnu.org @ 2013-12-06 12:39 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58137
--- Comment #8 from Richard Biener <rguenth at gcc dot gnu.org> ---
Author: rguenth
Date: Fri Dec 6 12:39:32 2013
New Revision: 205739
URL: http://gcc.gnu.org/viewcvs?rev=205739&root=gcc&view=rev
Log:
2013-12-06 Richard Biener <rguenther@suse.de>
Backport from mainline
2013-11-27 Richard Biener <rguenther@suse.de>
PR tree-optimization/59288
* tree-vect-loop.c (get_initial_def_for_induction): Do not
re-analyze the PHI but use STMT_VINFO_LOOP_PHI_EVOLUTION_PART.
* gcc.dg/torture/pr59288.c: New testcase.
2013-11-19 Richard Biener <rguenther@suse.de>
PR tree-optimization/59164
* tree-vect-loop.c (vect_analyze_loop_operations): Adjust
check whether we can create an epilogue loop to reflect the
cases where we create one.
* gcc.dg/torture/pr59164.c: New testcase.
2013-09-05 Richard Biener <rguenther@suse.de>
PR tree-optimization/58137
* tree-vect-stmts.c (get_vectype_for_scalar_type_and_size):
Do not create vectors of pointers.
* tree-vect-loop.c (get_initial_def_for_induction): Use proper
types for the components of the vector initializer.
* tree-cfg.c (verify_gimple_assign_binary): Remove special-casing
allowing pointer vectors with PLUS_EXPR/MINUS_EXPR.
* gcc.target/i386/pr58137.c: New testcase.
Added:
branches/gcc-4_8-branch/gcc/testsuite/gcc.dg/torture/pr59164.c
branches/gcc-4_8-branch/gcc/testsuite/gcc.dg/torture/pr59288.c
branches/gcc-4_8-branch/gcc/testsuite/gcc.target/i386/pr58137.c
Modified:
branches/gcc-4_8-branch/gcc/ChangeLog
branches/gcc-4_8-branch/gcc/testsuite/ChangeLog
branches/gcc-4_8-branch/gcc/tree-cfg.c
branches/gcc-4_8-branch/gcc/tree-vect-loop.c
branches/gcc-4_8-branch/gcc/tree-vect-stmts.c
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug tree-optimization/58137] [trunk, ICE] full unroll + AVX2 vectorization
2013-08-12 13:33 [Bug tree-optimization/58137] New: [trunk, ICE] full unroll + AVX2 vectorization kirill.yukhin at intel dot com
` (7 preceding siblings ...)
2013-12-06 12:39 ` rguenth at gcc dot gnu.org
@ 2013-12-06 12:40 ` rguenth at gcc dot gnu.org
8 siblings, 0 replies; 10+ messages in thread
From: rguenth at gcc dot gnu.org @ 2013-12-06 12:40 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58137
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|--- |4.8.3
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2013-12-06 12:40 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-08-12 13:33 [Bug tree-optimization/58137] New: [trunk, ICE] full unroll + AVX2 vectorization kirill.yukhin at intel dot com
2013-08-12 13:35 ` [Bug tree-optimization/58137] " kirill.yukhin at intel dot com
2013-08-12 19:58 ` bernd.edlinger at hotmail dot de
2013-08-12 23:54 ` bernd.edlinger at hotmail dot de
2013-08-13 10:53 ` kirill.yukhin at intel dot com
2013-08-20 11:03 ` bernd.edlinger at hotmail dot de
2013-09-05 12:45 ` rguenth at gcc dot gnu.org
2013-09-05 12:59 ` rguenth at gcc dot gnu.org
2013-12-06 12:39 ` rguenth at gcc dot gnu.org
2013-12-06 12:40 ` 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).