diff options
author | Dorit Nuzman <dorit@il.ibm.com> | 2007-04-18 07:55:34 +0000 |
---|---|---|
committer | Dorit Nuzman <dorit@gcc.gnu.org> | 2007-04-18 07:55:34 +0000 |
commit | 8cf81ddffd26ef1262e2d93f7232d72b92cd72be (patch) | |
tree | 0ad09efa2980fbea19fc13f434aa01aa5eac044f /gcc/tree-vectorizer.c | |
parent | 7b715e2e18f941bef4c263de3978c3050cabb60a (diff) | |
download | gcc-8cf81ddffd26ef1262e2d93f7232d72b92cd72be.zip gcc-8cf81ddffd26ef1262e2d93f7232d72b92cd72be.tar.gz gcc-8cf81ddffd26ef1262e2d93f7232d72b92cd72be.tar.bz2 |
tree-vect-analyze.c (process_use): New function.
* tree-vect-analyze.c (process_use): New function.
(vect_mark_stmts_to_be_vectorized): Factor out code to process_use.
Check phis in all bbs.
* tree-vectorizer.c (vect_is_simple_use): Remove a no longer relavant
assert.
From-SVN: r123943
Diffstat (limited to 'gcc/tree-vectorizer.c')
-rw-r--r-- | gcc/tree-vectorizer.c | 12 |
1 files changed, 1 insertions, 11 deletions
diff --git a/gcc/tree-vectorizer.c b/gcc/tree-vectorizer.c index b0aedf7..212b584 100644 --- a/gcc/tree-vectorizer.c +++ b/gcc/tree-vectorizer.c @@ -1714,15 +1714,6 @@ vect_is_simple_use (tree operand, loop_vec_info loop_vinfo, tree *def_stmt, return false; } - /* stmts inside the loop that have been identified as performing - a reduction operation cannot have uses in the loop. */ - if (*dt == vect_reduction_def && TREE_CODE (*def_stmt) != PHI_NODE) - { - if (vect_print_dump_info (REPORT_DETAILS)) - fprintf (vect_dump, "reduction used in loop."); - return false; - } - if (vect_print_dump_info (REPORT_DETAILS)) fprintf (vect_dump, "type of def: %d.",*dt); @@ -1731,12 +1722,11 @@ vect_is_simple_use (tree operand, loop_vec_info loop_vinfo, tree *def_stmt, case PHI_NODE: *def = PHI_RESULT (*def_stmt); gcc_assert (*dt == vect_induction_def || *dt == vect_reduction_def - || *dt == vect_invariant_def); + || *dt == vect_invariant_def); break; case GIMPLE_MODIFY_STMT: *def = GIMPLE_STMT_OPERAND (*def_stmt, 0); - gcc_assert (*dt == vect_loop_def || *dt == vect_invariant_def); break; default: |