diff options
author | Uros Bizjak <uros@gcc.gnu.org> | 2007-07-09 21:22:03 +0200 |
---|---|---|
committer | Uros Bizjak <uros@gcc.gnu.org> | 2007-07-09 21:22:03 +0200 |
commit | 13c594155d94f64e49681064ddb1a9e4e02a6562 (patch) | |
tree | a7d61234c913d65d41ef83d40ec2e713ee5e9f49 /gcc/tree-ssa-reassoc.c | |
parent | 15e25df5c772b13a68a4ced2fb466cd16eaf36d4 (diff) | |
download | gcc-13c594155d94f64e49681064ddb1a9e4e02a6562.zip gcc-13c594155d94f64e49681064ddb1a9e4e02a6562.tar.gz gcc-13c594155d94f64e49681064ddb1a9e4e02a6562.tar.bz2 |
re PR target/27855 (reassociation causes the RA to be confused)
PR target/27855
* doc/extend.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.
From-SVN: r126491
Diffstat (limited to 'gcc/tree-ssa-reassoc.c')
-rw-r--r-- | gcc/tree-ssa-reassoc.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/gcc/tree-ssa-reassoc.c b/gcc/tree-ssa-reassoc.c index 448107b..a38290b 100644 --- a/gcc/tree-ssa-reassoc.c +++ b/gcc/tree-ssa-reassoc.c @@ -1476,15 +1476,21 @@ execute_reassoc (void) 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 */ |