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
This commit is contained in:
Richard Sandiford 2008-04-30 19:33:32 +00:00 committed by Richard Sandiford
parent 00d382a8dd
commit ad516a74de
6 changed files with 33 additions and 13 deletions

View File

@ -1,3 +1,24 @@
2008-04-30 Richard Sandiford <rsandifo@nildram.co.uk>
* 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 <rguenther@suse.de>
PR tree-optimization/21636

View File

@ -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);

View File

@ -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;
}

View File

@ -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);

View File

@ -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);

View File

@ -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. */