aboutsummaryrefslogtreecommitdiff
path: root/gcc/opts.c
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2008-08-29 13:39:04 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2008-08-29 11:39:04 +0000
commitfcbe056b117ca90358096b0dc75b0072a5722580 (patch)
treed76c6ee971e06837b56e7b4c042ff8fa4b153ecc /gcc/opts.c
parentc6f7cfc15e7480f86aa3e4d407932f38fd635c89 (diff)
downloadgcc-fcbe056b117ca90358096b0dc75b0072a5722580.zip
gcc-fcbe056b117ca90358096b0dc75b0072a5722580.tar.gz
gcc-fcbe056b117ca90358096b0dc75b0072a5722580.tar.bz2
invoke.texi (-fipa-cp): Enabled by default at -O2/-Os/-O3
* 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. From-SVN: r139762
Diffstat (limited to 'gcc/opts.c')
-rw-r--r--gcc/opts.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/gcc/opts.c b/gcc/opts.c
index 8c46dfa..f64d747 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);