From: Richard Sandiford Date: Wed, 30 Apr 2008 19:33:32 +0000 (+0000) Subject: arm.c (arm_unwind_emit): Use crtl->all_throwers_are_sibcalls instead of cfun->all_thr... X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=ad516a74de3fede4d52dcd3b8aeb65aa148e14e3;p=gcc.git arm.c (arm_unwind_emit): Use crtl->all_throwers_are_sibcalls instead of cfun->all_throwers_are_sibcalls. gcc/ * config/arm/arm.c (arm_unwind_emit): Use crtl->all_throwers_are_sibcalls instead of cfun->all_throwers_are_sibcalls. (arm_output_fn_unwind): Likewise. * config/frv/frv.c (frv_stack_info): Use crtl->uses_pic_offset_table instead of cfun->uses_pic_offset_table. (frv_expand_prologue): Likewise. (frv_frame_pointer_required): Likewise. (frv_expand_fdpic_call): Likewise. (frv_emit_movsi): Likewise. * config/iq2000/iq2000.c (iq2000_expand_prologue): Use cfun->returns_pcc_struct instead of current_function_returns_pcc_struct. * config/m32c/m32c.c (need_to_save): Use crtl->calls_eh_return instead of cfun->calls_eh_return. (m32c_pushm_popm): Likewise. * config/xtensa/xtensa.h (cfun->calls_alloca): Remove bogus "extern" declaration. From-SVN: r134835 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 9df335e62e6..28225695e1c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,24 @@ +2008-04-30 Richard Sandiford + + * config/arm/arm.c (arm_unwind_emit): Use + crtl->all_throwers_are_sibcalls instead of + cfun->all_throwers_are_sibcalls. + (arm_output_fn_unwind): Likewise. + * config/frv/frv.c (frv_stack_info): Use crtl->uses_pic_offset_table + instead of cfun->uses_pic_offset_table. + (frv_expand_prologue): Likewise. + (frv_frame_pointer_required): Likewise. + (frv_expand_fdpic_call): Likewise. + (frv_emit_movsi): Likewise. + * config/iq2000/iq2000.c (iq2000_expand_prologue): Use + cfun->returns_pcc_struct instead of + current_function_returns_pcc_struct. + * config/m32c/m32c.c (need_to_save): Use crtl->calls_eh_return + instead of cfun->calls_eh_return. + (m32c_pushm_popm): Likewise. + * config/xtensa/xtensa.h (cfun->calls_alloca): Remove bogus + "extern" declaration. + 2008-04-30 Richard Guenther PR tree-optimization/21636 diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c index 82f8352eac2..64f12a16001 100644 --- a/gcc/config/arm/arm.c +++ b/gcc/config/arm/arm.c @@ -18635,7 +18635,7 @@ arm_unwind_emit (FILE * asm_out_file, rtx insn) if (!(flag_unwind_tables || crtl->uses_eh_lsda) && (TREE_NOTHROW (current_function_decl) - || cfun->all_throwers_are_sibcalls)) + || crtl->all_throwers_are_sibcalls)) return; if (GET_CODE (insn) == NOTE || !RTX_FRAME_RELATED_P (insn)) @@ -18724,7 +18724,7 @@ arm_output_fn_unwind (FILE * f, bool prologue) the frame annotations. */ if (!(flag_unwind_tables || crtl->uses_eh_lsda) && (TREE_NOTHROW (current_function_decl) - || cfun->all_throwers_are_sibcalls)) + || crtl->all_throwers_are_sibcalls)) fputs("\t.cantunwind\n", f); fputs ("\t.fnend\n", f); diff --git a/gcc/config/frv/frv.c b/gcc/config/frv/frv.c index a89c8bb9416..ef9aa51b9c5 100644 --- a/gcc/config/frv/frv.c +++ b/gcc/config/frv/frv.c @@ -1175,7 +1175,7 @@ frv_stack_info (void) || (crtl->calls_eh_return && (regno >= FIRST_EH_REGNUM && regno <= LAST_EH_REGNUM)) || (!TARGET_FDPIC && flag_pic - && cfun->uses_pic_offset_table && regno == PIC_REGNO)) + && crtl->uses_pic_offset_table && regno == PIC_REGNO)) { info_ptr->save_p[regno] = REG_SAVE_1WORD; size_1word += UNITS_PER_WORD; @@ -1195,7 +1195,7 @@ frv_stack_info (void) || cfun->machine->frame_needed || (TARGET_LINKED_FP && frame_pointer_needed) || (!TARGET_FDPIC && flag_pic - && cfun->uses_pic_offset_table)) + && crtl->uses_pic_offset_table)) { info_ptr->save_p[LR_REGNO] = REG_SAVE_1WORD; size_1word += UNITS_PER_WORD; @@ -1864,7 +1864,7 @@ frv_expand_prologue (void) emit_insn (gen_blockage ()); /* Set up pic register/small data register for this function. */ - if (!TARGET_FDPIC && flag_pic && cfun->uses_pic_offset_table) + if (!TARGET_FDPIC && flag_pic && crtl->uses_pic_offset_table) emit_insn (gen_pic_prologue (gen_rtx_REG (Pmode, PIC_REGNO), gen_rtx_REG (Pmode, LR_REGNO), gen_rtx_REG (SImode, OFFSET_REGNO))); @@ -2110,7 +2110,7 @@ frv_frame_pointer_required (void) if (!current_function_sp_is_unchanging) return TRUE; - if (!TARGET_FDPIC && flag_pic && cfun->uses_pic_offset_table) + if (!TARGET_FDPIC && flag_pic && crtl->uses_pic_offset_table) return TRUE; if (profile_flag) @@ -3799,7 +3799,7 @@ frv_expand_fdpic_call (rtx *operands, bool ret_value, bool sibcall) x = gen_symGOTOFF2reg (dest, addr, OUR_FDPIC_REG, GEN_INT (R_FRV_FUNCDESC_GOTOFF12)); emit_insn (x); - cfun->uses_pic_offset_table = TRUE; + crtl->uses_pic_offset_table = TRUE; addr = dest; } else if (GET_CODE (addr) == SYMBOL_REF) @@ -4160,7 +4160,7 @@ frv_emit_movsi (rtx dest, rtx src) gen_rtx_REG (Pmode, base_regno), GEN_INT (R_FRV_GPREL12))); if (base_regno == PIC_REGNO) - cfun->uses_pic_offset_table = TRUE; + crtl->uses_pic_offset_table = TRUE; return TRUE; } @@ -4204,7 +4204,7 @@ frv_emit_movsi (rtx dest, rtx src) break; } emit_insn (x); - cfun->uses_pic_offset_table = TRUE; + crtl->uses_pic_offset_table = TRUE; return TRUE; } diff --git a/gcc/config/iq2000/iq2000.c b/gcc/config/iq2000/iq2000.c index 995b93bdc1d..7ee5eda9407 100644 --- a/gcc/config/iq2000/iq2000.c +++ b/gcc/config/iq2000/iq2000.c @@ -1872,7 +1872,7 @@ iq2000_expand_prologue (void) /* If struct value address is treated as the first argument. */ if (aggregate_value_p (DECL_RESULT (fndecl), fndecl) - && ! current_function_returns_pcc_struct + && !cfun->returns_pcc_struct && targetm.calls.struct_value_rtx (TREE_TYPE (fndecl), 1) == 0) { tree type = build_pointer_type (fntype); diff --git a/gcc/config/m32c/m32c.c b/gcc/config/m32c/m32c.c index c19fd4ed2cd..2e5558fd92d 100644 --- a/gcc/config/m32c/m32c.c +++ b/gcc/config/m32c/m32c.c @@ -1251,7 +1251,7 @@ need_to_save (int regno) { if (fixed_regs[regno]) return 0; - if (cfun->calls_eh_return) + if (crtl->calls_eh_return) return 1; if (regno == FP_REGNO) return 0; @@ -1283,7 +1283,7 @@ m32c_pushm_popm (Push_Pop_Type ppt) if (crtl->return_rtx && GET_CODE (crtl->return_rtx) == PARALLEL - && !(cfun->calls_eh_return || cfun->machine->is_interrupt)) + && !(crtl->calls_eh_return || cfun->machine->is_interrupt)) { rtx exp = XVECEXP (crtl->return_rtx, 0, 0); rtx rv = XEXP (exp, 0); diff --git a/gcc/config/xtensa/xtensa.h b/gcc/config/xtensa/xtensa.h index 17fd4971fa6..eaef97e2094 100644 --- a/gcc/config/xtensa/xtensa.h +++ b/gcc/config/xtensa/xtensa.h @@ -23,7 +23,6 @@ along with GCC; see the file COPYING3. If not see #include "xtensa-config.h" /* Standard GCC variables that we reference. */ -extern int cfun->calls_alloca; extern int optimize; /* External variables defined in xtensa.c. */