diff options
author | Hans-Peter Nilsson <hp@axis.com> | 2012-02-14 22:06:56 +0000 |
---|---|---|
committer | Hans-Peter Nilsson <hp@gcc.gnu.org> | 2012-02-14 22:06:56 +0000 |
commit | 5cd3514cddd76e0a33208f85c3a623c7fb53470c (patch) | |
tree | 250c7bee258347e13b4186f79db8f18d6e627e41 | |
parent | 169264b3729134eaa40121199180979395181657 (diff) | |
download | gcc-5cd3514cddd76e0a33208f85c3a623c7fb53470c.zip gcc-5cd3514cddd76e0a33208f85c3a623c7fb53470c.tar.gz gcc-5cd3514cddd76e0a33208f85c3a623c7fb53470c.tar.bz2 |
target-supports.exp (check_effective_target_fgnu_tm): New proc.
* lib/target-supports.exp (check_effective_target_fgnu_tm): New
proc.
* gfortran.dg/trans-mem-skel.f90: Gate test on effective_target
fgnu_tm.
* gcc.dg/lto/trans-mem-1_0.c, gcc.dg/lto/trans-mem-2_0.c,
gcc.dg/lto/trans-mem-3_0.c, gcc.dg/lto/trans-mem-4_0.c: Ditto.
* gcc.dg/tm/tm.exp: Gate the whole of gcc.dg/tm on
effective_target fgnu_tm.
* g++.dg/tm/tm.exp: Ditto for g++.dg/tm.
From-SVN: r184237
-rw-r--r-- | gcc/testsuite/ChangeLog | 12 | ||||
-rw-r--r-- | gcc/testsuite/g++.dg/tm/tm.exp | 4 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/lto/trans-mem-1_0.c | 1 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/lto/trans-mem-2_0.c | 1 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/lto/trans-mem-3_0.c | 1 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/lto/trans-mem-4_0.c | 1 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/tm/tm.exp | 4 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/trans-mem-skel.f90 | 1 | ||||
-rw-r--r-- | gcc/testsuite/lib/target-supports.exp | 9 |
9 files changed, 34 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index d82d7d5..1a583e5 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,15 @@ +2012-02-14 Hans-Peter Nilsson <hp@axis.com> + + * lib/target-supports.exp (check_effective_target_fgnu_tm): New + proc. + * gfortran.dg/trans-mem-skel.f90: Gate test on effective_target + fgnu_tm. + * gcc.dg/lto/trans-mem-1_0.c, gcc.dg/lto/trans-mem-2_0.c, + gcc.dg/lto/trans-mem-3_0.c, gcc.dg/lto/trans-mem-4_0.c: Ditto. + * gcc.dg/tm/tm.exp: Gate the whole of gcc.dg/tm on + effective_target fgnu_tm. + * g++.dg/tm/tm.exp: Ditto for g++.dg/tm. + 2012-02-14 Jakub Jelinek <jakub@redhat.com> PR c++/52247 diff --git a/gcc/testsuite/g++.dg/tm/tm.exp b/gcc/testsuite/g++.dg/tm/tm.exp index df40cdc..f191abc 100644 --- a/gcc/testsuite/g++.dg/tm/tm.exp +++ b/gcc/testsuite/g++.dg/tm/tm.exp @@ -19,6 +19,10 @@ # Load support procs. load_lib g++-dg.exp +if ![check_effective_target_fgnu_tm] { + return +} + # If a testcase doesn't have special options, use these. global DEFAULT_CXXFLAGS if ![info exists DEFAULT_CXXFLAGS] then { diff --git a/gcc/testsuite/gcc.dg/lto/trans-mem-1_0.c b/gcc/testsuite/gcc.dg/lto/trans-mem-1_0.c index 556c99b..379f4ea 100644 --- a/gcc/testsuite/gcc.dg/lto/trans-mem-1_0.c +++ b/gcc/testsuite/gcc.dg/lto/trans-mem-1_0.c @@ -1,6 +1,7 @@ /* { dg-lto-options {{-flto -fgnu-tm}} } */ /* { dg-lto-do link } */ /* { dg-require-effective-target stdint_types } */ +/* { dg-require-effective-target fgnu_tm } */ int i; diff --git a/gcc/testsuite/gcc.dg/lto/trans-mem-2_0.c b/gcc/testsuite/gcc.dg/lto/trans-mem-2_0.c index b270602..f86d444 100644 --- a/gcc/testsuite/gcc.dg/lto/trans-mem-2_0.c +++ b/gcc/testsuite/gcc.dg/lto/trans-mem-2_0.c @@ -1,6 +1,7 @@ /* { dg-lto-options {{-flto -fgnu-tm}} } */ /* { dg-lto-do link } */ /* { dg-require-effective-target stdint_types } */ +/* { dg-require-effective-target fgnu_tm } */ #include "trans-mem.h" diff --git a/gcc/testsuite/gcc.dg/lto/trans-mem-3_0.c b/gcc/testsuite/gcc.dg/lto/trans-mem-3_0.c index 8a5ca75..f622823 100644 --- a/gcc/testsuite/gcc.dg/lto/trans-mem-3_0.c +++ b/gcc/testsuite/gcc.dg/lto/trans-mem-3_0.c @@ -1,6 +1,7 @@ /* { dg-lto-options {{-flto}} } */ /* { dg-lto-do link } */ /* { dg-require-effective-target stdint_types } */ +/* { dg-require-effective-target fgnu_tm } */ /* Test that we can build one object file with -fgnu-tm (trans-mem-3_1.c), but do the final link of all objects without diff --git a/gcc/testsuite/gcc.dg/lto/trans-mem-4_0.c b/gcc/testsuite/gcc.dg/lto/trans-mem-4_0.c index 16332ee..e3f471f 100644 --- a/gcc/testsuite/gcc.dg/lto/trans-mem-4_0.c +++ b/gcc/testsuite/gcc.dg/lto/trans-mem-4_0.c @@ -1,6 +1,7 @@ /* { dg-lto-options {{-flto -fgnu-tm}} } */ /* { dg-lto-do link } */ /* { dg-require-effective-target stdint_types } */ +/* { dg-require-effective-target fgnu_tm } */ extern void foo() __attribute__((transaction_safe)); diff --git a/gcc/testsuite/gcc.dg/tm/tm.exp b/gcc/testsuite/gcc.dg/tm/tm.exp index 3d24481..07c1493 100644 --- a/gcc/testsuite/gcc.dg/tm/tm.exp +++ b/gcc/testsuite/gcc.dg/tm/tm.exp @@ -19,6 +19,10 @@ # Load support procs. load_lib gcc-dg.exp +if ![check_effective_target_fgnu_tm] { + return +} + # If a testcase doesn't have special options, use these. global DEFAULT_CFLAGS if ![info exists DEFAULT_CFLAGS] then { diff --git a/gcc/testsuite/gfortran.dg/trans-mem-skel.f90 b/gcc/testsuite/gfortran.dg/trans-mem-skel.f90 index 7e56fad..f02dfaf 100644 --- a/gcc/testsuite/gfortran.dg/trans-mem-skel.f90 +++ b/gcc/testsuite/gfortran.dg/trans-mem-skel.f90 @@ -1,5 +1,6 @@ ! { dg-do compile } ! { dg-options "-fgnu-tm" } +! { dg-require-effective-target fgnu_tm } program foo real x end program foo diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp index 02490d9..13f68df 100644 --- a/gcc/testsuite/lib/target-supports.exp +++ b/gcc/testsuite/lib/target-supports.exp @@ -716,6 +716,15 @@ proc check_effective_target_fopenmp {} { } "-fopenmp"] } +# Return 1 if compilation with -fgnu-tm is error-free for trivial +# code, 0 otherwise. + +proc check_effective_target_fgnu_tm {} { + return [check_no_compiler_messages fgnu_tm object { + void foo (void) { } + } "-fgnu-tm"] +} + # Return 1 if the target supports mmap, 0 otherwise. proc check_effective_target_mmap {} { |