Fix O32 -p bug reported by Ralf Baechle.

* mips/mips.c (compute_frame_size): Not a leaf function if
	profile_flag set.

From-SVN: r16110
This commit is contained in:
Jim Wilson 1997-10-20 21:16:21 +00:00 committed by Jim Wilson
parent f0a9fa6c6a
commit a944a4ebfd
2 changed files with 9 additions and 2 deletions

View File

@ -1,3 +1,8 @@
Mon Oct 20 14:15:02 1997 Jim Wilson <wilson@cygnus.com>
* mips/mips.c (compute_frame_size): Not a leaf function if
profile_flag set.
Mon Oct 20 14:16:38 1997 Geoffrey KEATING <geoffk@ozemail.com.au>
* rs6000/t-ppccomm: Use -msdata=none for crtstuff.

View File

@ -4855,8 +4855,10 @@ compute_frame_size (size)
/* The gp reg is caller saved in the 32 bit ABI, so there is no need
for leaf routines (total_size == extra_size) to save the gp reg.
The gp reg is callee saved in the 64 bit ABI, so all routines must
save the gp reg. */
if (total_size == extra_size && (mips_abi == ABI_32 || mips_abi == ABI_EABI))
save the gp reg. This is not a leaf routine if -p, because of the
call to mcount. */
if (total_size == extra_size && (mips_abi == ABI_32 || mips_abi == ABI_EABI)
&& ! profile_flag)
total_size = extra_size = 0;
else if (TARGET_ABICALLS)
{