From 26d476cd52837de43ed783288af5d4d68bd93c19 Mon Sep 17 00:00:00 2001 From: James Greenhalgh Date: Tue, 1 Aug 2017 12:59:05 +0000 Subject: [PATCH] Remove flag_tree_vectorize gcc/ * common.opt (ftree-vectorize): No longer set flag_tree_vectorize. (ftree-loop-vectorize): Set as EnabledBy ftree-vectorize. (ftree-slp-vectorize): Likewise. * omp-expand (expand_omp_simd): Remove flag_tree_vectorize, as it can no longer be set independent of flag_tree_loop_vectorize. * omp-general.c (emp_max_vf): Likewise. * opts.c (enable_fdo_optimizations): Remove references to flag_tree_vectorize, these are now implicit. (common_handle_option): Remove handling for OPT_ftree_vectorize, and leave it for the options machinery. From-SVN: r250774 --- gcc/ChangeLog | 13 +++++++++++++ gcc/common.opt | 7 ++++--- gcc/omp-expand.c | 3 +-- gcc/omp-general.c | 3 +-- gcc/opts.c | 12 ++++-------- 5 files changed, 23 insertions(+), 15 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 7846790781a..d5fc875705e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,16 @@ +2017-08-01 James Greenhalgh + + * common.opt (ftree-vectorize): No longer set flag_tree_vectorize. + (ftree-loop-vectorize): Set as EnabledBy ftree-vectorize. + (ftree-slp-vectorize): Likewise. + * omp-expand (expand_omp_simd): Remove flag_tree_vectorize, as it + can no longer be set independent of flag_tree_loop_vectorize. + * omp-general.c (emp_max_vf): Likewise. + * opts.c (enable_fdo_optimizations): Remove references to + flag_tree_vectorize, these are now implicit. + (common_handle_option): Remove handling for OPT_ftree_vectorize, + and leave it for the options machinery. + 2017-08-01 Martin Liska PR middle-end/70140 diff --git a/gcc/common.opt b/gcc/common.opt index 78cfa568a95..1cb1c83d306 100644 --- a/gcc/common.opt +++ b/gcc/common.opt @@ -2691,8 +2691,9 @@ fvar-tracking-uninit Common Report Var(flag_var_tracking_uninit) PerFunction Perform variable tracking and also tag variables that are uninitialized. +; Alias to enable both -ftree-loop-vectorize and -ftree-slp-vectorize. ftree-vectorize -Common Report Var(flag_tree_vectorize) Optimization +Common Report Optimization Enable vectorization on trees. ftree-vectorizer-verbose= @@ -2700,11 +2701,11 @@ Common Joined RejectNegative Ignore Does nothing. Preserved for backward compatibility. ftree-loop-vectorize -Common Report Var(flag_tree_loop_vectorize) Optimization +Common Report Var(flag_tree_loop_vectorize) Optimization EnabledBy(ftree-vectorize) Enable loop vectorization on trees. ftree-slp-vectorize -Common Report Var(flag_tree_slp_vectorize) Optimization +Common Report Var(flag_tree_slp_vectorize) Optimization EnabledBy(ftree-vectorize) Enable basic block vectorization (SLP) on trees. fvect-cost-model= diff --git a/gcc/omp-expand.c b/gcc/omp-expand.c index d6755cd71ee..970e04f71f8 100644 --- a/gcc/omp-expand.c +++ b/gcc/omp-expand.c @@ -4851,8 +4851,7 @@ expand_omp_simd (struct omp_region *region, struct omp_for_data *fd) /* If not -fno-tree-loop-vectorize, hint that we want to vectorize the loop. */ if ((flag_tree_loop_vectorize - || (!global_options_set.x_flag_tree_loop_vectorize - && !global_options_set.x_flag_tree_vectorize)) + || !global_options_set.x_flag_tree_loop_vectorize) && flag_tree_loop_optimize && loop->safelen > 1) { diff --git a/gcc/omp-general.c b/gcc/omp-general.c index 9a5ed88e2d6..ed94668559b 100644 --- a/gcc/omp-general.c +++ b/gcc/omp-general.c @@ -429,8 +429,7 @@ omp_max_vf (void) || optimize_debug || !flag_tree_loop_optimize || (!flag_tree_loop_vectorize - && (global_options_set.x_flag_tree_loop_vectorize - || global_options_set.x_flag_tree_vectorize))) + && global_options_set.x_flag_tree_loop_vectorize)) return 1; int vf = 1; diff --git a/gcc/opts.c b/gcc/opts.c index 2f9a6380fe1..989cc6b6dec 100644 --- a/gcc/opts.c +++ b/gcc/opts.c @@ -1477,11 +1477,9 @@ enable_fdo_optimizations (struct gcc_options *opts, opts->x_flag_unswitch_loops = value; if (!opts_set->x_flag_gcse_after_reload) opts->x_flag_gcse_after_reload = value; - if (!opts_set->x_flag_tree_loop_vectorize - && !opts_set->x_flag_tree_vectorize) + if (!opts_set->x_flag_tree_loop_vectorize) opts->x_flag_tree_loop_vectorize = value; - if (!opts_set->x_flag_tree_slp_vectorize - && !opts_set->x_flag_tree_vectorize) + if (!opts_set->x_flag_tree_slp_vectorize) opts->x_flag_tree_slp_vectorize = value; if (!opts_set->x_flag_vect_cost_model) opts->x_flag_vect_cost_model = VECT_COST_MODEL_DYNAMIC; @@ -2236,10 +2234,8 @@ common_handle_option (struct gcc_options *opts, break; case OPT_ftree_vectorize: - if (!opts_set->x_flag_tree_loop_vectorize) - opts->x_flag_tree_loop_vectorize = value; - if (!opts_set->x_flag_tree_slp_vectorize) - opts->x_flag_tree_slp_vectorize = value; + /* Automatically sets -ftree-loop-vectorize and + -ftree-slp-vectorize. Nothing more to do here. */ break; case OPT_fshow_column: dc->show_column = value; -- 2.30.2