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:
parent
d604bca364
commit
cf5ee7207d
|
@ -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
|
||||
|
|
|
@ -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,
|
||||
|
|
Loading…
Reference in New Issue