shrink-wrap: Remove complicated simple_return manipulations
authorSegher Boessenkool <segher@kernel.crashing.org>
Wed, 4 May 2016 20:57:08 +0000 (22:57 +0200)
committerSegher Boessenkool <segher@gcc.gnu.org>
Wed, 4 May 2016 20:57:08 +0000 (22:57 +0200)
commitd07d21777f637293ebf91bff6377f2621a1e7a0c
tree53ca7afba7ccf5fb7e23ff3ec271f118e9df2844
parent45676a7c8a09579a591fb8d20db90df92a1713b3
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.

From-SVN: r235905
gcc/ChangeLog
gcc/function.c
gcc/shrink-wrap.c
gcc/shrink-wrap.h