diff options
author | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-08-29 11:39:04 +0000 |
---|---|---|
committer | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-08-29 11:39:04 +0000 |
commit | 4612996b23ab6dfd0393b3f94bda2c6d8c4a350b (patch) | |
tree | d76c6ee971e06837b56e7b4c042ff8fa4b153ecc /gcc/opts.c | |
parent | 5afe38fe4c359548ac69898c28c2511a6f341d96 (diff) | |
download | gcc-4612996b23ab6dfd0393b3f94bda2c6d8c4a350b.tar.gz |
* doc/invoke.texi (-fipa-cp): Enabled by default at -O2/-Os/-O3
(-fipa-cp-clone): Enabled by default at -O3.
* opts.c (decode_options): Enable ipa-cp at -O2, ipa-cp-clone at -O3;
make ipa-cp-clone to imply ipa-cp; disable cloning at -Os.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@139762 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/opts.c')
-rw-r--r-- | gcc/opts.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/gcc/opts.c b/gcc/opts.c index 8c46dfa9cf7..f64d74736b2 100644 --- a/gcc/opts.c +++ b/gcc/opts.c @@ -955,7 +955,8 @@ decode_options (unsigned int argc, const char **argv) flag_tree_vrp = opt2; flag_tree_builtin_call_dce = opt2; flag_tree_pre = opt2; - flag_tree_switch_conversion = 1; + flag_tree_switch_conversion = 1; + flag_ipa_cp = opt2; /* Allow more virtual operators to increase alias precision. */ @@ -973,6 +974,9 @@ decode_options (unsigned int argc, const char **argv) flag_unswitch_loops = opt3; flag_gcse_after_reload = opt3; flag_tree_vectorize = opt3; + flag_ipa_cp_clone = opt3; + if (flag_ipa_cp_clone) + flag_ipa_cp = 1; /* Allow even more virtual operators. Max-aliased-vops was set above for -O2, so don't reset it unless we are at -O3. */ @@ -1028,6 +1032,9 @@ decode_options (unsigned int argc, const char **argv) /* We want to crossjump as much as possible. */ set_param_value ("min-crossjump-insns", 1); + + /* Do not perform clonning in ipcp. */ + flag_ipa_cp_clone = 0; } else set_param_value ("min-crossjump-insns", initial_min_crossjump_insns); |