aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-phiopt.c
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2019-10-10 14:02:25 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2019-10-10 14:02:25 +0000
commit247afa98ba2512c7d90f3e9e05af41067ef756a3 (patch)
treeab4b351127d672cf2cd574866297570353c15fea /gcc/tree-ssa-phiopt.c
parent019f36a648fd3f35e562eb7ddd3ff6393b30b4c7 (diff)
downloadgcc-247afa98ba2512c7d90f3e9e05af41067ef756a3.zip
gcc-247afa98ba2512c7d90f3e9e05af41067ef756a3.tar.gz
gcc-247afa98ba2512c7d90f3e9e05af41067ef756a3.tar.bz2
re PR middle-end/92046 (Command line options (that are per-functions) are affecting --params which are global.)
2019-10-10 Richard Biener <rguenther@suse.de> PR middle-end/92046 * opts.c (finish_options): Do not influence global --params from options that are adjustable per function. * tree-vect-data-refs.c (vect_enhance_data_refs_alignment): Apply --param adjustment based on active cost-model. * tree-ssa-phiopt.c (cond_if_else_store_replacement): Disable further store-sinking when vectorization or if-conversion are not enabled. From-SVN: r276807
Diffstat (limited to 'gcc/tree-ssa-phiopt.c')
-rw-r--r--gcc/tree-ssa-phiopt.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/tree-ssa-phiopt.c b/gcc/tree-ssa-phiopt.c
index b64bde6..38bb8b2 100644
--- a/gcc/tree-ssa-phiopt.c
+++ b/gcc/tree-ssa-phiopt.c
@@ -2467,7 +2467,11 @@ cond_if_else_store_replacement (basic_block then_bb, basic_block else_bb,
then_assign, else_assign);
}
- if (MAX_STORES_TO_SINK == 0)
+ /* If either vectorization or if-conversion is disabled then do
+ not sink any stores. */
+ if (MAX_STORES_TO_SINK == 0
+ || (!flag_tree_loop_vectorize && !flag_tree_slp_vectorize)
+ || !flag_tree_loop_if_convert)
return false;
/* Find data references. */