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.
---
 gcc/function.c    | 11 ++++++-----
 gcc/shrink-wrap.c |  2 +-
 gcc/shrink-wrap.h |  2 +-
 3 files changed, 8 insertions(+), 7 deletions(-)

diff --git a/gcc/function.c b/gcc/function.c
index c5619e9..771ced9 100644
--- a/gcc/function.c
+++ b/gcc/function.c
@@ -5583,8 +5583,9 @@ thread_prologue_and_epilogue_insns (void)
   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;
@@ -5595,8 +5596,8 @@ thread_prologue_and_epilogue_insns (void)
 
   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
@@ -5886,7 +5887,7 @@ epilogue_done:
 #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
diff --git a/gcc/shrink-wrap.c b/gcc/shrink-wrap.c
index 785ca21..8f77ab3 100644
--- a/gcc/shrink-wrap.c
+++ b/gcc/shrink-wrap.c
@@ -790,7 +790,7 @@ try_shrink_wrapping (edge *entry_edge, edge orig_entry_edge,
 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)
     {
diff --git a/gcc/shrink-wrap.h b/gcc/shrink-wrap.h
index 5576d36..66bd26d 100644
--- a/gcc/shrink-wrap.h
+++ b/gcc/shrink-wrap.h
@@ -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,
                                 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);
-- 
1.8.5.3

Reply via email to