diff options
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/cfghooks.c | 8 |
2 files changed, 6 insertions, 8 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ae2ce285ae3..b31134fe915 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2007-07-12 Zdenek Dvorak <dvorakz@suse.cz> + + PR rtl-optimization/32729 + * cfghooks.c (can_duplicate_block_p): Do not forbid duplicating blocks + that fallthru to exit. + 2007-07-12 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/sh.md (symGOTOFF2reg): Add missing parenthesis. diff --git a/gcc/cfghooks.c b/gcc/cfghooks.c index 286625766e3..d436f011fac 100644 --- a/gcc/cfghooks.c +++ b/gcc/cfghooks.c @@ -838,8 +838,6 @@ tidy_fallthru_edges (void) bool can_duplicate_block_p (basic_block bb) { - edge e; - if (!cfg_hooks->can_duplicate_block_p) internal_error ("%s does not support can_duplicate_block_p", cfg_hooks->name); @@ -847,12 +845,6 @@ can_duplicate_block_p (basic_block bb) if (bb == EXIT_BLOCK_PTR || bb == ENTRY_BLOCK_PTR) return false; - /* Duplicating fallthru block to exit would require adding a jump - and splitting the real last BB. */ - e = find_edge (bb, EXIT_BLOCK_PTR); - if (e && (e->flags & EDGE_FALLTHRU)) - return false; - return cfg_hooks->can_duplicate_block_p (bb); } |