public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug tree-optimization/56778] New: ICE on several benchmarks after r196775.
@ 2013-03-29 12:54 ysrumyan at gmail dot com
2013-04-02 9:04 ` [Bug tree-optimization/56778] " rguenth at gcc dot gnu.org
` (4 more replies)
0 siblings, 5 replies; 6+ messages in thread
From: ysrumyan at gmail dot com @ 2013-03-29 12:54 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56778
Bug #: 56778
Summary: ICE on several benchmarks after r196775.
Classification: Unclassified
Product: gcc
Version: 4.9.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: tree-optimization
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: ysrumyan@gmail.com
We got ICE on several benchmarks that can be reproduced on the simple
test-case:
typedef struct {
float a,b,c;
} S;
S * arr[100];
void bar (float *in[], int n)
{
int i;
for (i=0; i<n; i++)
(*in)[i] = -arr[i]->b;
}
and compile on x86 with following options:
-march=core-avx2 -O3
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug tree-optimization/56778] ICE on several benchmarks after r196775.
2013-03-29 12:54 [Bug tree-optimization/56778] New: ICE on several benchmarks after r196775 ysrumyan at gmail dot com
@ 2013-04-02 9:04 ` rguenth at gcc dot gnu.org
2013-04-02 9:04 ` [Bug tree-optimization/56778] [4.9 Regression] " rguenth at gcc dot gnu.org
` (3 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: rguenth at gcc dot gnu.org @ 2013-04-02 9:04 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56778
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |ASSIGNED
Last reconfirmed| |2013-04-02
AssignedTo|unassigned at gcc dot |rguenth at gcc dot gnu.org
|gnu.org |
Ever Confirmed|0 |1
--- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> 2013-04-02 09:04:15 UTC ---
Confirmed. I will have a look (there is a not properly removed stmt with
still has active immediate uses).
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug tree-optimization/56778] [4.9 Regression] ICE on several benchmarks after r196775.
2013-03-29 12:54 [Bug tree-optimization/56778] New: ICE on several benchmarks after r196775 ysrumyan at gmail dot com
2013-04-02 9:04 ` [Bug tree-optimization/56778] " rguenth at gcc dot gnu.org
@ 2013-04-02 9:04 ` rguenth at gcc dot gnu.org
2013-04-02 11:19 ` rguenth at gcc dot gnu.org
` (2 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: rguenth at gcc dot gnu.org @ 2013-04-02 9:04 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56778
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|--- |4.9.0
Summary|ICE on several benchmarks |[4.9 Regression] ICE on
|after r196775. |several benchmarks after
| |r196775.
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug tree-optimization/56778] [4.9 Regression] ICE on several benchmarks after r196775.
2013-03-29 12:54 [Bug tree-optimization/56778] New: ICE on several benchmarks after r196775 ysrumyan at gmail dot com
2013-04-02 9:04 ` [Bug tree-optimization/56778] " rguenth at gcc dot gnu.org
2013-04-02 9:04 ` [Bug tree-optimization/56778] [4.9 Regression] " rguenth at gcc dot gnu.org
@ 2013-04-02 11:19 ` rguenth at gcc dot gnu.org
2013-04-02 11:27 ` rguenth at gcc dot gnu.org
2013-04-02 13:31 ` rguenth at gcc dot gnu.org
4 siblings, 0 replies; 6+ messages in thread
From: rguenth at gcc dot gnu.org @ 2013-04-02 11:19 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56778
--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> 2013-04-02 11:19:35 UTC ---
The issue is that gimple_seq_add_seq updates stmts added. But we update SSA
form _before_ adding the sequence into the IL stream:
/* End loop-exit-fixes after versioning. */
update_ssa (TODO_update_ssa);
if (cond_expr_stmt_list)
{
cond_exp_gsi = gsi_last_bb (condition_bb);
gsi_insert_seq_before (&cond_exp_gsi, cond_expr_stmt_list,
GSI_SAME_STMT);
}
gimplify.c has a function that does gimple_seq_add_seq_without_update.
There are two ways to fix this, one is to insert the sequence before
updating SSA form, another is to consistently use
gimple_seq_add_seq_without_update.
Or to make gimple_seq_add_seq not update stmts (sequences are inserted
later anyway, which can do the update). Not sure why it would make sense
at all to update stmt operands for sth not in the IL ...
Well. I'm going for the first.
Which doesn't fix it because we create an alias-check for a load of a
load appearantly where the latter is not loop invariant. I presume
this is GATHER support, and eventually the DDR mangling in data-ref
analysis I removed did avoid this to happen.
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug tree-optimization/56778] [4.9 Regression] ICE on several benchmarks after r196775.
2013-03-29 12:54 [Bug tree-optimization/56778] New: ICE on several benchmarks after r196775 ysrumyan at gmail dot com
` (2 preceding siblings ...)
2013-04-02 11:19 ` rguenth at gcc dot gnu.org
@ 2013-04-02 11:27 ` rguenth at gcc dot gnu.org
2013-04-02 13:31 ` rguenth at gcc dot gnu.org
4 siblings, 0 replies; 6+ messages in thread
From: rguenth at gcc dot gnu.org @ 2013-04-02 11:27 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56778
--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> 2013-04-02 11:27:09 UTC ---
I have a fix.
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug tree-optimization/56778] [4.9 Regression] ICE on several benchmarks after r196775.
2013-03-29 12:54 [Bug tree-optimization/56778] New: ICE on several benchmarks after r196775 ysrumyan at gmail dot com
` (3 preceding siblings ...)
2013-04-02 11:27 ` rguenth at gcc dot gnu.org
@ 2013-04-02 13:31 ` rguenth at gcc dot gnu.org
4 siblings, 0 replies; 6+ messages in thread
From: rguenth at gcc dot gnu.org @ 2013-04-02 13:31 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56778
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution| |FIXED
--- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> 2013-04-02 13:31:40 UTC ---
Author: rguenth
Date: Tue Apr 2 13:31:05 2013
New Revision: 197355
URL: http://gcc.gnu.org/viewcvs?rev=197355&root=gcc&view=rev
Log:
2013-04-02 Richard Biener <rguenther@suse.de>
PR tree-optimization/56778
* tree-vect-data-refs.c (vect_analyze_data_ref_dependence):
Runtime alias tests are not supported for gather loads.
* tree-vect-loop-manip.c (vect_loop_versioning): Insert
stmts referenced from SSA operands before updating SSA form.
* gcc.dg/torture/pr56778.c: New testcase.
Added:
trunk/gcc/testsuite/gcc.dg/torture/pr56778.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-vect-data-refs.c
trunk/gcc/tree-vect-loop-manip.c
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2013-04-02 13:31 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-03-29 12:54 [Bug tree-optimization/56778] New: ICE on several benchmarks after r196775 ysrumyan at gmail dot com
2013-04-02 9:04 ` [Bug tree-optimization/56778] " rguenth at gcc dot gnu.org
2013-04-02 9:04 ` [Bug tree-optimization/56778] [4.9 Regression] " rguenth at gcc dot gnu.org
2013-04-02 11:19 ` rguenth at gcc dot gnu.org
2013-04-02 11:27 ` rguenth at gcc dot gnu.org
2013-04-02 13:31 ` 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).