diff options
author | Zdenek Dvorak <dvorakz@suse.cz> | 2006-02-10 22:01:10 +0100 |
---|---|---|
committer | Zdenek Dvorak <rakdver@gcc.gnu.org> | 2006-02-10 21:01:10 +0000 |
commit | 1f92226479da2a62e1f313e1ac32031952c4ada0 (patch) | |
tree | bd9c601cf33cdc324848180e51e95dbbc17f176e | |
parent | 9769818580bba2156b8b2aba8c02c29ad54c8ee1 (diff) | |
download | gcc-1f92226479da2a62e1f313e1ac32031952c4ada0.zip gcc-1f92226479da2a62e1f313e1ac32031952c4ada0.tar.gz gcc-1f92226479da2a62e1f313e1ac32031952c4ada0.tar.bz2 |
invoke.texi (-floop-optimize2): Removed.
* doc/invoke.texi (-floop-optimize2): Removed.
* toplev.c (process_options): Remove handling of flag_loop_optimize2.
* loop-init.c (gate_handle_loop2): Do not test flag_loop_optimize2.
Test flag_branch_on_count_reg only if HAVE_doloop_end.
* common.opt (floop-optimize2): Removed.
(fmove-loop-invariants): Enabled by default.
* gcc.dg/20050105-1.c: Do not use -floop-optimize2.
From-SVN: r110852
-rw-r--r-- | gcc/ChangeLog | 9 | ||||
-rw-r--r-- | gcc/common.opt | 6 | ||||
-rw-r--r-- | gcc/doc/invoke.texi | 8 | ||||
-rw-r--r-- | gcc/loop-init.c | 7 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/20050105-1.c | 2 | ||||
-rw-r--r-- | gcc/toplev.c | 13 |
7 files changed, 21 insertions, 28 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f2e9a88..413d150 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,12 @@ +2006-02-10 Zdenek Dvorak <dvorakz@suse.cz> + + * doc/invoke.texi (-floop-optimize2): Removed. + * toplev.c (process_options): Remove handling of flag_loop_optimize2. + * loop-init.c (gate_handle_loop2): Do not test flag_loop_optimize2. + Test flag_branch_on_count_reg only if HAVE_doloop_end. + * common.opt (floop-optimize2): Removed. + (fmove-loop-invariants): Enabled by default. + 2006-02-10 Sebastian Pop <pop@cri.ensmp.fr> * tree-if-conv.c (combine_blocks): Free the result of diff --git a/gcc/common.opt b/gcc/common.opt index d16b997..f8077ae 100644 --- a/gcc/common.opt +++ b/gcc/common.opt @@ -555,10 +555,6 @@ floop-optimize Common Report Var(flag_loop_optimize) Perform loop optimizations -floop-optimize2 -Common Report Var(flag_loop_optimize2) -Perform loop optimizations using the new loop optimizer - fmath-errno Common Report Var(flag_errno_math) Init(1) Set errno after built-in math functions @@ -587,7 +583,7 @@ Common Report Var(flag_modulo_sched) Perform SMS based modulo scheduling before the first scheduling pass fmove-loop-invariants -Common Report Var(flag_move_loop_invariants) +Common Report Var(flag_move_loop_invariants) Init(1) Move loop invariant computations out of loops fmudflap diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 1cbbcbd..1384562 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -315,7 +315,7 @@ Objective-C and Objective-C++ Dialects}. -finline-limit=@var{n} -fkeep-inline-functions @gol -fkeep-static-consts -fmerge-constants -fmerge-all-constants @gol -fmodulo-sched -fno-branch-count-reg @gol --fno-default-inline -fno-defer-pop -floop-optimize2 -fmove-loop-invariants @gol +-fno-default-inline -fno-defer-pop -fmove-loop-invariants @gol -fno-function-cse -fno-guess-branch-probability @gol -fno-inline -fno-math-errno -fno-peephole -fno-peephole2 @gol -funsafe-math-optimizations -funsafe-loop-optimizations -ffinite-math-only @gol @@ -4832,12 +4832,6 @@ exit test conditions and optionally do strength-reduction as well. Enabled at levels @option{-O}, @option{-O2}, @option{-O3}, @option{-Os}. -@item -floop-optimize2 -@opindex floop-optimize2 -Perform loop optimizations using the new loop optimizer. The optimizations -(loop unrolling, peeling and unswitching, loop invariant motion) are enabled -by separate flags. - @item -funsafe-loop-optimizations @opindex funsafe-loop-optimizations If given, the loop optimizer will assume that loop indices do not diff --git a/gcc/loop-init.c b/gcc/loop-init.c index 44f02b7..51ad1da 100644 --- a/gcc/loop-init.c +++ b/gcc/loop-init.c @@ -133,12 +133,15 @@ loop_optimizer_finalize (struct loops *loops) static bool gate_handle_loop2 (void) { - return (optimize > 0 && flag_loop_optimize2 + return (optimize > 0 && (flag_move_loop_invariants || flag_unswitch_loops || flag_peel_loops || flag_unroll_loops - || flag_branch_on_count_reg)); +#ifdef HAVE_doloop_end + || (flag_branch_on_count_reg && HAVE_doloop_end) +#endif + )); } struct tree_opt_pass pass_loop2 = diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index b158d4a..be9824e 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2006-02-10 Zdenek Dvorak <dvorakz@suse.cz> + + * gcc.dg/20050105-1.c: Do not use -floop-optimize2. + 2006-02-10 Jeff Law <law@redhat.com> * gcc.c-torture/compile/pr26213.c: New test. diff --git a/gcc/testsuite/gcc.dg/20050105-1.c b/gcc/testsuite/gcc.dg/20050105-1.c index 46a742f..58a7515 100644 --- a/gcc/testsuite/gcc.dg/20050105-1.c +++ b/gcc/testsuite/gcc.dg/20050105-1.c @@ -1,6 +1,6 @@ /* PR rtl-optimization/18861 */ /* { dg-do compile } */ -/* { dg-options "-O2 -floop-optimize2" } */ +/* { dg-options "-O2" } */ extern void abort (void); diff --git a/gcc/toplev.c b/gcc/toplev.c index 9e7588e..013ce6e 100644 --- a/gcc/toplev.c +++ b/gcc/toplev.c @@ -1568,19 +1568,6 @@ process_options (void) if (flag_rename_registers == AUTODETECT_VALUE) flag_rename_registers = flag_unroll_loops || flag_peel_loops; - /* If explicitly asked to run new loop optimizer, switch off the old - one. */ - if (flag_loop_optimize2) - flag_loop_optimize = 0; - - /* Enable new loop optimizer pass if any of its optimizations is called. */ - if (flag_move_loop_invariants - || flag_unswitch_loops - || flag_peel_loops - || flag_unroll_loops - || flag_branch_on_count_reg) - flag_loop_optimize2 = 1; - if (flag_non_call_exceptions) flag_asynchronous_unwind_tables = 1; if (flag_asynchronous_unwind_tables) |