diff options
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/cfgrtl.c | 3 |
2 files changed, 8 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2c10c04..a90f8af 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2013-12-17 Teresa Johnson <tejohnson@google.com> + + PR gcov-profile/59527 + * cfgrtl.c (fixup_reorder_chain): Handle a region-crossing + branch, which can't be eliminated. + 2013-12-18 Martin Liska <marxin.liska@gmail.com> Jan Hubicka <jh@suse.cz> diff --git a/gcc/cfgrtl.c b/gcc/cfgrtl.c index 1a63249..18e65bd 100644 --- a/gcc/cfgrtl.c +++ b/gcc/cfgrtl.c @@ -3736,7 +3736,8 @@ fixup_reorder_chain (void) if (!e_fall) { gcc_assert (!onlyjump_p (bb_end_insn) - || returnjump_p (bb_end_insn)); + || returnjump_p (bb_end_insn) + || (e_taken->flags & EDGE_CROSSING)); emit_barrier_after (bb_end_insn); continue; } |