Add dg-add-options feature stack_size
authorTom de Vries <tom@codesourcery.com>
Wed, 21 Jun 2017 09:10:16 +0000 (09:10 +0000)
committerTom de Vries <vries@gcc.gnu.org>
Wed, 21 Jun 2017 09:10:16 +0000 (09:10 +0000)
2017-06-21  Tom de Vries  <tom@codesourcery.com>

* doc/sourcebuild.texi (Add Options, Features for dg-add-options): Add
stack_size feature.
(Effective-Target Keywords, Other attributes): Suggest using
dg-add-options stack_size feature to get stack limit in stack_size
effective target documentation.

* lib/target-supports.exp (add_options_for_stack_size): New proc.
* gcc.c-torture/execute/920501-7.c: Use dg-add-options stack_size.
* gcc.c-torture/compile/20080806-1.c: Same.
* gcc.c-torture/compile/920723-1.c: Same.
* gcc.c-torture/compile/930621-1.c: Same.
* gcc.c-torture/compile/991214-2.c: Same.
* gcc.c-torture/compile/bcopy.c: Same.
* gcc.c-torture/compile/memtst.c: Same.
* gcc.c-torture/compile/msp.c: Same.
* gcc.c-torture/compile/stuct.c: Same.
* gcc.c-torture/execute/20011008-3.c: Same.
* gcc.c-torture/execute/20030209-1.c: Same.
* gcc.c-torture/execute/20031012-1.c: Same.
* gcc.c-torture/execute/20040805-1.c: Same.
* gcc.c-torture/execute/920410-1.c: Same.
* gcc.c-torture/execute/921113-1.c: Same.
* gcc.c-torture/execute/921202-1.c: Same.
* gcc.c-torture/execute/921208-2.c: Same.
* gcc.c-torture/execute/930106-1.c: Same.
* gcc.c-torture/execute/930406-1.c: Same.
* gcc.c-torture/execute/950221-1.c: Same.
* gcc.c-torture/execute/960521-1.c: Same.
* gcc.c-torture/execute/980605-1.c: Same.
* gcc.c-torture/execute/comp-goto-1.c: Same.
* gcc.c-torture/execute/comp-goto-2.c: Same.
* gcc.c-torture/execute/memcpy-1.c: Same.
* gcc.c-torture/execute/multi-ix.c: Same.
* gcc.c-torture/execute/nestfunc-4.c: Same.
* gcc.c-torture/execute/pr20621-1.c: Same.
* gcc.c-torture/execute/pr23135.c: Same.
* gcc.c-torture/execute/pr28982b.c: Same.
* gcc.dg/loop-3.c: Same.
* gcc.dg/struct-ret-3.c: Same.
* gcc.dg/torture/stackalign/comp-goto-1.c: Same.
* gcc.dg/torture/stackalign/non-local-goto-4.c: Same.
* gcc.dg/tree-prof/comp-goto-1.c: Same.
* gcc.dg/tree-prof/pr44777.c: Same.

From-SVN: r249440

