diff options
author | Cong Hou <congh@google.com> | 2014-04-24 20:20:44 -0400 |
---|---|---|
committer | Cong Hou <congh@gcc.gnu.org> | 2014-04-24 20:20:44 -0400 |
commit | 56f8faaeddc1962326641374cfd3888b00706dac (patch) | |
tree | 6b19b1e15052fb164e0c0ddbd02376c4a36692e4 /gcc/tree-vect-patterns.c | |
parent | 9beb6f2b1db928682f33b45ab5dffaaf9320d9f1 (diff) | |
download | gcc-56f8faaeddc1962326641374cfd3888b00706dac.zip gcc-56f8faaeddc1962326641374cfd3888b00706dac.tar.gz gcc-56f8faaeddc1962326641374cfd3888b00706dac.tar.bz2 |
re PR tree-optimization/60896 (ICE: in vect_get_vec_def_for_operand, at tree-vect-stmts.c:1449)
2014-04-24 Cong Hou <congh@google.com>
PR tree-optimization/60896
* tree-vect-patterns.c (vect_recog_dot_prod_pattern): Pick up
all statements in PATTERN_DEF_SEQ in recognized widen-mult pattern.
(vect_mark_pattern_stmts): Set the def type of all statements in
PATTERN_DEF_SEQ as vect_internal_def.
2014-04-24 Cong Hou <congh@google.com>
PR tree-optimization/60896
* g++.dg/vect/pr60896.cc: New test.
From-SVN: r209773
Diffstat (limited to 'gcc/tree-vect-patterns.c')
-rw-r--r-- | gcc/tree-vect-patterns.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/gcc/tree-vect-patterns.c b/gcc/tree-vect-patterns.c index 5daaf24..365cf01 100644 --- a/gcc/tree-vect-patterns.c +++ b/gcc/tree-vect-patterns.c @@ -392,6 +392,8 @@ vect_recog_dot_prod_pattern (vec<gimple> *stmts, tree *type_in, gcc_assert (STMT_VINFO_DEF_TYPE (stmt_vinfo) == vect_internal_def); oprnd00 = gimple_assign_rhs1 (stmt); oprnd01 = gimple_assign_rhs2 (stmt); + STMT_VINFO_PATTERN_DEF_SEQ (vinfo_for_stmt (last_stmt)) + = STMT_VINFO_PATTERN_DEF_SEQ (stmt_vinfo); } else { @@ -3065,8 +3067,7 @@ vect_mark_pattern_stmts (gimple orig_stmt, gimple pattern_stmt, } gimple_set_bb (def_stmt, gimple_bb (orig_stmt)); STMT_VINFO_RELATED_STMT (def_stmt_info) = orig_stmt; - STMT_VINFO_DEF_TYPE (def_stmt_info) - = STMT_VINFO_DEF_TYPE (orig_stmt_info); + STMT_VINFO_DEF_TYPE (def_stmt_info) = vect_internal_def; if (STMT_VINFO_VECTYPE (def_stmt_info) == NULL_TREE) STMT_VINFO_VECTYPE (def_stmt_info) = pattern_vectype; } |