diff options
author | Sergey Ostanevich <sergos.gnu@gmail.com> | 2013-11-28 07:54:58 +0000 |
---|---|---|
committer | Kirill Yukhin <kyukhin@gcc.gnu.org> | 2013-11-28 07:54:58 +0000 |
commit | 8b5e12023b56dfc83c037053612b08f5ee7eac61 (patch) | |
tree | bea8238b89ef5aab5339621f7b4ebff4f5333c76 /gcc/tree-vect-loop.c | |
parent | d0da87f3783422d0c4b952f7f6d373e6d51a84d3 (diff) | |
download | gcc-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-vect-loop.c')
-rw-r--r-- | gcc/tree-vect-loop.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/tree-vect-loop.c b/gcc/tree-vect-loop.c index 42a78de..25bf334 100644 --- a/gcc/tree-vect-loop.c +++ b/gcc/tree-vect-loop.c @@ -2716,7 +2716,7 @@ vect_estimate_min_profitable_iters (loop_vec_info loop_vinfo, void *target_cost_data = LOOP_VINFO_TARGET_COST_DATA (loop_vinfo); /* Cost model disabled. */ - if (unlimited_cost_model ()) + if (unlimited_cost_model (LOOP_VINFO_LOOP (loop_vinfo))) { dump_printf_loc (MSG_NOTE, vect_location, "cost model disabled.\n"); *ret_min_profitable_niters = 0; @@ -2949,6 +2949,10 @@ vect_estimate_min_profitable_iters (loop_vec_info loop_vinfo, /* vector version will never be profitable. */ else { + if (LOOP_VINFO_LOOP (loop_vinfo)->force_vect) + warning_at (vect_location, OPT_Wopenmp_simd, "vectorization " + "did not happen for a simd loop"); + if (dump_enabled_p ()) dump_printf_loc (MSG_MISSED_OPTIMIZATION, vect_location, "cost model: the vector iteration cost = %d " |