diff options
author | Ira Rosen <irar@il.ibm.com> | 2012-02-05 05:58:18 +0000 |
---|---|---|
committer | Ira Rosen <irar@gcc.gnu.org> | 2012-02-05 05:58:18 +0000 |
commit | 24ee13842edcacff46a4f06d3b469d0bdc6d0a73 (patch) | |
tree | 725e87b3955717cd08b8ed5276d6dcea3a4a8724 /gcc/tree-vectorizer.h | |
parent | 3bbdbe67bc710e5758250df8bfb995c7f0d6b3b5 (diff) | |
download | gcc-24ee13842edcacff46a4f06d3b469d0bdc6d0a73.zip gcc-24ee13842edcacff46a4f06d3b469d0bdc6d0a73.tar.gz gcc-24ee13842edcacff46a4f06d3b469d0bdc6d0a73.tar.bz2 |
re PR tree-optimization/52091 (ICE: verify_gimple failed)
PR tree-optimization/52091
* tree-vectorizer.h (vect_is_simple_use): Add an argument.
(vect_is_simple_use_1): Likewise.
* tree-vect-loop.c (vectorizable_reduction): Update calls
to vect_is_simple_use_1 and vect_is_simple_use.
(vectorizable_live_operation): Likewise.
* tree-vect-patterns.c (widened_name_p,
vect_recog_vector_vector_shift_pattern, check_bool_pattern):
Likewise.
* tree-vect-stmts.c (process_use, vect_get_vec_def_for_operand,
vectorizable_call, vectorizable_conversion,
vectorizable_assignment, vectorizable_shift,
vectorizable_operation, vectorizable_store, vectorizable_load):
Likewise.
(vect_is_simple_cond): Add an argument, pass it to
vect_is_simple_use_1.
(vectorizable_condition): Update calls to vect_is_simple_cond,
vect_is_simple_use.
(vect_is_simple_use): Add an argument, the statement in which
OPERAND is used. Check that if OPERAND's def stmt is a double
reduction phi node, the use is a phi node too.
(vect_is_simple_use_1): Add an argument, pass it to
vect_is_simple_use.
* tree-vect-slp.c (vect_get_and_check_slp_defs): Update a call
to vect_is_simple_use.
From-SVN: r183902
Diffstat (limited to 'gcc/tree-vectorizer.h')
-rw-r--r-- | gcc/tree-vectorizer.h | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/gcc/tree-vectorizer.h b/gcc/tree-vectorizer.h index cccfaff..35420ba 100644 --- a/gcc/tree-vectorizer.h +++ b/gcc/tree-vectorizer.h @@ -1,5 +1,5 @@ /* Vectorizer - Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 + Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc. Contributed by Dorit Naishlos <dorit@il.ibm.com> @@ -808,9 +808,11 @@ extern bool vect_can_advance_ivs_p (loop_vec_info); extern unsigned int current_vector_size; extern tree get_vectype_for_scalar_type (tree); extern tree get_same_sized_vectype (tree, tree); -extern bool vect_is_simple_use (tree, loop_vec_info, bb_vec_info, gimple *, +extern bool vect_is_simple_use (tree, gimple, loop_vec_info, + bb_vec_info, gimple *, tree *, enum vect_def_type *); -extern bool vect_is_simple_use_1 (tree, loop_vec_info, bb_vec_info, gimple *, +extern bool vect_is_simple_use_1 (tree, gimple, loop_vec_info, + bb_vec_info, gimple *, tree *, enum vect_def_type *, tree *); extern bool supportable_widening_operation (enum tree_code, gimple, tree, tree, tree *, tree *, enum tree_code *, |