40 files changed:
gcc/ChangeLog
gcc/doc/sourcebuild.texi
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.c-torture/compile/20080806-1.c
gcc/testsuite/gcc.c-torture/compile/920723-1.c
gcc/testsuite/gcc.c-torture/compile/930621-1.c
gcc/testsuite/gcc.c-torture/compile/991214-2.c
gcc/testsuite/gcc.c-torture/compile/bcopy.c
gcc/testsuite/gcc.c-torture/compile/memtst.c
gcc/testsuite/gcc.c-torture/compile/msp.c
gcc/testsuite/gcc.c-torture/compile/stuct.c
gcc/testsuite/gcc.c-torture/execute/20011008-3.c
gcc/testsuite/gcc.c-torture/execute/20030209-1.c
gcc/testsuite/gcc.c-torture/execute/20031012-1.c
gcc/testsuite/gcc.c-torture/execute/20040805-1.c
gcc/testsuite/gcc.c-torture/execute/920410-1.c
gcc/testsuite/gcc.c-torture/execute/920501-7.c
gcc/testsuite/gcc.c-torture/execute/921113-1.c
gcc/testsuite/gcc.c-torture/execute/921202-1.c
gcc/testsuite/gcc.c-torture/execute/921208-2.c
gcc/testsuite/gcc.c-torture/execute/930106-1.c
gcc/testsuite/gcc.c-torture/execute/930406-1.c
gcc/testsuite/gcc.c-torture/execute/950221-1.c
gcc/testsuite/gcc.c-torture/execute/960521-1.c
gcc/testsuite/gcc.c-torture/execute/980605-1.c
gcc/testsuite/gcc.c-torture/execute/comp-goto-1.c
gcc/testsuite/gcc.c-torture/execute/comp-goto-2.c
gcc/testsuite/gcc.c-torture/execute/memcpy-1.c
gcc/testsuite/gcc.c-torture/execute/multi-ix.c
gcc/testsuite/gcc.c-torture/execute/nestfunc-4.c
gcc/testsuite/gcc.c-torture/execute/pr20621-1.c
gcc/testsuite/gcc.c-torture/execute/pr23135.c
gcc/testsuite/gcc.c-torture/execute/pr28982b.c
gcc/testsuite/gcc.dg/loop-3.c
gcc/testsuite/gcc.dg/struct-ret-3.c
gcc/testsuite/gcc.dg/torture/stackalign/comp-goto-1.c
gcc/testsuite/gcc.dg/torture/stackalign/non-local-goto-4.c
gcc/testsuite/gcc.dg/tree-prof/comp-goto-1.c
gcc/testsuite/gcc.dg/tree-prof/pr44777.c
gcc/testsuite/lib/target-supports.exp

index 58b7473bdb24c0b128435dbf7dbf8e27a522a518..199a01fc6e2e3ece45cd8ddc867e189787f6959d 100644 (file)
@@ -1,3 +1,11 @@
+2017-06-21  Tom de Vries  <tom@codesourcery.com>
+
+       * doc/sourcebuild.texi (Add Options, Features for dg-add-options): Add
+       stack_size feature.
+       (Effective-Target Keywords, Other attributes): Suggest using
+       dg-add-options stack_size feature to get stack limit in stack_size
+       effective target documentation.
+
 2017-06-21  Julian Brown  <julian@codesourcery.com>
            Naveen H.S  <Naveen.Hurugalawadi@cavium.com>
 
index e5f0da6a49bd6395cfd00b5a86ebda06277d7a03..7f5c2cf58c40e7b2369d30c098950f0883fa157a 100644 (file)
@@ -2097,11 +2097,10 @@ Target supports section anchors.
 Target defaults to short enums.
 
 @item stack_size
-Target has limited stack size.  The stack size limit can be obtained using
-@code{[dg-effective-target-value stack_size]}.  For example:
-@smallexample
-/* @{ dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" @{ target @{ stack_size @} @} @} */
-@end smallexample
+@anchor{stack_size_et}
+Target has limited stack size.  The stack size limit can be obtained using the
+STACK_SIZE macro defined by @ref{stack_size_ao,,@code{dg-add-options} feature
+@code{stack_size}}.
 
 @item static
 Target supports @option{-static}.
@@ -2282,6 +2281,12 @@ compliance mode.
 @code{mips16} function attributes.
 Only MIPS targets support this feature, and only then in certain modes.
 
+@item stack_size
+@anchor{stack_size_ao}
+Add the flags needed to define macro STACK_SIZE and set it to the stack size
+limit associated with the @ref{stack_size_et,,@code{stack_size} effective
+target}.
+
 @item tls
 Add the target-specific flags needed to use thread-local storage.
 @end table
