gcc/ * builtins.c (expand_builtin_longjmp): Strengthen locals "insn" and "last" from rtx to rtx_insn *. (expand_builtin_nonlocal_goto): Likewise for local "insn". (expand_builtin_apply): Strengthen local "call_insn" from rtx to rtx_call_insn *. (expand_errno_check): Strengthen local "lab" from rtx to rtx_code_label *. (expand_builtin_mathfn): Strengthen local "insns" from rtx to rtx_insn *. (expand_builtin_mathfn_2): Likewise. (expand_builtin_mathfn_ternary): Likewise. (expand_builtin_mathfn_3): Likewise. (expand_builtin_interclass_mathfn): Likewise for local "last". (expand_builtin_int_roundingfn): Likewise for local "insns". (expand_builtin_int_roundingfn_2): Likewise. (expand_builtin_strlen): Likewise for local "before_strlen". (expand_builtin_strncmp): Likewise for local "seq". (expand_builtin_signbit): Likewise for local "last". (expand_builtin_atomic_compare_exchange): Strengthen local "label" from rtx to rtx_code_label *. (expand_stack_restore): Strengthen local "prev" from rtx to rtx_insn *. --- gcc/builtins.c | 45 +++++++++++++++++++++++++++++---------------- 1 file changed, 29 insertions(+), 16 deletions(-)
diff --git a/gcc/builtins.c b/gcc/builtins.c index 140d6ba..0443211 100644 --- a/gcc/builtins.c +++ b/gcc/builtins.c @@ -992,7 +992,8 @@ expand_builtin_setjmp_receiver (rtx receiver_label ATTRIBUTE_UNUSED) static void expand_builtin_longjmp (rtx buf_addr, rtx value) { - rtx fp, lab, stack, insn, last; + rtx fp, lab, stack; + rtx_insn *insn, *last; enum machine_mode sa_mode = STACK_SAVEAREA_MODE (SAVE_NONLOCAL); /* DRAP is needed for stack realign if longjmp is expanded to current @@ -1136,7 +1137,8 @@ static rtx expand_builtin_nonlocal_goto (tree exp) { tree t_label, t_save_area; - rtx r_label, r_save_area, r_fp, r_sp, insn; + rtx r_label, r_save_area, r_fp, r_sp; + rtx_insn *insn; if (!validate_arglist (exp, POINTER_TYPE, POINTER_TYPE, VOID_TYPE)) return NULL_RTX; @@ -1600,7 +1602,8 @@ expand_builtin_apply (rtx function, rtx arguments, rtx argsize) { int size, align, regno; enum machine_mode mode; - rtx incoming_args, result, reg, dest, src, call_insn; + rtx incoming_args, result, reg, dest, src; + rtx_call_insn *call_insn; rtx old_stack_level = 0; rtx call_fusage = 0; rtx struct_value = targetm.calls.struct_value_rtx (cfun ? TREE_TYPE (cfun->decl) : 0, 0); @@ -1995,7 +1998,7 @@ mathfn_built_in (tree type, enum built_in_function fn) static void expand_errno_check (tree exp, rtx target) { - rtx lab = gen_label_rtx (); + rtx_code_label *lab = gen_label_rtx (); /* Test the result; if it is NaN, set errno=EDOM because the argument was not in the domain. */ @@ -2042,7 +2045,8 @@ static rtx expand_builtin_mathfn (tree exp, rtx target, rtx subtarget) { optab builtin_optab; - rtx op0, insns; + rtx op0; + rtx_insn *insns; tree fndecl = get_callee_fndecl (exp); enum machine_mode mode; bool errno_set = false; @@ -2168,7 +2172,8 @@ static rtx expand_builtin_mathfn_2 (tree exp, rtx target, rtx subtarget) { optab builtin_optab; - rtx op0, op1, insns, result; + rtx op0, op1, result; + rtx_insn *insns; int op1_type = REAL_TYPE; tree fndecl = get_callee_fndecl (exp); tree arg0, arg1; @@ -2277,7 +2282,8 @@ static rtx expand_builtin_mathfn_ternary (tree exp, rtx target, rtx subtarget) { optab builtin_optab; - rtx op0, op1, op2, insns, result; + rtx op0, op1, op2, result; + rtx_insn *insns; tree fndecl = get_callee_fndecl (exp); tree arg0, arg1, arg2; enum machine_mode mode; @@ -2350,7 +2356,8 @@ static rtx expand_builtin_mathfn_3 (tree exp, rtx target, rtx subtarget) { optab builtin_optab; - rtx op0, insns; + rtx op0; + rtx_insn *insns; tree fndecl = get_callee_fndecl (exp); enum machine_mode mode; tree arg; @@ -2509,7 +2516,7 @@ expand_builtin_interclass_mathfn (tree exp, rtx target) if (icode != CODE_FOR_nothing) { struct expand_operand ops[1]; - rtx last = get_last_insn (); + rtx_insn *last = get_last_insn (); tree orig_arg = arg; /* Wrap the computation of the argument in a SAVE_EXPR, as we may @@ -2727,7 +2734,8 @@ static rtx expand_builtin_int_roundingfn (tree exp, rtx target) { convert_optab builtin_optab; - rtx op0, insns, tmp; + rtx op0, tmp; + rtx_insn *insns; tree fndecl = get_callee_fndecl (exp); enum built_in_function fallback_fn; tree fallback_fndecl; @@ -2863,7 +2871,8 @@ static rtx expand_builtin_int_roundingfn_2 (tree exp, rtx target) { convert_optab builtin_optab; - rtx op0, insns; + rtx op0; + rtx_insn *insns; tree fndecl = get_callee_fndecl (exp); tree arg; enum machine_mode mode; @@ -3012,7 +3021,8 @@ expand_builtin_strlen (tree exp, rtx target, rtx pat; tree len; tree src = CALL_EXPR_ARG (exp, 0); - rtx src_reg, before_strlen; + rtx src_reg; + rtx_insn *before_strlen; enum machine_mode insn_mode = target_mode; enum insn_code icode = CODE_FOR_nothing; unsigned int align; @@ -4183,7 +4193,8 @@ expand_builtin_strncmp (tree exp, ATTRIBUTE_UNUSED rtx target, rtx expand_builtin_saveregs (void) { - rtx val, seq; + rtx val; + rtx_insn *seq; /* Don't do __builtin_saveregs more than once in a function. Save the result of the first call and reuse it. */ @@ -4898,7 +4909,7 @@ expand_builtin_signbit (tree exp, rtx target) icode = optab_handler (signbit_optab, fmode); if (icode != CODE_FOR_nothing) { - rtx last = get_last_insn (); + rtx_insn *last = get_last_insn (); target = gen_reg_rtx (TYPE_MODE (TREE_TYPE (exp))); if (maybe_emit_unop_insn (icode, target, temp, UNKNOWN)) return target; @@ -5305,7 +5316,8 @@ static rtx expand_builtin_atomic_compare_exchange (enum machine_mode mode, tree exp, rtx target) { - rtx expect, desired, mem, oldval, label; + rtx expect, desired, mem, oldval; + rtx_code_label *label; enum memmodel success, failure; tree weak; bool is_weak; @@ -5763,7 +5775,8 @@ expand_builtin_set_thread_pointer (tree exp) static void expand_stack_restore (tree var) { - rtx prev, sa = expand_normal (var); + rtx_insn *prev; + rtx sa = expand_normal (var); sa = convert_memory_address (Pmode, sa); -- 1.8.5.3