make prev_real_insn take rtx_insn *
authorTrevor Saunders <tbsaunde+gcc@tbsaunde.org>
Thu, 22 Sep 2016 13:16:30 +0000 (13:16 +0000)
committerTrevor Saunders <tbsaunde@gcc.gnu.org>
Thu, 22 Sep 2016 13:16:30 +0000 (13:16 +0000)
gcc/ChangeLog:

2016-09-22  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* emit-rtl.c (prev_real_insn): Change argument type to rtx_insn *.
* rtl.h: Adjust prototype.
* config/sh/sh.md: Adjust.
* dwarf2out.c (add_var_loc_to_decl): Likewise.

From-SVN: r240359

gcc/ChangeLog
gcc/config/sh/sh.md
gcc/dwarf2out.c
gcc/emit-rtl.c
gcc/rtl.h

index 7d11126673be067127e95bd520f0ce82e0cdd991..7576a1eea50177071b676880791f0819a2c5c58c 100644 (file)
@@ -1,3 +1,10 @@
+2016-09-22  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
+
+       * emit-rtl.c (prev_real_insn): Change argument type to rtx_insn *.
+       * rtl.h: Adjust prototype.
+       * config/sh/sh.md: Adjust.
+       * dwarf2out.c (add_var_loc_to_decl): Likewise.
+
 2016-09-22  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
 
        * emit-rtl.c (next_nondebug_insn): Change argument type to
index edc4d1517a54d437e934b98af19bbf2463cbcf7a..25e03efc313d3df6cfabbac9be273c33085eba62 100644 (file)
                      (label_ref (match_operand 1 "" ""))))
    (use (label_ref (match_operand 2 "" "")))]
   "TARGET_SH2
-   && (! INSN_UID (operands[1]) || prev_real_insn (operands[1]) == insn)"
+   && (! INSN_UID (operands[1])
+       || prev_real_insn (as_a<rtx_insn *> (operands[1])) == insn)"
   "braf        %0%#"
   [(set_attr "needs_delay_slot" "yes")
    (set_attr "type" "jump_ind")])
index 4e4893f26a83443e4fd6838e68759590a25b191a..e36473a5c52f16e86b6546456aada56b5b7070c9 100644 (file)
@@ -5415,7 +5415,7 @@ add_var_loc_to_decl (tree decl, rtx loc_note, const char *label)
       && NOTE_VAR_LOCATION_LOC (temp->first->loc)
       && GET_CODE (NOTE_VAR_LOCATION_LOC (temp->first->loc))
         == GET_CODE (DECL_INCOMING_RTL (decl))
-      && prev_real_insn (temp->first->loc) == NULL_RTX
+      && prev_real_insn (as_a<rtx_insn *> (temp->first->loc)) == NULL_RTX
       && (bitsize != -1
          || !rtx_equal_p (NOTE_VAR_LOCATION_LOC (temp->first->loc),
                           NOTE_VAR_LOCATION_LOC (loc_note))
index c24717b90480a6692e5e661b435f1e7dc1c0cd2b..0fc0a670f68df3b5ab175ad275f1328a770eac31 100644 (file)
@@ -3461,10 +3461,8 @@ next_real_insn (rtx uncast_insn)
    SEQUENCEs.  */
 
 rtx_insn *
-prev_real_insn (rtx uncast_insn)
+prev_real_insn (rtx_insn *insn)
 {
-  rtx_insn *insn = safe_as_a <rtx_insn *> (uncast_insn);
-
   while (insn)
     {
       insn = PREV_INSN (insn);
index b557ffe3fd61684acb2b9887199c7b9db910436d..c253fdac64c4ef4f73bff986ecc74c3f400cf4c0 100644 (file)
--- a/gcc/rtl.h
+++ b/gcc/rtl.h
@@ -2842,7 +2842,7 @@ extern rtx_insn *prev_nondebug_insn (rtx_insn *);
 extern rtx_insn *next_nondebug_insn (rtx_insn *);
 extern rtx_insn *prev_nonnote_nondebug_insn (rtx);
 extern rtx_insn *next_nonnote_nondebug_insn (rtx);
-extern rtx_insn *prev_real_insn (rtx);
+extern rtx_insn *prev_real_insn (rtx_insn *);
 extern rtx_insn *next_real_insn (rtx);
 extern rtx_insn *prev_active_insn (rtx);
 extern rtx_insn *next_active_insn (rtx);