index d5d658fcda716c78c2a4674b0d02382a48b0a93f..a7524ac3fe75d35999d80bf0e67a245667177984 100644 (file)
@@ -1,3 +1,43 @@
+2017-06-21  Tom de Vries  <tom@codesourcery.com>
+
+       * lib/target-supports.exp (add_options_for_stack_size): New proc.
+       * gcc.c-torture/execute/920501-7.c: Use dg-add-options stack_size.
+       * gcc.c-torture/compile/20080806-1.c: Same.
+       * gcc.c-torture/compile/920723-1.c: Same.
+       * gcc.c-torture/compile/930621-1.c: Same.
+       * gcc.c-torture/compile/991214-2.c: Same.
+       * gcc.c-torture/compile/bcopy.c: Same.
+       * gcc.c-torture/compile/memtst.c: Same.
+       * gcc.c-torture/compile/msp.c: Same.
+       * gcc.c-torture/compile/stuct.c: Same.
+       * gcc.c-torture/execute/20011008-3.c: Same.
+       * gcc.c-torture/execute/20030209-1.c: Same.
+       * gcc.c-torture/execute/20031012-1.c: Same.
+       * gcc.c-torture/execute/20040805-1.c: Same.
+       * gcc.c-torture/execute/920410-1.c: Same.
+       * gcc.c-torture/execute/921113-1.c: Same.
+       * gcc.c-torture/execute/921202-1.c: Same.
+       * gcc.c-torture/execute/921208-2.c: Same.
+       * gcc.c-torture/execute/930106-1.c: Same.
+       * gcc.c-torture/execute/930406-1.c: Same.
+       * gcc.c-torture/execute/950221-1.c: Same.
+       * gcc.c-torture/execute/960521-1.c: Same.
+       * gcc.c-torture/execute/980605-1.c: Same.
+       * gcc.c-torture/execute/comp-goto-1.c: Same.
+       * gcc.c-torture/execute/comp-goto-2.c: Same.
+       * gcc.c-torture/execute/memcpy-1.c: Same.
+       * gcc.c-torture/execute/multi-ix.c: Same.
+       * gcc.c-torture/execute/nestfunc-4.c: Same.
+       * gcc.c-torture/execute/pr20621-1.c: Same.
+       * gcc.c-torture/execute/pr23135.c: Same.
+       * gcc.c-torture/execute/pr28982b.c: Same.
+       * gcc.dg/loop-3.c: Same.
+       * gcc.dg/struct-ret-3.c: Same.
+       * gcc.dg/torture/stackalign/comp-goto-1.c: Same.
+       * gcc.dg/torture/stackalign/non-local-goto-4.c: Same.
+       * gcc.dg/tree-prof/comp-goto-1.c: Same.
+       * gcc.dg/tree-prof/pr44777.c: Same.
+
 2017-06-20  David Malcolm  <dmalcolm@redhat.com>
 
        PR jit/81144
index d0ee9cc2e6c534b485e32a206e51a90cc9bfb04c..45f29d1cf1146110ea64b178b1e72e2d9561b6a5 100644 (file)
@@ -1,4 +1,4 @@
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 /* This used to ICE on s390x due to a reload bug.  */
 
index c6351c372619bb2714f35ef68c47e06c9f0003c0..cd8710be7e87ba76d752d791b1102c4d4578107a 100644 (file)
@@ -1,4 +1,4 @@
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 #if defined(STACK_SIZE) && STACK_SIZE < 65536
 # define GITT_SIZE 75
index 13e997a49ccdfc8fdc7de69bf6731fcdaed6b5b4..ce0f25b173f5c5a48819326b2e4cbe1b1c2053a8 100644 (file)
@@ -1,4 +1,4 @@
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 #if defined(STACK_SIZE) && (STACK_SIZE < 65536)
 # define BYTEMEM_SIZE 10000L
