diff options
author | Richard Guenther <rguenther@suse.de> | 2011-09-12 06:01:15 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2011-09-12 06:01:15 +0000 |
commit | ba02d3bcce6245132ed45160de2bd12ec3a4204b (patch) | |
tree | 119638fa11d90259709376f446de7ae86562ed34 /gcc/tree-vect-patterns.c | |
parent | 79196217fb0825fd17728c6f54e2719d9163939e (diff) | |
download | gcc-ba02d3bcce6245132ed45160de2bd12ec3a4204b.zip gcc-ba02d3bcce6245132ed45160de2bd12ec3a4204b.tar.gz gcc-ba02d3bcce6245132ed45160de2bd12ec3a4204b.tar.bz2 |
re PR middle-end/50343 (FAIL: gfortran.dg/graphite/id-22.f)
2011-09-12 Richard Guenther <rguenther@suse.de>
PR tree-optimization/50343
* tree-vect-patterns.c (vect_recog_dot_prod_pattern): Check
that the reduction is over an SSA name before checking its
definition.
From-SVN: r178775
Diffstat (limited to 'gcc/tree-vect-patterns.c')
-rw-r--r-- | gcc/tree-vect-patterns.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/tree-vect-patterns.c b/gcc/tree-vect-patterns.c index 0d78882..7fc107c 100644 --- a/gcc/tree-vect-patterns.c +++ b/gcc/tree-vect-patterns.c @@ -256,6 +256,8 @@ vect_recog_dot_prod_pattern (VEC (gimple, heap) **stmts, tree *type_in, we know that oprnd1 is the reduction variable (defined by a loop-header phi), and oprnd0 is an ssa-name defined by a stmt in the loop body. Left to check that oprnd0 is defined by a (widen_)mult_expr */ + if (TREE_CODE (oprnd0) != SSA_NAME) + return NULL; prod_type = half_type; stmt = SSA_NAME_DEF_STMT (oprnd0); |