diff options
author | Ira Rosen <irar@il.ibm.com> | 2010-06-07 09:12:32 +0000 |
---|---|---|
committer | Ira Rosen <irar@gcc.gnu.org> | 2010-06-07 09:12:32 +0000 |
commit | 35e1a5e7cf85b08634a46b08e76d28ced021aff9 (patch) | |
tree | 8795ce881dcce2d97198c58aa7cb9c8a103a4f24 /gcc/tree-vectorizer.h | |
parent | 81c566c2fa32ad31b8b22f7ada161778150e51d1 (diff) | |
download | gcc-35e1a5e7cf85b08634a46b08e76d28ced021aff9.zip gcc-35e1a5e7cf85b08634a46b08e76d28ced021aff9.tar.gz gcc-35e1a5e7cf85b08634a46b08e76d28ced021aff9.tar.bz2 |
tm.texi (TARGET_VECTORIZE_BUILTIN_VECTORIZATION_COST): Update documentation.
* doc/tm.texi (TARGET_VECTORIZE_BUILTIN_VECTORIZATION_COST): Update
documentation.
* targhooks.c (default_builtin_vectorization_cost): New function.
* targhooks.h (default_builtin_vectorization_cost): Declare.
* target.h (enum vect_cost_for_stmt): Define.
(builtin_vectorization_cost): Change argument and comment.
* tree-vectorizer.h: Remove cost model macros.
* tree-vect-loop.c: Include target.h.
(vect_get_cost): New function.
(vect_estimate_min_profitable_iters): Replace cost model macros with
calls to vect_get_cost.
(vect_model_reduction_cost, vect_model_induction_cost): Likewise.
* target-def.h (TARGET_VECTORIZE_BUILTIN_VECTORIZATION_COST): Add
default implementation.
* tree-vect-stmts.c (cost_for_stmt): Replace cost model macros with
calls to target hook builtin_vectorization_cost.
(vect_model_simple_cost, vect_model_store_cost, vect_model_load_cost):
Likewise.
* Makefile.in (tree-vect-loop.o): Add dependency on TARGET_H.
* config/spu/spu.c (spu_builtin_vectorization_cost): Replace with new
implementation to return costs.
* config/i386/i386.c (ix86_builtin_vectorization_cost): Likewise.
* config/spu/spu.h: Remove vectorizer cost model macros.
* config/i386/i386.h: Likewise.
* tree-vect-slp.c (vect_build_slp_tree): Replace cost model macro with
a call to target hook builtin_vectorization_cost.
From-SVN: r160360
Diffstat (limited to 'gcc/tree-vectorizer.h')
-rw-r--r-- | gcc/tree-vectorizer.h | 64 |
1 files changed, 0 insertions, 64 deletions
diff --git a/gcc/tree-vectorizer.h b/gcc/tree-vectorizer.h index 79fe6ab..11795d8 100644 --- a/gcc/tree-vectorizer.h +++ b/gcc/tree-vectorizer.h @@ -543,70 +543,6 @@ typedef struct _stmt_vec_info { #define PURE_SLP_STMT(S) ((S)->slp_type == pure_slp) #define STMT_SLP_TYPE(S) (S)->slp_type -/* These are some defines for the initial implementation of the vectorizer's - cost model. These will later be target specific hooks. */ - -/* Cost of conditional taken branch. */ -#ifndef TARG_COND_TAKEN_BRANCH_COST -#define TARG_COND_TAKEN_BRANCH_COST 3 -#endif - -/* Cost of conditional not taken branch. */ -#ifndef TARG_COND_NOT_TAKEN_BRANCH_COST -#define TARG_COND_NOT_TAKEN_BRANCH_COST 1 -#endif - -/* Cost of any scalar operation, excluding load and store. */ -#ifndef TARG_SCALAR_STMT_COST -#define TARG_SCALAR_STMT_COST 1 -#endif - -/* Cost of scalar load. */ -#ifndef TARG_SCALAR_LOAD_COST -#define TARG_SCALAR_LOAD_COST 1 -#endif - -/* Cost of scalar store. */ -#ifndef TARG_SCALAR_STORE_COST -#define TARG_SCALAR_STORE_COST 1 -#endif - -/* Cost of any vector operation, excluding load, store or vector to scalar - operation. */ -#ifndef TARG_VEC_STMT_COST -#define TARG_VEC_STMT_COST 1 -#endif - -/* Cost of vector to scalar operation. */ -#ifndef TARG_VEC_TO_SCALAR_COST -#define TARG_VEC_TO_SCALAR_COST 1 -#endif - -/* Cost of scalar to vector operation. */ -#ifndef TARG_SCALAR_TO_VEC_COST -#define TARG_SCALAR_TO_VEC_COST 1 -#endif - -/* Cost of aligned vector load. */ -#ifndef TARG_VEC_LOAD_COST -#define TARG_VEC_LOAD_COST 1 -#endif - -/* Cost of misaligned vector load. */ -#ifndef TARG_VEC_UNALIGNED_LOAD_COST -#define TARG_VEC_UNALIGNED_LOAD_COST 2 -#endif - -/* Cost of vector store. */ -#ifndef TARG_VEC_STORE_COST -#define TARG_VEC_STORE_COST 1 -#endif - -/* Cost of vector permutation. */ -#ifndef TARG_VEC_PERMUTE_COST -#define TARG_VEC_PERMUTE_COST 1 -#endif - /* The maximum number of intermediate steps required in multi-step type conversion. */ #define MAX_INTERM_CVT_STEPS 3 |