find_first_parameter_load params and return type
authorDavid Malcolm <dmalcolm@gcc.gnu.org>
Thu, 28 Aug 2014 20:49:58 +0000 (20:49 +0000)
committerDavid Malcolm <dmalcolm@gcc.gnu.org>
Thu, 28 Aug 2014 20:49:58 +0000 (20:49 +0000)
gcc/
2014-08-28  David Malcolm  <dmalcolm@redhat.com>

* rtl.h (find_first_parameter_load): Strengthen return type and
both params from rtx to rtx_insn *.
* rtlanal.c (find_first_parameter_load): Strengthen return type,
both params and locals "before", "first_set" from rtx to
rtx_insn *.  Remove now-redundant cast.
* except.c (sjlj_mark_call_sites): Use NULL rather than NULL_RTX.

From-SVN: r214695

gcc/except.c
gcc/rtl.h
gcc/rtlanal.c

index 5cdfb680bbf01878d0fa3914c1c05e9bd520b9c0..96341c6ae4ee09ac717c9d087c6d819c37f83ae0 100644 (file)
@@ -1152,7 +1152,7 @@ sjlj_mark_call_sites (void)
       /* Don't separate a call from it's argument loads.  */
       before = insn;
       if (CALL_P (insn))
-       before = find_first_parameter_load (insn, NULL_RTX);
+       before = find_first_parameter_load (insn, NULL);
 
       start_sequence ();
       mem = adjust_address (crtl->eh.sjlj_fc, TYPE_MODE (integer_type_node),
index e32c5a71cd59d8bf492d1cdbc5586bb9b55526b3..45cbe52070caa52f581224ac1d86f6d0456a800f 100644 (file)
--- a/gcc/rtl.h
+++ b/gcc/rtl.h
@@ -2829,7 +2829,7 @@ extern int in_expr_list_p (const_rtx, const_rtx);
 extern void remove_node_from_expr_list (const_rtx, rtx_expr_list **);
 extern void remove_node_from_insn_list (const rtx_insn *, rtx_insn_list **);
 extern int loc_mentioned_in_p (rtx *, const_rtx);
-extern rtx_insn *find_first_parameter_load (rtx, rtx);
+extern rtx_insn *find_first_parameter_load (rtx_insn *, rtx_insn *);
 extern bool keep_with_call_p (const_rtx);
 extern bool label_is_jump_target_p (const_rtx, const_rtx);
 extern int insn_rtx_cost (rtx, bool);
index e95be62bc8118923b76c4a3f2cdf473e5ed4b8c2..76c4bf08c0611c8a4ce2548e0663b939a98e195c 100644 (file)
@@ -3726,10 +3726,11 @@ parms_set (rtx x, const_rtx pat ATTRIBUTE_UNUSED, void *data)
    to the outer function is passed down as a parameter).
    Do not skip BOUNDARY.  */
 rtx_insn *
-find_first_parameter_load (rtx call_insn, rtx boundary)
+find_first_parameter_load (rtx_insn *call_insn, rtx_insn *boundary)
 {
   struct parms_set_data parm;
-  rtx p, before, first_set;
+  rtx p;
+  rtx_insn *before, *first_set;
 
   /* Since different machines initialize their parameter registers
      in different orders, assume nothing.  Collect the set of all
@@ -3787,7 +3788,7 @@ find_first_parameter_load (rtx call_insn, rtx boundary)
            break;
        }
     }
-  return safe_as_a <rtx_insn *> (first_set);
+  return first_set;
 }
 
 /* Return true if we should avoid inserting code between INSN and preceding