summaryrefslogtreecommitdiff
path: root/gcc/opts.c
diff options
context:
space:
mode:
authordavidxl <davidxl@138bc75d-0d04-0410-961f-82ee72b054a4>2008-06-04 21:49:45 +0000
committerdavidxl <davidxl@138bc75d-0d04-0410-961f-82ee72b054a4>2008-06-04 21:49:45 +0000
commite6a23add8ced32740537095333313e2b2d51ad76 (patch)
treee298fb5d3a5ce2f2f94d42716feeeb493ca9e188 /gcc/opts.c
parentda08da6924795bffe4adc8e53feb53a3ff311ff7 (diff)
downloadgcc-e6a23add8ced32740537095333313e2b2d51ad76.tar.gz
2008-06-04 Xinliang David Li <davidxl@google.com>
* tree-call-cdce.c: New file. (cond_dead_built_in_calls): New static variable. (input_domain): New struct. (check_pow): New function. (check_builtin_call): Ditto. (check_target_format): Ditto. (is_call_dce_candidate): Ditto. (gen_one_condition): Ditto. (gen_conditions_for_domain): Ditto. (get_domain): Ditto. (gen_conditions_for_pow_cst_base): Ditto. (gen_conditions_for_pow_int_base): Ditto. (gen_conditions_for_pow): Ditto. (get_no_error_domain): Ditto. (gen_shrink_wrap_conditions): Ditto. (shrink_wrap_one_built_in_call): Ditto. (shink_wrap_conditional_dead_built_in_calls): Ditto. (tree_call_cdce): Ditto. (gate_call_cdce): Ditto. (pass_call_cdce): New gimple pass. * passes.c: (init_optimization_passes): New pass. * tree-pass.h: New pass declaration. * opts.c (decode_options): New flag setting. * common.opt: Add -ftree-builtin-call-dce flag. * Makefile.in: Add new source file. * tempvar.def: New tv_id. * doc/invoke.texi (-ftree-builtin-call-dce): New flag. 2008-06-04 Xinliang David Li <davidxl@google.com> * gcc.dg/cdce1.c: New test. * gcc.dg/cdce2.c: Ditto. * g++.dg/cdce3.C: Ditto. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@136374 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/opts.c')
-rw-r--r--gcc/opts.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/opts.c b/gcc/opts.c
index 7add8d3d250..d86c2b34be8 100644
--- a/gcc/opts.c
+++ b/gcc/opts.c
@@ -889,6 +889,8 @@ decode_options (unsigned int argc, const char **argv)
if (!optimize_size)
{
+ /* Conditional DCE generates bigger code. */
+ flag_tree_builtin_call_dce = 1;
/* PRE tends to generate bigger code. */
flag_tree_pre = 1;
}