s390.c (s390_emit_epilogue): Always restore registers needed by the compiler...

* config/s390/s390.c (s390_emit_epilogue): Always restore registers
needed by the compiler, even if they are used as global regs.

From-SVN: r52768
This commit is contained in:
Ulrich Weigand 2002-04-25 21:26:04 +00:00 committed by Ulrich Weigand
parent d604bca364
commit cf5ee7207d
2 changed files with 13 additions and 0 deletions

View File

@ -1,3 +1,8 @@
2002-04-25 Ulrich Weigand <uweigand@de.ibm.com>
* config/s390/s390.c (s390_emit_epilogue): Always restore registers
needed by the compiler, even if they are used as global regs.
2002-04-25 Matt Hiller <hiller@redhat.com>
* mips.c (mips_class_max_nregs, mips_register_move_cost): New

View File

@ -3255,6 +3255,14 @@ s390_emit_epilogue ()
i <= frame.last_save_gpr;
i++)
{
/* These registers are special and need to be
restored in any case. */
if (i == STACK_POINTER_REGNUM
|| i == RETURN_REGNUM
|| i == BASE_REGISTER
|| (flag_pic && i == PIC_OFFSET_TABLE_REGNUM))
continue;
if (global_regs[i])
{
addr = plus_constant (frame_pointer,