aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-loop-ivcanon.c
diff options
context:
space:
mode:
authorZdenek Dvorak <dvorakz@suse.cz>2007-02-09 14:29:11 +0100
committerRichard Biener <rguenth@gcc.gnu.org>2007-02-09 13:29:11 +0000
commitb44e7f07c5a8b8dfe7549583d3504f1a39208b03 (patch)
treea7c503e98956c6e5d624c17e6ed753cc613964aa /gcc/tree-ssa-loop-ivcanon.c
parent917fbceb1b9687c2871b1ca1074389287339d06a (diff)
downloadgcc-b44e7f07c5a8b8dfe7549583d3504f1a39208b03.zip
gcc-b44e7f07c5a8b8dfe7549583d3504f1a39208b03.tar.gz
gcc-b44e7f07c5a8b8dfe7549583d3504f1a39208b03.tar.bz2
re PR tree-optimization/23361 (Can't eliminate empty loops with power of two step and variable bounds)
2007-02-09 Zdenek Dvorak <dvorakz@suse.cz> Richard Guenther <rguenther@suse.de> PR middle-end/23361 * fold-const.c (fold_comparison): Handle obfuscated comparisons against INT_MIN/INT_MAX. * tree-ssa-loop-ivcanon.c (remove_empty_loop): Print to dump file if a loop is removed. * gcc.dg/fold-compare-3.c: New testcase. * gcc.dg/tree-ssa/loop-24.c: Likewise. Co-Authored-By: Richard Guenther <rguenther@suse.de> From-SVN: r121742
Diffstat (limited to 'gcc/tree-ssa-loop-ivcanon.c')
-rw-r--r--gcc/tree-ssa-loop-ivcanon.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/tree-ssa-loop-ivcanon.c b/gcc/tree-ssa-loop-ivcanon.c
index acc8cf3..80ac155 100644
--- a/gcc/tree-ssa-loop-ivcanon.c
+++ b/gcc/tree-ssa-loop-ivcanon.c
@@ -480,6 +480,9 @@ remove_empty_loop (struct loop *loop)
unsigned n_before, freq_in, freq_h;
gcov_type exit_count = exit->count;
+ if (dump_file)
+ fprintf (dump_file, "Removing empty loop %d\n", loop->num);
+
non_exit = EDGE_SUCC (exit->src, 0);
if (non_exit == exit)
non_exit = EDGE_SUCC (exit->src, 1);