index 32dad4ff864c8a2c6c6c2e7bdc2baa413a0e932b..79df35713fcb15c54ee7a5168a527f3366420965 100644 (file)
@@ -1,4 +1,4 @@
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 #if defined(STACK_SIZE) && (STACK_SIZE < 65536)
 # define HISTO_SIZE 9
index cb7c05dda015f970137d816e26edcb8aff4f93d6..8108f296600c965974ad67b0569096b038ee26e6 100644 (file)
@@ -1,4 +1,4 @@
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 void
 bcopy1 (s, d, c)
index e165a2297e8790adc42836135236605f9d9f49e7..44cdaf8e83a92ff75240ab077640be5199497ec8 100644 (file)
@@ -1,4 +1,4 @@
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 #ifdef STACK_SIZE
 #define SIZE STACK_SIZE / 8
index 594cecb6721f7fc200ba085165fb1fb2cc5a64cb..263a873e26426b3a92440c77d8c56e0e7e214f79 100644 (file)
@@ -1,4 +1,4 @@
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 #ifdef STACK_SIZE
 # define A_SIZE (STACK_SIZE/sizeof(int))
index 59acd571ba67597386ff13ddbde0945bccb9fe55..b70957e9891c0114dad4b2d3aecb13aee6be2854 100644 (file)
@@ -1,4 +1,4 @@
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 #ifdef STACK_SIZE
 #define SIZE STACK_SIZE / 8
index 2fd6871e757b3ed862b7a8cf8c8d731cb567f2aa..0f56302c43de8f51eb3381f5db7dd5b3a22a6095 100644 (file)
@@ -1,4 +1,4 @@
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 extern void exit (int);
 extern void abort (void);
index 72c1e55f88bc02065ebcdba96f7d20e7ae415fad..8f076ecb0c70f05178a6a92857821d9b43634c9c 100644 (file)
@@ -1,4 +1,4 @@
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 #ifdef STACK_SIZE
 #if STACK_SIZE < 8*100*100
index db7f3fa97adc6e0798a683befe47fe889dec61f4..e02baf55cbc774e4155f00a8b6fc4f8f5dd782ec 100644 (file)
@@ -1,4 +1,4 @@
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 /* PR optimization/8750
    Used to fail under Cygwin with 
index 4e978f519bcee8d0e154c5ea1c56992d3ba01b0c..d3208d69f9d47c414c695d9391b19af6c77467dd 100644 (file)
@@ -1,4 +1,4 @@
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 #if __INT_MAX__ < 32768 || (defined(STACK_SIZE) && STACK_SIZE < 0x12000)
 int main () { exit (0); }
index 50bc41770e8a3f42de5abf606eaf31eeea0d6160..44a72bd7bb56a8d5d50dab784382e479d2515dae 100644 (file)
@@ -1,4 +1,4 @@
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 #define STACK_REQUIREMENT (40000 * 4 + 256)
 #if defined (STACK_SIZE) && STACK_SIZE < STACK_REQUIREMENT
index 5cced09dc04b5165ea689f7022b99485fe2b6aa0..1396eeb64ab29719cc4c20018a2e6580d54d96a3 100644 (file)
@@ -1,6 +1,6 @@
 /* { dg-require-effective-target label_values } */
 /* { dg-require-effective-target trampolines } */
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 #ifdef STACK_SIZE
 #define DEPTH ((STACK_SIZE) / 512 + 1)
index 24c4952279a61343a4f901925a99f144477d2460..d3e44e358d25fdf1fc064cdf6f3971aa0bb3f8e2 100644 (file)
@@ -1,4 +1,4 @@
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 #define STACK_REQUIREMENT (128 * 128 * 4 + 1024)
 #if defined (STACK_SIZE) && STACK_SIZE < STACK_REQUIREMENT
index 530fad006febc9952537a3e4d57d4452f3896213..8c6b8c79fc548756613a19c49e2ed7bdbe80cd40 100644 (file)
@@ -1,5 +1,5 @@
 /* { dg-require-effective-target untyped_assembly } */
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 #ifndef STACK_SIZE
 #define        VLEN    2055
