aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorTrevor Saunders <tbsaunde+gcc@tbsaunde.org>2016-09-22 13:16:30 +0000
committerTrevor Saunders <tbsaunde@gcc.gnu.org>2016-09-22 13:16:30 +0000
commitd8fd56b22635e30177b2849de33b4c6d5ef6c422 (patch)
tree0369f768fb4fc55c622f688583135c8ba9c72631 /gcc
parent30d2ef86a977ef7dd7472eec447be218bce286a4 (diff)
downloadgcc-d8fd56b22635e30177b2849de33b4c6d5ef6c422.zip
gcc-d8fd56b22635e30177b2849de33b4c6d5ef6c422.tar.gz
gcc-d8fd56b22635e30177b2849de33b4c6d5ef6c422.tar.bz2
make prev_real_insn take rtx_insn *
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
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/config/sh/sh.md3
-rw-r--r--gcc/dwarf2out.c2
-rw-r--r--gcc/emit-rtl.c4
-rw-r--r--gcc/rtl.h2
5 files changed, 12 insertions, 6 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 7d11126..7576a1e 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,12 @@
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
rtx_insn *.
(prev_nondebug_insn): Likewise.
diff --git a/gcc/config/sh/sh.md b/gcc/config/sh/sh.md
index edc4d15..25e03ef 100644
--- a/gcc/config/sh/sh.md
+++ b/gcc/config/sh/sh.md
@@ -7178,7 +7178,8 @@
(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")])
diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c
index 4e4893f..e36473a 100644
--- a/gcc/dwarf2out.c
+++ b/gcc/dwarf2out.c
@@ -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))
diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c
index c24717b..0fc0a67 100644
--- a/gcc/emit-rtl.c
+++ b/gcc/emit-rtl.c
@@ -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);
diff --git a/gcc/rtl.h b/gcc/rtl.h
index b557ffe..c253fda 100644
--- 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);