s390.c (s390_register_info): Don't save fprs for -msoft-float.

2004-10-08  Andreas Krebbel  <krebbel1@de.ibm.com>

	* config/s390/s390.c (s390_register_info): Don't save fprs for
	-msoft-float.
	(s390_conditional_register_usage): Make fprs 'fixed' for -msoft-float.

From-SVN: r88764
This commit is contained in:
Andreas Krebbel 2004-10-08 16:36:09 +00:00 committed by Ulrich Weigand
parent 064e93c2c8
commit 8a512b77f3
2 changed files with 15 additions and 2 deletions

View File

@ -1,3 +1,9 @@
2004-10-08 Andreas Krebbel <krebbel1@de.ibm.com>
* config/s390/s390.c (s390_register_info): Don't save fprs for
-msoft-float.
(s390_conditional_register_usage): Make fprs 'fixed' for -msoft-float.
2004-10-08 Ulrich Weigand <uweigand@de.ibm.com>
* config/s390/s390.h (TARGET_DEFAULT_BACKCHAIN): New define.

View File

@ -6219,8 +6219,9 @@ s390_register_info (int live_regs[])
cfun_frame_layout.last_save_gpr = 6;
/* Mark f0, f2 for 31 bit and f0-f4 for 64 bit to be saved. */
for (i = 0; i < (TARGET_64BIT ? 4 : 2); i++)
cfun_set_fpr_bit (i);
if (TARGET_HARD_FLOAT)
for (i = 0; i < (TARGET_64BIT ? 4 : 2); i++)
cfun_set_fpr_bit (i);
}
if (!TARGET_64BIT)
@ -8403,6 +8404,12 @@ s390_conditional_register_usage (void)
for (i = 18; i < 20; i++)
call_used_regs[i] = call_really_used_regs[i] = 0;
}
if (TARGET_SOFT_FLOAT)
{
for (i = 16; i < 32; i++)
call_used_regs[i] = fixed_regs[i] = 1;
}
}
/* Corresponding function to eh_return expander. */