diff mbox

[committed] Params to modified_between_p

Message ID 1409880338.19403.41.camel@surprise
State New
Headers show

Commit Message

David Malcolm Sept. 5, 2014, 1:25 a.m. UTC
The attached patch strengthens the 2nd and 3rd params of
modified_between_p from const_rtx to const rtx_insn * (eliminating a
checked cast), and thus falls under the pre-approval granted by Jeff
here:
  https://gcc.gnu.org/ml/gcc-patches/2014-08/msg01310.html

Bootstrapped on x86_64-unknown-linux-gnu (Fedora 20), and has been
rebuilt as part of a config-list.mk build for all working configurations
(albeit with other patches for the latter case).

Committed to trunk as r214931.
diff mbox

Patch

Index: gcc/rtlanal.c
===================================================================
--- gcc/rtlanal.c	(revision 214930)
+++ gcc/rtlanal.c	(revision 214931)
@@ -987,10 +987,8 @@ 
    X contains a MEM; this routine does use memory aliasing.  */
 
 int
-modified_between_p (const_rtx x, const_rtx uncast_start, const_rtx end)
+modified_between_p (const_rtx x, const rtx_insn *start, const rtx_insn *end)
 {
-  const rtx_insn *start =
-    safe_as_a <const rtx_insn *> (uncast_start);
   const enum rtx_code code = GET_CODE (x);
   const char *fmt;
   int i, j;
Index: gcc/ChangeLog
===================================================================
--- gcc/ChangeLog	(revision 214930)
+++ gcc/ChangeLog	(revision 214931)
@@ -1,5 +1,12 @@ 
 2014-09-05  David Malcolm  <dmalcolm@redhat.com>
 
+	* rtl.h (modified_between_p): Strengthen params 2 and 3 from
+	const_rtx to const rtx_insn *.
+	* rtlanal.c (modified_between_p): Likewise, eliminating a checked
+	cast.
+
+2014-09-05  David Malcolm  <dmalcolm@redhat.com>
+
 	* emit-rtl.c (try_split): Update NULL_RTX to NULL in call to
 	fixup_args_size_notes.
 	* expr.c (fixup_args_size_notes): Strengthen first two params from
Index: gcc/rtl.h
===================================================================
--- gcc/rtl.h	(revision 214930)
+++ gcc/rtl.h	(revision 214931)
@@ -2743,7 +2743,7 @@ 
 extern int reg_set_between_p (const_rtx, const_rtx, const_rtx);
 extern int commutative_operand_precedence (rtx);
 extern bool swap_commutative_operands_p (rtx, rtx);
-extern int modified_between_p (const_rtx, const_rtx, const_rtx);
+extern int modified_between_p (const_rtx, const rtx_insn *, const rtx_insn *);
 extern int no_labels_between_p (const rtx_insn *, const rtx_insn *);
 extern int modified_in_p (const_rtx, const_rtx);
 extern int reg_set_p (const_rtx, const_rtx);