+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
vec<edge> unconverted_simple_returns = vNULL;
bitmap_head bb_flags;
#endif
- rtx returnjump;
- rtx seq ATTRIBUTE_UNUSED, epilogue_end ATTRIBUTE_UNUSED;
+ rtx_insn *returnjump;
+ rtx seq ATTRIBUTE_UNUSED;
+ rtx_insn *epilogue_end ATTRIBUTE_UNUSED;
rtx prologue_seq ATTRIBUTE_UNUSED, split_prologue_seq ATTRIBUTE_UNUSED;
edge e, entry_edge, orig_entry_edge, exit_fallthru_edge;
edge_iterator ei;
inserted = false;
seq = NULL_RTX;
- epilogue_end = NULL_RTX;
- returnjump = NULL_RTX;
+ epilogue_end = NULL;
+ returnjump = NULL;
/* Can't deal with multiple successors of the entry block at the
moment. Function should always have at least one entry
#ifdef HAVE_epilogue
if (epilogue_end)
{
- rtx insn, next;
+ rtx_insn *insn, *next;
/* Similarly, move any line notes that appear after the epilogue.
There is no need, however, to be quite so anal about the existence
edge
get_unconverted_simple_return (edge exit_fallthru_edge, bitmap_head bb_flags,
vec<edge> *unconverted_simple_returns,
- rtx *returnjump)
+ rtx_insn **returnjump)
{
if (optimize)
{
extern void try_shrink_wrapping (edge *entry_edge, edge orig_entry_edge,
bitmap_head *bb_flags, rtx prologue_seq);
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,
bitmap_head bb_flags, rtx returnjump,
vec<edge> unconverted_simple_returns);