diff options
author | jakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-06-10 21:36:15 +0000 |
---|---|---|
committer | jakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-06-10 21:36:15 +0000 |
commit | 79e9c5960f735ef6f90fede19442d31063b5daa1 (patch) | |
tree | 7ec1ac88f5e3d19ee1a46df7ee82526f46053be6 /gcc/cfgcleanup.c | |
parent | 5d21914221ed35ee73c6090bdf5443896ad32c92 (diff) | |
download | gcc-79e9c5960f735ef6f90fede19442d31063b5daa1.tar.gz |
* cfgcleanup.c (try_optimize_cfg): Make sure merge_blocks doesn't
merge bb with itself.
* gcc.c-torture/compile/20020605-1.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@54456 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cfgcleanup.c')
-rw-r--r-- | gcc/cfgcleanup.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/cfgcleanup.c b/gcc/cfgcleanup.c index 2e6e02daba7..74b8d338ca9 100644 --- a/gcc/cfgcleanup.c +++ b/gcc/cfgcleanup.c @@ -1675,6 +1675,7 @@ try_optimize_cfg (mode) && !(s->flags & EDGE_COMPLEX) && (c = s->dest) != EXIT_BLOCK_PTR && c->pred->pred_next == NULL + && b != c /* If the jump insn has side effects, we can't kill the edge. */ && (GET_CODE (b->end) != JUMP_INSN |