diff options
author | bonzini <bonzini@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-05-17 09:55:44 +0000 |
---|---|---|
committer | bonzini <bonzini@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-05-17 09:55:44 +0000 |
commit | 429f2f90251e5a4bfdd214017e9824995f5d4ae1 (patch) | |
tree | 8e47af6adacdca86c18a58438d78923a88ce610b /gcc/tree-optimize.c | |
parent | adcfa3a3f7ceb81c9e701b82dfda6d5a5f5b93f3 (diff) | |
download | gcc-429f2f90251e5a4bfdd214017e9824995f5d4ae1.tar.gz |
gcc:
2005-05-17 Paolo Bonzini <bonzini@gnu.org>
* Makefile.in: Add tree-ssa-math-opts.c.
* expr.c (expand_expr_real_1) <case RDIV_EXPR>: Never emit as a*(1/b).
* fold-const.c (distribute_real_division): New.
(fold_binary) <case PLUS_EXPR, case MINUS_EXPR>: Use it.
* tree-pass.h (pass_cse_reciprocals): New.
* tree-optimize.c (init_tree_optimization_passes): Run it.
* tree-ssa-math-opts.c: New file.
* doc/passes.texi: Document the new pass.
gcc/testsuite:
2005-05-17 Paolo Bonzini <bonzini@gnu.org>
* gcc.dg/fold-div-1.c, gcc.dg/recip-1.c, gcc.dg/recip-2.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99826 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-optimize.c')
-rw-r--r-- | gcc/tree-optimize.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/tree-optimize.c b/gcc/tree-optimize.c index 66c25de147b..ec873fbb250 100644 --- a/gcc/tree-optimize.c +++ b/gcc/tree-optimize.c @@ -383,6 +383,7 @@ init_tree_optimization_passes (void) we add may_alias right after fold builtins which can create arbitrary GIMPLE. */ NEXT_PASS (pass_may_alias); + NEXT_PASS (pass_cse_reciprocals); NEXT_PASS (pass_split_crit_edges); NEXT_PASS (pass_pre); NEXT_PASS (pass_sink_code); |