diff options
Diffstat (limited to 'gcc/combine.c')
-rw-r--r-- | gcc/combine.c | 40 |
1 files changed, 0 insertions, 40 deletions
diff --git a/gcc/combine.c b/gcc/combine.c index 0fbaeba..3ae08ed 100644 --- a/gcc/combine.c +++ b/gcc/combine.c @@ -345,7 +345,6 @@ static void setup_incoming_promotions (void); static void set_nonzero_bits_and_sign_copies (rtx, rtx, void *); static int cant_combine_insn_p (rtx); static int can_combine_p (rtx, rtx, rtx, rtx, rtx *, rtx *); -static int sets_function_arg_p (rtx); static int combinable_i3pat (rtx, rtx *, rtx, rtx, int, rtx *); static int contains_muldiv (rtx); static rtx try_combine (rtx, rtx, rtx, int *); @@ -1205,45 +1204,6 @@ can_combine_p (rtx insn, rtx i3, rtx pred ATTRIBUTE_UNUSED, rtx succ, return 1; } -/* Check if PAT is an insn - or a part of it - used to set up an - argument for a function in a hard register. */ - -static int -sets_function_arg_p (rtx pat) -{ - int i; - rtx inner_dest; - - switch (GET_CODE (pat)) - { - case INSN: - return sets_function_arg_p (PATTERN (pat)); - - case PARALLEL: - for (i = XVECLEN (pat, 0); --i >= 0;) - if (sets_function_arg_p (XVECEXP (pat, 0, i))) - return 1; - - break; - - case SET: - inner_dest = SET_DEST (pat); - while (GET_CODE (inner_dest) == STRICT_LOW_PART - || GET_CODE (inner_dest) == SUBREG - || GET_CODE (inner_dest) == ZERO_EXTRACT) - inner_dest = XEXP (inner_dest, 0); - - return (GET_CODE (inner_dest) == REG - && REGNO (inner_dest) < FIRST_PSEUDO_REGISTER - && FUNCTION_ARG_REGNO_P (REGNO (inner_dest))); - - default: - break; - } - - return 0; -} - /* LOC is the location within I3 that contains its pattern or the component of a PARALLEL of the pattern. We validate that it is valid for combining. |