2007-07-09 Uros Bizjak <ubizjak@gmail.com>
+ PR target/27855
+ * doc/invoke.texi: Add ftree-reassoc flag.
+ * common.opt (ftree-reassoc): New flag.
+ * tree-ssa-reassoc.c (gate_tree_ssa_reassoc): New static function.
+ (struct tree_opt_pass pass_reassoc): Use gate_tree_ssa_reassoc.
+
+2007-07-09 Uros Bizjak <ubizjak@gmail.com>
+
PR tree-optimization/32681
* tree-if-conv.c (find_phi_replacement_condition): Use the condition
saved in second_edge->aux when first_bb is a loop header.
2007-06-08 Harsha Jagasia <harsha.jagasia@amd.com>
Tony Linthicum <tony.linthicum@amd.com>
- * doc/extend.texi: Add fvect-cost-model flag.
+ * doc/invoke.texi: Add fvect-cost-model flag.
* common.opt (fvect-cost-model): New flag.
* tree-vectorizer.c (new_stmt_vec_info): Initialize inside and outside
cost fields in stmt_vec_info struct for STMT.
Common Report Var(flag_tree_pre) Optimization
Enable SSA-PRE optimization on trees
+ftree-reassoc
+Common Report Var(flag_tree_reassoc) Init(1) Optimization
+Enable reassociation on tree level
+
ftree-salias
Common Report Var(flag_tree_salias) Optimization
Perform structural alias analysis
-fstrict-aliasing -fstrict-overflow -ftracer -fthread-jumps @gol
-funroll-all-loops -funroll-loops -fpeel-loops @gol
-fsplit-ivs-in-unroller -funswitch-loops @gol
--fvariable-expansion-in-unroller @gol
+-fvariable-expansion-in-unroller -ftree-reassoc @gol
-ftree-pre -ftree-ccp -ftree-dce -ftree-loop-optimize @gol
-ftree-loop-linear -ftree-loop-im -ftree-loop-ivcanon -fivopts @gol
-fcheck-data-deps @gol
@item -freschedule-modulo-scheduled-loops
@opindex fscheduling-in-modulo-scheduled-loops
-The modulo scheduling comes before the traditional scheduling, if a loop was modulo scheduled
-we may want to prevent the later scheduling passes from changing its schedule, we use this
-option to control that.
+The modulo scheduling comes before the traditional scheduling, if a loop
+was modulo scheduled we may want to prevent the later scheduling passes
+from changing its schedule, we use this option to control that.
@item -fcaller-saves
@opindex fcaller-saves
Enabled at levels @option{-O2}, @option{-O3}, @option{-Os}.
+@item -ftree-reassoc
+Perform Reassociation on trees This flag is enabled by default
+at @option{-O} and higher.
+
@item -ftree-pre
Perform Partial Redundancy Elimination (PRE) on trees. This flag is
enabled by default at @option{-O2} and @option{-O3}.
return 0;
}
+static bool
+gate_tree_ssa_reassoc (void)
+{
+ return flag_tree_reassoc != 0;
+}
+
struct tree_opt_pass pass_reassoc =
{
"reassoc", /* name */
- NULL, /* gate */
- execute_reassoc, /* execute */
+ gate_tree_ssa_reassoc, /* gate */
+ execute_reassoc, /* execute */
NULL, /* sub */
NULL, /* next */
0, /* static_pass_number */
- TV_TREE_REASSOC, /* tv_id */
+ TV_TREE_REASSOC, /* tv_id */
PROP_cfg | PROP_ssa | PROP_alias, /* properties_required */
0, /* properties_provided */
0, /* properties_destroyed */