diff options
author | David Malcolm <dmalcolm@gcc.gnu.org> | 2014-08-28 20:49:58 +0000 |
---|---|---|
committer | David Malcolm <dmalcolm@gcc.gnu.org> | 2014-08-28 20:49:58 +0000 |
commit | 9321cf00db4930103c0e473e82f12135404c22ba (patch) | |
tree | f677bb27a1e6ea39bcd5c3b8a8062db4a6ee4309 | |
parent | bdda9b179dab8cce7cb1308d327fc6eb9ba53694 (diff) | |
download | gcc-9321cf00db4930103c0e473e82f12135404c22ba.zip gcc-9321cf00db4930103c0e473e82f12135404c22ba.tar.gz gcc-9321cf00db4930103c0e473e82f12135404c22ba.tar.bz2 |
find_first_parameter_load params and return type
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
-rw-r--r-- | gcc/except.c | 2 | ||||
-rw-r--r-- | gcc/rtl.h | 2 | ||||
-rw-r--r-- | gcc/rtlanal.c | 7 |
3 files changed, 6 insertions, 5 deletions
diff --git a/gcc/except.c b/gcc/except.c index 5cdfb68..96341c6 100644 --- a/gcc/except.c +++ b/gcc/except.c @@ -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), @@ -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); diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c index e95be62..76c4bf0 100644 --- a/gcc/rtlanal.c +++ b/gcc/rtlanal.c @@ -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 |