From 0067d1217b227d7b74117f5a99a1ecbebcc4c731 Mon Sep 17 00:00:00 2001 From: Ulrich Weigand Date: Thu, 22 Jan 2004 16:38:14 +0000 Subject: [PATCH] s390.c (s390_frame_info): Allow large frame sizes for TARGET_64BIT. * config/s390/s390.c (s390_frame_info): Allow large frame sizes for TARGET_64BIT. (s390_arg_frame_offset): Change return type to HOST_WIDE_INT. * config/s390/s390-protos.h (s390_arg_frame_offset): Likewise. From-SVN: r76360 --- gcc/ChangeLog | 7 +++++++ gcc/config/s390/s390-protos.h | 2 +- gcc/config/s390/s390.c | 4 ++-- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 22c095a6254..2d68f8a9baa 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2004-01-22 Ulrich Weigand + + * config/s390/s390.c (s390_frame_info): Allow large frame sizes + for TARGET_64BIT. + (s390_arg_frame_offset): Change return type to HOST_WIDE_INT. + * config/s390/s390-protos.h (s390_arg_frame_offset): Likewise. + 2004-01-22 Roger Sayle Paolo Bonzini diff --git a/gcc/config/s390/s390-protos.h b/gcc/config/s390/s390-protos.h index c45ff4dcd0f..d769c6aa688 100644 --- a/gcc/config/s390/s390-protos.h +++ b/gcc/config/s390/s390-protos.h @@ -23,7 +23,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA extern void optimization_options (int, int); extern void override_options (void); -extern int s390_arg_frame_offset (void); +extern HOST_WIDE_INT s390_arg_frame_offset (void); extern void s390_load_got (int); extern void s390_emit_prologue (void); extern void s390_emit_epilogue (void); diff --git a/gcc/config/s390/s390.c b/gcc/config/s390/s390.c index 555836856e4..e19bf007879 100644 --- a/gcc/config/s390/s390.c +++ b/gcc/config/s390/s390.c @@ -5303,7 +5303,7 @@ s390_frame_info (void) int i, j; HOST_WIDE_INT fsize = get_frame_size (); - if (fsize > 0x7fff0000) + if (!TARGET_64BIT && fsize > 0x7fff0000) fatal_error ("Total size of local variables exceeds architecture limit."); /* fprs 8 - 15 are caller saved for 64 Bit ABI. */ @@ -5376,7 +5376,7 @@ s390_frame_info (void) /* Return offset between argument pointer and frame pointer initially after prologue. */ -int +HOST_WIDE_INT s390_arg_frame_offset (void) { HOST_WIDE_INT fsize = get_frame_size ();