rs6000.c (rs6000_stack_info): For ABI_V4/ABI_SOLARIS -fpic...

* rs6000.c (rs6000_stack_info): For ABI_V4/ABI_SOLARIS -fpic, always
        allocate space in the stack frame for the PIC register.

From-SVN: r28525
This commit is contained in:
Geoff Keating 1999-08-05 00:59:54 -06:00 committed by Jeff Law
parent 14fe6c707f
commit 906fb125a1
2 changed files with 13 additions and 1 deletions

View File

@ -1,3 +1,8 @@
Thu Aug 5 00:56:30 1999 Geoffrey Keating <geoffk@cygnus.com>
* rs6000.c (rs6000_stack_info): For ABI_V4/ABI_SOLARIS -fpic, always
allocate space in the stack frame for the PIC register.
Thu Aug 5 00:20:47 1999 Jeffrey A Law (law@cygnus.com)
* m68k.md (xordi3, anddi3): These patterns are not available on

View File

@ -3644,7 +3644,14 @@ rs6000_stack_info ()
/* Calculate which registers need to be saved & save area size */
info_ptr->first_gp_reg_save = first_reg_to_save ();
info_ptr->gp_size = reg_size * (32 - info_ptr->first_gp_reg_save);
/* Assume that we will have to save PIC_OFFSET_TABLE_REGNUM,
even if it currently looks like we won't. */
if (flag_pic == 1
&& (abi == ABI_V4 || abi == ABI_SOLARIS)
&& info_ptr->first_gp_reg_save > PIC_OFFSET_TABLE_REGNUM)
info_ptr->gp_size = reg_size * (32 - PIC_OFFSET_TABLE_REGNUM);
else
info_ptr->gp_size = reg_size * (32 - info_ptr->first_gp_reg_save);
info_ptr->first_fp_reg_save = first_fp_reg_to_save ();
info_ptr->fp_size = 8 * (64 - info_ptr->first_fp_reg_save);