Make next_insn and previous_insn require an rtx_insn *
authorDavid Malcolm <dmalcolm@redhat.com>
Fri, 29 Aug 2014 00:17:58 +0000 (00:17 +0000)
committerDavid Malcolm <dmalcolm@gcc.gnu.org>
Fri, 29 Aug 2014 00:17:58 +0000 (00:17 +0000)
gcc/
2014-08-28  David Malcolm  <dmalcolm@redhat.com>

* rtl.h (previous_insn): Strengthen param from rtx to rtx_insn *.
(next_insn): Likewise.
* emit-rtl.c (next_insn): Likewise.
(previous_insn): Likewise.
* config/pa/pa.c (remove_useless_addtr_insns): Strenghten locals
"insn" and "next" from rtx to rtx_insn *.
* config/picochip/picochip.c (picochip_reorg): Likewise for locals
"insn", "insn1", "vliw_start",  "prologue_end_note",
"last_insn_in_packet".

From-SVN: r214708

gcc/ChangeLog
gcc/config/pa/pa.c
gcc/config/picochip/picochip.c
gcc/emit-rtl.c
gcc/rtl.h

index 83b959a4bcb9fe53f78ac843d93e6341b4352c04..2095abfc1bfc2a3baf37d210889b47fcbac38719 100644 (file)
@@ -1,3 +1,15 @@
+2014-08-28  David Malcolm  <dmalcolm@redhat.com>
+
+       * rtl.h (previous_insn): Strengthen param from rtx to rtx_insn *.
+       (next_insn): Likewise.
+       * emit-rtl.c (next_insn): Likewise.
+       (previous_insn): Likewise.
+       * config/pa/pa.c (remove_useless_addtr_insns): Strenghten locals
+       "insn" and "next" from rtx to rtx_insn *.
+       * config/picochip/picochip.c (picochip_reorg): Likewise for locals
+       "insn", "insn1", "vliw_start",  "prologue_end_note",
+       "last_insn_in_packet".
+
 2014-08-28  David Malcolm  <dmalcolm@redhat.com>
 
        * shrink-wrap.h (active_insn_between): Strengthen both params from
index fe76bd4be3b29a8d029b176c2ebfd712ad8b0730..0ae6bd320331a1a81ae7c5e48409c240773cb2d9 100644 (file)
@@ -3296,7 +3296,7 @@ pa_output_ascii (FILE *file, const char *p, int size)
 static void
 remove_useless_addtr_insns (int check_notes)
 {
-  rtx insn;
+  rtx_insn *insn;
   static int pass = 0;
 
   /* This is fairly cheap, so always run it when optimizing.  */
@@ -3348,7 +3348,8 @@ remove_useless_addtr_insns (int check_notes)
         reverse the comparison & the branch to avoid add,tr insns.  */
       for (insn = get_insns (); insn; insn = next_insn (insn))
        {
-         rtx tmp, next;
+         rtx tmp;
+         rtx_insn *next;
 
          /* Ignore anything that isn't an INSN.  */
          if (! NONJUMP_INSN_P (insn))
index fbcb63ff050f9866032598866ba55f47a457ea86..3e532f46b0ee0909b890b8c2272eb050075d3d2d 100644 (file)
@@ -3249,7 +3249,7 @@ reorder_var_tracking_notes (void)
 void
 picochip_reorg (void)
 {
-  rtx insn, insn1, vliw_start = NULL_RTX;
+  rtx_insn *insn, *insn1, *vliw_start = NULL;
   int vliw_insn_location = 0;
 
   /* We are freeing block_for_insn in the toplev to keep compatibility
@@ -3326,8 +3326,8 @@ picochip_reorg (void)
      of VLIW packets. */
   if (picochip_schedule_type == DFA_TYPE_SPEED)
     {
-      rtx prologue_end_note = NULL;
-      rtx last_insn_in_packet = NULL;
+      rtx_insn *prologue_end_note = NULL;
+      rtx_insn *last_insn_in_packet = NULL;
 
       for (insn = get_insns (); insn; insn = next_insn (insn))
        {
index 330c5215a2e0362efd2b0453b0afc88855642316..c257fbe3381ef6aa122d7fc80accdd14b885b651 100644 (file)
@@ -3215,9 +3215,8 @@ get_max_insn_count (void)
    of the sequence.  */
 
 rtx_insn *
-next_insn (rtx uncast_insn)
+next_insn (rtx_insn *insn)
 {
-  rtx_insn *insn = safe_as_a <rtx_insn *> (uncast_insn);
   if (insn)
     {
       insn = NEXT_INSN (insn);
@@ -3233,9 +3232,8 @@ next_insn (rtx uncast_insn)
    of the sequence.  */
 
 rtx_insn *
-previous_insn (rtx uncast_insn)
+previous_insn (rtx_insn *insn)
 {
-  rtx_insn *insn = safe_as_a <rtx_insn *> (uncast_insn);
   if (insn)
     {
       insn = PREV_INSN (insn);
index 1bfb5bc703233b168cb022060a9f38a77d937281..beeed2f9a1e45d1357b4e6f01d4b4e2e70e782ae 100644 (file)
--- a/gcc/rtl.h
+++ b/gcc/rtl.h
@@ -2620,8 +2620,8 @@ extern rtx_insn *emit_use (rtx);
 extern rtx_insn *make_insn_raw (rtx);
 extern void add_function_usage_to (rtx, rtx);
 extern rtx_call_insn *last_call_insn (void);
-extern rtx_insn *previous_insn (rtx);
-extern rtx_insn *next_insn (rtx);
+extern rtx_insn *previous_insn (rtx_insn *);
+extern rtx_insn *next_insn (rtx_insn *);
 extern rtx_insn *prev_nonnote_insn (rtx);
 extern rtx_insn *prev_nonnote_insn_bb (rtx);
 extern rtx_insn *next_nonnote_insn (rtx);