index f18f2c8faaae4072a8626b8972016437468dd165..da9ee524924242d79ba8a38eb436fbece1f7622b 100644 (file)
@@ -1,5 +1,5 @@
 /* { dg-require-effective-target untyped_assembly } */
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 #define STACK_REQUIREMENT (100000 * 4 + 1024)
 #if defined (STACK_SIZE) && STACK_SIZE < STACK_REQUIREMENT
index 41add7dc25d8a9f6b4712cf968f4f7e35fba838b..cae2c544cda57f036740b50ac5d9319661e45f9b 100644 (file)
@@ -1,4 +1,4 @@
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 #if defined (STACK_SIZE)
 #define DUMMY_SIZE 9
index 0d6b0fbc948cfd1e55aea4a31053a6ac2afef57b..f240d1b09ab7190171b999b47f0d27bea6e869e8 100644 (file)
@@ -1,4 +1,4 @@
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 f()
 {
index aa71024b2dbe948650b498b5e704c5856e8a86de..8ef83fd5c13cf369c6a0dc7999a5bc498b7bba28 100644 (file)
@@ -1,4 +1,4 @@
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 struct parsefile
 {
index fc69ff92414b598826fcd940f91174575f2d59b0..0174e7be552bf7f0a95ca65ad0e29b122b67b318 100644 (file)
@@ -1,4 +1,4 @@
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 #include <stdlib.h>
 
index 9185f2b9a3c428d75297bdc2ea5589ded2ff87c9..7179ba6388109ecd29c97f3f2dc1c310529a680e 100644 (file)
@@ -1,4 +1,4 @@
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 #include <stdio.h>
 
index 3bc00ef9a9cfff59e67c68b7cd1e9bf6d68cf09d..2a840521487b7920fa57a02e25a0e0063f46c07e 100644 (file)
@@ -1,5 +1,5 @@
 /* { dg-require-effective-target label_values } */
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 #include <stdlib.h>
 
index 21a1e6f2ae23bf9d2ce06c16cea6ae41355cfad9..95d23a2f9ce2e0e02b8c42e2b77cb1514fc0aeaa 100644 (file)
@@ -1,6 +1,6 @@
 /* { dg-require-effective-target label_values } */
 /* { dg-require-effective-target trampolines } */
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 /* A slight variation of 920501-7.c.  */
 
index e94ab8aad88c3ed7d2e52600ea2a30858ad951e3..558c9370abb9aae09773381b3d6bafe7661f2daf 100644 (file)
@@ -1,4 +1,4 @@
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 #include <string.h>
 
index 8ab041b4a534f5cf98e81c604a827ba404ad418a..39567f1f0a78d6a3e00123cf1b5f6ea82254dcd9 100644 (file)
@@ -1,4 +1,4 @@
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 /* Test for a reload bug:
    if you have a memory reference using the indexed addressing
index ee5b376f9b8f9c5d8dfccbf02a39ab3bd1188333..c7225700709f3112c50c3afaf790ca960bb75c66 100644 (file)
@@ -1,4 +1,4 @@
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 /* Origin: hp@bitrange.com
    Test that return values come out right from a 1000-level call chain to
index 4a55c970b8612556ced759eed1fbb1209959ae67..9d0119b968903ceba2a435132851c7efb34aa1aa 100644 (file)
@@ -1,4 +1,4 @@
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 /* When generating o32 MIPS PIC, main's $gp save slot was out of range
    of a single load instruction.  */
index 31b4f8f9c1494c5ad9866127f85b8c676ff6ffd0..8dd6358e9b4cd9129a263ba8a138db6f78424640 100644 (file)
@@ -1,4 +1,4 @@
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 /* Based on execute/simd-1.c, modified by joern.rennecke@st.com to
    trigger a reload bug.  Verified for gcc mainline from 20050722 13:00 UTC
index 90d4a931ab8194272cd45ed0815dfadf8b30a336..f28425e8fd7fa5e36be3c589ddc0d2225e1ef173 100644 (file)
@@ -1,4 +1,4 @@
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 /* Like pr28982a.c, but with the spill slots outside the range of
    a single sp-based load on ARM.  This test tests for cases where
index 2c500d022177224a3412dbb98204d165eaec5631..7472ea1dfc6c876319e8757f02f7230f94214178 100644 (file)
@@ -4,7 +4,7 @@
 /* { dg-do compile } */
 /* { dg-options "-O3" } */
 /* { dg-options "-O3 -mtune=i386" { target { { i?86-*-* x86_64-*-* } && ia32 } } } */
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 #if defined(STACK_SIZE) && (STACK_SIZE < 65536)
 # define BYTEMEM_SIZE 10000L
index c6f87acba9d5e361ef584e869c4e79643ab42974..4083bb4c75e0f9244849c21eea0276975b23a367 100644 (file)
@@ -2,7 +2,7 @@
 /* Origin: Peeter Joot <peeterj@ca.ibm.com> */
 
 /* { dg-do run { target *-*-linux* *-*-gnu* } } */
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
  
 #include <sys/mman.h>
 #include <string.h>
index 726bb209a94d940f477a59f2f27f3aed7d35e611..f4ff831b40fb32ddc33a09ba61165de76148a6f7 100644 (file)
@@ -1,7 +1,7 @@
 /* { dg-do run } */
 /* { dg-require-effective-target label_values } */
 /* { dg-require-effective-target trampolines } */
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 #ifdef STACK_SIZE
 #define DEPTH ((STACK_SIZE) / 512 + 1)
index 90ca71c9e2da919a4207a3acbe3354105bd58d2f..922c6b396df5246a191f754dca81027a1da92b70 100644 (file)
@@ -2,7 +2,7 @@
 /* { dg-require-effective-target nonlocal_goto } */
 /* { dg-require-effective-target label_values } */
 /* { dg-require-effective-target trampolines } */
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 extern void abort (void);
 extern void exit (int);
index dd6774f2826355ff29b2e3007b74b2e5989f8bd0..bb1d120c26558367b9f38cf9d2d601438a15bb9b 100644 (file)
@@ -1,7 +1,7 @@
 /* { dg-require-effective-target freorder } */
 /* { dg-require-effective-target label_values } */
 /* { dg-options "-O2 -freorder-blocks-and-partition" } */
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 #include <stdlib.h>
 
index 1249b5b251d95ceed9568b0c4b9e925124d32401..def11646cb8d1e7b0b4f778edac4abea625946ac 100644 (file)
@@ -2,7 +2,7 @@
 /* { dg-require-effective-target label_values } */
 /* { dg-require-effective-target trampolines } */
 /* { dg-options "-O0" } */
-/* { dg-additional-options "-DSTACK_SIZE=[dg-effective-target-value stack_size]" { target { stack_size } } } */
+/* { dg-add-options stack_size } */
 
 /* A variant of gcc.c-torture/execute/comp-goto-2.c.  */
 
index 31701c23e8f9f88a29e96c56fa08cc9272525347..502986e71fba8e4f07f338bd67e31bde56fdf809 100644 (file)
@@ -7249,6 +7249,17 @@ proc add_options_for_double_vectors { flags } {
     return $flags
 }
 
+# Add to FLAGS the flags needed to define the STACK_SIZE macro.
+
+proc add_options_for_stack_size { flags } {
+    if [is-effective-target stack_size] {
+       set stack_size [dg-effective-target-value stack_size]
+       return "$flags -DSTACK_SIZE=$stack_size"
+    }
+
+    return $flags
+}
+
 # Return 1 if the target provides a full C99 runtime.
 
 proc check_effective_target_c99_runtime { } {