aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorDavid Malcolm <dmalcolm@redhat.com>2014-08-25 20:27:46 +0000
committerDavid Malcolm <dmalcolm@gcc.gnu.org>2014-08-25 20:27:46 +0000
commit9c8348cf6b1fdd8566b5dc15c9e0fad0b4e8c599 (patch)
tree3c5a4aa90c738acd6a310314e1700b29d4261e46 /gcc
parent3ffa95c25f3f98adb2a5cdb7419a5ffa1e7bc753 (diff)
downloadgcc-9c8348cf6b1fdd8566b5dc15c9e0fad0b4e8c599.zip
gcc-9c8348cf6b1fdd8566b5dc15c9e0fad0b4e8c599.tar.gz
gcc-9c8348cf6b1fdd8566b5dc15c9e0fad0b4e8c599.tar.bz2
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
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog9
-rw-r--r--gcc/function.c11
-rw-r--r--gcc/shrink-wrap.c2
-rw-r--r--gcc/shrink-wrap.h2
4 files changed, 17 insertions, 7 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 6480864..8cb0164 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,14 @@
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
union edge_def_insns from rtx to rtx_insn *.
diff --git a/gcc/function.c b/gcc/function.c
index 4e43471..25f1519 100644
--- a/gcc/function.c
+++ b/gcc/function.c
@@ -5613,8 +5613,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;
@@ -5625,8 +5626,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
@@ -5916,7 +5917,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 0938f2c..2710d98 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);