aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Krebbel <krebbel1@de.ibm.com>2005-10-19 11:00:03 +0000
committerAndreas Krebbel <krebbel@gcc.gnu.org>2005-10-19 11:00:03 +0000
commitf695eccf71367a91aa87a4ff5a61d365da305d94 (patch)
tree8bf9f0bec953868197c70df044f850d5f8d177c9
parentd1f36c51be6d9560caa7931e970bd1905da2ebe5 (diff)
downloadgcc-f695eccf71367a91aa87a4ff5a61d365da305d94.zip
gcc-f695eccf71367a91aa87a4ff5a61d365da305d94.tar.gz
gcc-f695eccf71367a91aa87a4ff5a61d365da305d94.tar.bz2
s390.c (override_options): Added check for -mstack-size 64k limitation.
2005-10-19 Andreas Krebbel <krebbel1@de.ibm.com> * config/s390/s390.c (override_options): Added check for -mstack-size 64k limitation. * doc/invoke.texi: Mention that limit in the documenation. From-SVN: r105609
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/s390/s390.c2
-rw-r--r--gcc/doc/invoke.texi5
3 files changed, 11 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index c032c98..2b626a3 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2005-10-19 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * config/s390/s390.c (override_options): Added check for -mstack-size
+ 64k limitation.
+ * doc/invoke.texi: Mention that limit in the documenation.
+
2005-10-18 Paolo Bonzini <bonzini@gnu.org>
PR #19672
diff --git a/gcc/config/s390/s390.c b/gcc/config/s390/s390.c
index 5284db1..7c0d984 100644
--- a/gcc/config/s390/s390.c
+++ b/gcc/config/s390/s390.c
@@ -1385,6 +1385,8 @@ override_options (void)
error ("-mstack-size implies use of -mstack-guard");
else if (s390_stack_guard >= s390_stack_size)
error ("stack size must be greater than the stack guard value");
+ else if (s390_stack_size > 1 << 16)
+ error ("stack size must not be greater than 64k");
}
else if (s390_stack_guard)
error ("-mstack-guard implies use of -mstack-size");
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 4d8e67a..8bbbb04 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -11659,9 +11659,10 @@ back end emits additional instructions in the function prologue which trigger a
if the stack size is @var{stack-guard} bytes above the @var{stack-size}
(remember that the stack on s390 grows downward). These options are intended to
be used to help debugging stack overflow problems. The additionally emitted code
-cause only little overhead and hence can also be used in production like systems
+causes only little overhead and hence can also be used in production like systems
without greater performance degradation. The given values have to be exact
-powers of 2 and @var{stack-size} has to be greater than @var{stack-guard}.
+powers of 2 and @var{stack-size} has to be greater than @var{stack-guard} without
+exceeding 64k.
In order to be efficient the extra code makes the assumption that the stack starts
at an address aligned to the value given by @var{stack-size}.
@end table