int gp_size; /* size of saved GP registers */
int fp_size; /* size of saved FP registers */
int altivec_size; /* size of saved AltiVec registers */
- int cr_size; /* size to hold CR if not in save_size */
- int vrsave_size; /* size to hold VRSAVE if not in save_size */
- int altivec_padding_size; /* size of altivec alignment padding if
- not in save_size */
+ int cr_size; /* size to hold CR if not in fixed area */
+ int vrsave_size; /* size to hold VRSAVE */
+ int altivec_padding_size; /* size of altivec alignment padding */
int spe_gp_size; /* size of 64-bit GPR save size for SPE */
int spe_padding_size;
HOST_WIDE_INT total_size; /* total bytes allocated for stack */
&& info->first_altivec_reg_save == LAST_ALTIVEC_REGNO + 1
&& ! info->lr_save_p
&& ! info->cr_save_p
- && info->vrsave_mask == 0
+ && info->vrsave_size == 0
&& ! info->push_p)
return 1;
}
|| info->first_fp_reg_save < 64
|| info->first_gp_reg_save < 32
|| info->altivec_size != 0
- || info->vrsave_mask != 0
+ || info->vrsave_size != 0
|| crtl->calls_eh_return)
ptr_regno = 12;
else
/* Save AltiVec registers if needed. Save here because the red zone does
not always include AltiVec registers. */
- if (!WORLD_SAVE_P (info) && TARGET_ALTIVEC_ABI
+ if (!WORLD_SAVE_P (info)
&& info->altivec_size != 0 && (strategy & SAVE_INLINE_VRS) == 0)
{
int end_save = info->altivec_save_offset + info->altivec_size;
frame_off = ptr_off;
}
}
- else if (!WORLD_SAVE_P (info) && TARGET_ALTIVEC_ABI
+ else if (!WORLD_SAVE_P (info)
&& info->altivec_size != 0)
{
int i;
epilogue. */
if (!WORLD_SAVE_P (info)
- && TARGET_ALTIVEC
- && TARGET_ALTIVEC_VRSAVE
- && info->vrsave_mask != 0)
+ && info->vrsave_size != 0)
{
rtx reg, vrsave;
int offset;
/* Restore AltiVec registers if we must do so before adjusting the
stack. */
- if (TARGET_ALTIVEC_ABI
- && info->altivec_size != 0
+ if (info->altivec_size != 0
&& (ALWAYS_RESTORE_ALTIVEC_BEFORE_POP
|| (DEFAULT_ABI != ABI_V4
&& offset_below_red_zone_p (info->altivec_save_offset))))
}
/* Restore VRSAVE if we must do so before adjusting the stack. */
- if (TARGET_ALTIVEC
- && TARGET_ALTIVEC_VRSAVE
- && info->vrsave_mask != 0
+ if (info->vrsave_size != 0
&& (ALWAYS_RESTORE_ALTIVEC_BEFORE_POP
|| (DEFAULT_ABI != ABI_V4
&& offset_below_red_zone_p (info->vrsave_save_offset))))
/* Restore AltiVec registers if we have not done so already. */
if (!ALWAYS_RESTORE_ALTIVEC_BEFORE_POP
- && TARGET_ALTIVEC_ABI
&& info->altivec_size != 0
&& (DEFAULT_ABI == ABI_V4
|| !offset_below_red_zone_p (info->altivec_save_offset)))
/* Restore VRSAVE if we have not done so already. */
if (!ALWAYS_RESTORE_ALTIVEC_BEFORE_POP
- && TARGET_ALTIVEC
- && TARGET_ALTIVEC_VRSAVE
- && info->vrsave_mask != 0
+ && info->vrsave_size != 0
&& (DEFAULT_ABI == ABI_V4
|| !offset_below_red_zone_p (info->vrsave_save_offset)))
{