diff --git a/gcc/ChangeLog b/gcc/ChangeLog index bc4cfcffeda51ebb8f56ab4b2b9ef6e4a294c8e2..1d9c94dab2fb7653bd6f43652178fd5ee2082754 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2001-04-14 Richard Henderson <rth@redhat.com> + + * ifcvt.c (find_cond_trap): Test for exit block. + Sun Jul 15 00:50:20 CEST 2001 Jan Hubicka <jh@suse.cz> Re-install recently reverted patch. diff --git a/gcc/ifcvt.c b/gcc/ifcvt.c index 6196522d228ee9a872ed101abcc26a2c88800b39..d23fd3a76825d41b872de940ba54d9b66b63ec74 100644 --- a/gcc/ifcvt.c +++ b/gcc/ifcvt.c @@ -2018,6 +2018,11 @@ find_cond_trap (test_bb, then_edge, else_edge) else return FALSE; + /* Don't confuse a conditional return with something we want to + optimize here. */ + if (trap_bb == EXIT_BLOCK_PTR) + return FALSE; + /* The only instruction in the THEN block must be the trap. */ trap = first_active_insn (trap_bb); if (! (trap == trap_bb->end