aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-vectorizer.h
diff options
context:
space:
mode:
authorSergey Ostanevich <sergos.gnu@gmail.com>2013-11-28 07:54:58 +0000
committerKirill Yukhin <kyukhin@gcc.gnu.org>2013-11-28 07:54:58 +0000
commit8b5e12023b56dfc83c037053612b08f5ee7eac61 (patch)
treebea8238b89ef5aab5339621f7b4ebff4f5333c76 /gcc/tree-vectorizer.h
parentd0da87f3783422d0c4b952f7f6d373e6d51a84d3 (diff)
downloadgcc-8b5e12023b56dfc83c037053612b08f5ee7eac61.zip
gcc-8b5e12023b56dfc83c037053612b08f5ee7eac61.tar.gz
gcc-8b5e12023b56dfc83c037053612b08f5ee7eac61.tar.bz2
common.opt: Introduced a new option -fsimd-cost-model.
gcc/ * common.opt: Introduced a new option -fsimd-cost-model. * doc/invoke.texi: Introduced a new openmp-simd warning and a new -fsimd-cost-model option. * tree-vectorizer.h (unlimited_cost_model): Interface updated to rely on the particular loop info. * tree-vect-data-refs.c (vect_peeling_hash_insert): Ditto. (vect_peeling_hash_choose_best_peeling): Ditto. (vect_enhance_data_refs_alignment): Ditto. * tree-vect-slp.c (vect_slp_analyze_bb_1): Ditto. * tree-vect-loop.c (vect_estimate_min_profitable_iters): Ditto plus added openmp-simd warining. gcc/c-family/ * c.opt (Wopenmp-simd): New. gcc/fortran/ * lang.opt (Wopenmp-simd): New. From-SVN: r205475
Diffstat (limited to 'gcc/tree-vectorizer.h')
-rw-r--r--gcc/tree-vectorizer.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/gcc/tree-vectorizer.h b/gcc/tree-vectorizer.h
index 39d7d41..4427d6a 100644
--- a/gcc/tree-vectorizer.h
+++ b/gcc/tree-vectorizer.h
@@ -915,9 +915,12 @@ known_alignment_for_access_p (struct data_reference *data_ref_info)
/* Return true if the vect cost model is unlimited. */
static inline bool
-unlimited_cost_model ()
+unlimited_cost_model (loop_p loop)
{
- return flag_vect_cost_model == VECT_COST_MODEL_UNLIMITED;
+ if (loop != NULL && loop->force_vect
+ && flag_simd_cost_model != VECT_COST_MODEL_DEFAULT)
+ return flag_simd_cost_model == VECT_COST_MODEL_UNLIMITED;
+ return (flag_vect_cost_model == VECT_COST_MODEL_UNLIMITED);
}
/* Source location */