aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZdenek Dvorak <dvorakz@suse.cz>2006-02-10 22:01:10 +0100
committerZdenek Dvorak <rakdver@gcc.gnu.org>2006-02-10 21:01:10 +0000
commit1f92226479da2a62e1f313e1ac32031952c4ada0 (patch)
treebd9c601cf33cdc324848180e51e95dbbc17f176e
parent9769818580bba2156b8b2aba8c02c29ad54c8ee1 (diff)
downloadgcc-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/ChangeLog9
-rw-r--r--gcc/common.opt6
-rw-r--r--gcc/doc/invoke.texi8
-rw-r--r--gcc/loop-init.c7
-rw-r--r--gcc/testsuite/ChangeLog4
-rw-r--r--gcc/testsuite/gcc.dg/20050105-1.c2
-rw-r--r--gcc/toplev.c13
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)