Commit 9c8348cf by David Malcolm Committed by David Malcolm

function.c and shrink-wrap.*: more rtx_insn

gcc/
	* function.c (thread_prologue_and_epilogue_insns): Likewise for
	locals "returnjump", "epilogue_end", "insn", "next".

	* shrink-wrap.h (get_unconverted_simple_return): Strengthen param
	"returnjump" from rtx * to rtx_insn **.
	* shrink-wrap.c (get_unconverted_simple_return): Likewise.

From-SVN: r214472
parent 3ffa95c2
2014-08-25 David Malcolm <dmalcolm@redhat.com> 2014-08-25 David Malcolm <dmalcolm@redhat.com>
* function.c (thread_prologue_and_epilogue_insns): Likewise for
locals "returnjump", "epilogue_end", "insn", "next".
* shrink-wrap.h (get_unconverted_simple_return): Strengthen param
"returnjump" from rtx * to rtx_insn **.
* shrink-wrap.c (get_unconverted_simple_return): Likewise.
2014-08-25 David Malcolm <dmalcolm@redhat.com>
* basic-block.h (struct edge_def). Strengthen "r" within * basic-block.h (struct edge_def). Strengthen "r" within
union edge_def_insns from rtx to rtx_insn *. union edge_def_insns from rtx to rtx_insn *.
......
...@@ -5613,8 +5613,9 @@ thread_prologue_and_epilogue_insns (void) ...@@ -5613,8 +5613,9 @@ thread_prologue_and_epilogue_insns (void)
vec<edge> unconverted_simple_returns = vNULL; vec<edge> unconverted_simple_returns = vNULL;
bitmap_head bb_flags; bitmap_head bb_flags;
#endif #endif
rtx returnjump; rtx_insn *returnjump;
rtx seq ATTRIBUTE_UNUSED, epilogue_end ATTRIBUTE_UNUSED; rtx seq ATTRIBUTE_UNUSED;
rtx_insn *epilogue_end ATTRIBUTE_UNUSED;
rtx prologue_seq ATTRIBUTE_UNUSED, split_prologue_seq ATTRIBUTE_UNUSED; rtx prologue_seq ATTRIBUTE_UNUSED, split_prologue_seq ATTRIBUTE_UNUSED;
edge e, entry_edge, orig_entry_edge, exit_fallthru_edge; edge e, entry_edge, orig_entry_edge, exit_fallthru_edge;
edge_iterator ei; edge_iterator ei;
...@@ -5625,8 +5626,8 @@ thread_prologue_and_epilogue_insns (void) ...@@ -5625,8 +5626,8 @@ thread_prologue_and_epilogue_insns (void)
inserted = false; inserted = false;
seq = NULL_RTX; seq = NULL_RTX;
epilogue_end = NULL_RTX; epilogue_end = NULL;
returnjump = NULL_RTX; returnjump = NULL;
/* Can't deal with multiple successors of the entry block at the /* Can't deal with multiple successors of the entry block at the
moment. Function should always have at least one entry moment. Function should always have at least one entry
...@@ -5916,7 +5917,7 @@ epilogue_done: ...@@ -5916,7 +5917,7 @@ epilogue_done:
#ifdef HAVE_epilogue #ifdef HAVE_epilogue
if (epilogue_end) if (epilogue_end)
{ {
rtx insn, next; rtx_insn *insn, *next;
/* Similarly, move any line notes that appear after the epilogue. /* Similarly, move any line notes that appear after the epilogue.
There is no need, however, to be quite so anal about the existence There is no need, however, to be quite so anal about the existence
......
...@@ -790,7 +790,7 @@ try_shrink_wrapping (edge *entry_edge, edge orig_entry_edge, ...@@ -790,7 +790,7 @@ try_shrink_wrapping (edge *entry_edge, edge orig_entry_edge,
edge edge
get_unconverted_simple_return (edge exit_fallthru_edge, bitmap_head bb_flags, get_unconverted_simple_return (edge exit_fallthru_edge, bitmap_head bb_flags,
vec<edge> *unconverted_simple_returns, vec<edge> *unconverted_simple_returns,
rtx *returnjump) rtx_insn **returnjump)
{ {
if (optimize) if (optimize)
{ {
......
...@@ -42,7 +42,7 @@ extern void dup_block_and_redirect (basic_block bb, basic_block copy_bb, ...@@ -42,7 +42,7 @@ extern void dup_block_and_redirect (basic_block bb, basic_block copy_bb,
extern void try_shrink_wrapping (edge *entry_edge, edge orig_entry_edge, extern void try_shrink_wrapping (edge *entry_edge, edge orig_entry_edge,
bitmap_head *bb_flags, rtx prologue_seq); bitmap_head *bb_flags, rtx prologue_seq);
extern edge get_unconverted_simple_return (edge, bitmap_head, extern edge get_unconverted_simple_return (edge, bitmap_head,
vec<edge> *, rtx *); vec<edge> *, rtx_insn **);
extern void convert_to_simple_return (edge entry_edge, edge orig_entry_edge, extern void convert_to_simple_return (edge entry_edge, edge orig_entry_edge,
bitmap_head bb_flags, rtx returnjump, bitmap_head bb_flags, rtx returnjump,
vec<edge> unconverted_simple_returns); vec<edge> unconverted_simple_returns);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment