2007-10-18 Richard Sandiford <rsandifo@nildram.co.uk>
+ * config/mips/mips.c (mips_frame_info): Remove gp_reg_size and
+ and fp_reg_size.
+ (mips_compute_frame_info): Remove associated code.
+ (mips16e_build_save_restore): Check num_fp instead of fp_reg_size.
+
+2007-10-18 Richard Sandiford <rsandifo@nildram.co.uk>
+
* config/mips/mips-protos.h (compute_frame_size): Delete.
* config/mips/mips.h: Update comments.
* config/mips/mips.c (mips_frame_info): Remove initialized.
is no such slot. */
HOST_WIDE_INT cprestore_size;
- /* The size in bytes of the GPR and FPR save areas. */
- HOST_WIDE_INT gp_reg_size;
- HOST_WIDE_INT fp_reg_size;
-
/* Bit X is set if the function saves or restores GPR X. */
unsigned int mask;
unsigned int i, regno;
int n;
- gcc_assert (cfun->machine->frame.fp_reg_size == 0);
+ gcc_assert (cfun->machine->frame.num_fp == 0);
/* Calculate the number of elements in the PARALLEL. We need one element
for the stack adjustment, one for each argument register save, and one
/* Move above the GPR save area. */
if (frame->num_gp > 0)
{
- frame->gp_reg_size = frame->num_gp * UNITS_PER_WORD;
- offset += MIPS_STACK_ALIGN (frame->gp_reg_size);
+ offset += MIPS_STACK_ALIGN (frame->num_gp * UNITS_PER_WORD);
frame->gp_sp_offset = offset - UNITS_PER_WORD;
}
/* Move above the FPR save area. */
if (frame->num_fp > 0)
{
- frame->fp_reg_size = frame->num_fp * UNITS_PER_FPREG;
- offset += MIPS_STACK_ALIGN (frame->fp_reg_size);
+ offset += MIPS_STACK_ALIGN (frame->num_fp * UNITS_PER_FPREG);
frame->fp_sp_offset = offset - UNITS_PER_HWFPVALUE;
}