diff options
author | Steven Bosscher <steven@gcc.gnu.org> | 2014-03-13 18:01:48 +0000 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2014-03-13 19:01:48 +0100 |
commit | bdc6e1ae29dbca4e3a51f6c06373f0425c239814 (patch) | |
tree | eac279b783ad1be6ece3b3df58d3291df518d59c | |
parent | b0a87402783d157875be6667d3d5bcf3396463a6 (diff) | |
download | gcc-bdc6e1ae29dbca4e3a51f6c06373f0425c239814.zip gcc-bdc6e1ae29dbca4e3a51f6c06373f0425c239814.tar.gz gcc-bdc6e1ae29dbca4e3a51f6c06373f0425c239814.tar.bz2 |
re PR rtl-optimization/57320 (Shrink-wrapping leaves unreachable blocks in the CFG)
PR rtl-optimization/57320
* function.c (rest_of_handle_thread_prologue_and_epilogue): Cleanup
the CFG after thread_prologue_and_epilogue_insns.
From-SVN: r208551
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/function.c | 4 |
2 files changed, 10 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 91b1e41..7591cae 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2014-03-13 Steven Bosscher <steven@gcc.gnu.org> + + PR rtl-optimization/57320 + * function.c (rest_of_handle_thread_prologue_and_epilogue): Cleanup + the CFG after thread_prologue_and_epilogue_insns. + 2014-03-13 Vladimir Makarov <vmakarov@redhat.com> PR rtl-optimization/57189 diff --git a/gcc/function.c b/gcc/function.c index e67d3c1..a61e475 100644 --- a/gcc/function.c +++ b/gcc/function.c @@ -6991,6 +6991,10 @@ rest_of_handle_thread_prologue_and_epilogue (void) scheduling to operate in the epilogue. */ thread_prologue_and_epilogue_insns (); + /* Shrink-wrapping can result in unreachable edges in the epilogue, + see PR57320. */ + cleanup_cfg (0); + /* The stack usage info is finalized during prologue expansion. */ if (flag_stack_usage_info) output_stack_usage (); |