shrink-wrap: Remove complicated simple_return manipulations
commitf8b733224f3766dd202dd9700920b08abb52e53b
authorsegher <segher@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 4 May 2016 20:57:08 +0000 (4 20:57 +0000)
committersegher <segher@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 4 May 2016 20:57:08 +0000 (4 20:57 +0000)
tree53ca7afba7ccf5fb7e23ff3ec271f118e9df2844
parent01b8ebb6e5940eca6d158dc793424a6580c90998
shrink-wrap: Remove complicated simple_return manipulations

Now that cfgcleanup knows how to optimize with return statements, the
epilogue insertion code doesn't have to deal with it itself anymore.

* function.c (emit_use_return_register_into_block): Delete.
(gen_return_pattern): Delete.
(emit_return_into_block): Delete.
(active_insn_between): Delete.
(convert_jumps_to_returns): Delete.
(emit_return_for_exit): Delete.
(thread_prologue_and_epilogue_insns): Delete all code dealing with
simple_return for shrink-wrapped blocks.
* shrink-wrap.c (try_shrink_wrapping): Insert simple_return at the
end of blocks that need one.
(get_unconverted_simple_return): Delete.
(convert_to_simple_return): Delete.
* shrink-wrap.c (get_unconverted_simple_return): Delete declaration.
(convert_to_simple_return): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@235905 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/function.c
gcc/shrink-wrap.c
gcc/shrink-wrap.h