summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoruweigand <uweigand@138bc75d-0d04-0410-961f-82ee72b054a4>2004-01-22 16:38:14 +0000
committeruweigand <uweigand@138bc75d-0d04-0410-961f-82ee72b054a4>2004-01-22 16:38:14 +0000
commit85307ce1e0e33d9a31ae92b856afbe644c024bf3 (patch)
treee14492f336c3bdca961bcb9452eb3c5f16156bf7
parent7927f9f03d07efe74bb61408e4f509997bc3fe8c (diff)
downloadppe42-gcc-85307ce1e0e33d9a31ae92b856afbe644c024bf3.tar.gz
ppe42-gcc-85307ce1e0e33d9a31ae92b856afbe644c024bf3.zip
* 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@76360 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/config/s390/s390-protos.h2
-rw-r--r--gcc/config/s390/s390.c4
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 <uweigand@de.ibm.com>
+
+ * 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 <roger@eyesopen.com>
Paolo Bonzini <bonzini@gnu.org>
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 ();
OpenPOWER on IntegriCloud