summaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorjanis <janis@138bc75d-0d04-0410-961f-82ee72b054a4>2004-11-17 17:21:46 +0000
committerjanis <janis@138bc75d-0d04-0410-961f-82ee72b054a4>2004-11-17 17:21:46 +0000
commitf75ffe10e06fb74e0d5728c12426dc8804c95978 (patch)
tree88fff86f2e66eb4335f771691f849601d62eccbe /gcc
parent55297f8f88435d47ca0661c036fb37e5163aa4b3 (diff)
downloadgcc-f75ffe10e06fb74e0d5728c12426dc8804c95978.tar.gz
* lib/gcc-dg.exp (dg-skip-if): New function.
(dg-forbid-option): Remove. * g++.dg/abi/bitfield3.C: Use dg-skip-if i?86 -m64. * g++.dg/abi/bitfield8.C: Likewise. * g++.dg/abi/dtor1.C: Likewise. * g++.dg/abi/empty10.C: Likewise. * g++.dg/abi/empty7.C: Likewise. * g++.dg/abi/empty9.C: Likewise. * g++.dg/abi/layout3.C: Likewise. * g++.dg/abi/layout4.C: Likewise. * g++.dg/abi/thunk1.C: Likewise. * g++.dg/abi/thunk2.C: Likewise. * g++.dg/abi/vbase11.C: Likewise. * g++.dg/abi/vthunk2.C: Likewise. * g++.dg/abi/vthunk3.C: Likewise. * g++.dg/ext/attrib8.C: Likewise. * g++.dg/opt/longbranch2.C: Likewise. * g++.dg/opt/reg-stack4.C: Likewise. * g++.old-deja/g++.ext/attrib1.C: Likewise. * g++.old-deja/g++.ext/attrib2.C: Likewise. * g++.old-deja/g++.ext/attrib3.C: Likewise. * g++.old-deja/g++.other/store-expr1.C: Likewise. * g++.old-deja/g++.other/store-expr2.C: Likewise. * gcc.dg/20000609-1.c: Likewise. * gcc.dg/20000720-1.c: Likewise. * gcc.dg/20011107-1.c: Likewise. * gcc.dg/20011119-1.c: Likewise. * gcc.dg/20020108-1.c: Likewise. * gcc.dg/20020122-2.c: Likewise. * gcc.dg/20020122-3.c: Likewise. * gcc.dg/20020201-3.c: Likewise. * gcc.dg/20020206-1.c: Likewise. * gcc.dg/20020218-1.c: Likewise. * gcc.dg/20020310-1.c: Likewise. * gcc.dg/20020411-1.c: Likewise. * gcc.dg/20020418-2.c: Likewise. * gcc.dg/20020426-1.c: Likewise. * gcc.dg/20020426-2.c: Likewise. * gcc.dg/20020517-1.c: Likewise. * gcc.dg/20020523-1.c: Likewise. * gcc.dg/20020523-2.c: Likewise. * gcc.dg/20020729-1.c: Likewise. * gcc.dg/20030204-1.c: Likewise. * gcc.dg/20030826-2.c: Likewise. * gcc.dg/20030926-1.c: Likewise. * gcc.dg/20031202-1.c: Likewise. * gcc.dg/980312-1.c: Likewise. * gcc.dg/980313-1.c: Likewise. * gcc.dg/990117-1.c: Likewise. * gcc.dg/990424-1.c: Likewise. * gcc.dg/990524-1.c: Likewise. * gcc.dg/991230-1.c: Likewise. * gcc.dg/i386-387-1.c: Likewise. * gcc.dg/i386-387-2.c: Likewise. * gcc.dg/i386-387-3.c: Likewise. * gcc.dg/i386-387-4.c: Likewise. * gcc.dg/i386-387-5.c: Likewise. * gcc.dg/i386-387-6.c: Likewise. * gcc.dg/i386-asm-1.c: Likewise. * gcc.dg/i386-bitfield1.c: Likewise. * gcc.dg/i386-bitfield2.c: Likewise. * gcc.dg/i386-loop-1.c: Likewise. * gcc.dg/i386-loop-2.c: Likewise. * gcc.dg/i386-loop-3.c: Likewise. * gcc.dg/i386-pentium4-not-mull.c: Likewise. * gcc.dg/i386-pic-1.c: Likewise. * gcc.dg/i386-regparm.c: Likewise. * gcc.dg/i386-signbit-1.c: Likewise. * gcc.dg/i386-signbit-2.c: Likewise. * gcc.dg/i386-signbit-3.c: Likewise. * gcc.dg/i386-sse-5.c: Likewise. * gcc.dg/i386-sse-8.c: Likewise. * gcc.dg/i386-unroll-1.c: Likewise. * gcc.dg/tls/opt-1.c: Likewise. * gcc.dg/tls/opt-2.c: Likewise. * gcc.dg/unroll-1.c: Likewise. * gcc.misc-tests/i386-pf-3dnow-1.c: Likewise. * gcc.misc-tests/i386-pf-athlon-1.c: Likewise. * gcc.misc-tests/i386-pf-none-1.c: Likewise. * gcc.misc-tests/i386-pf-sse-1.c: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@90810 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/ChangeLog83
-rw-r--r--gcc/testsuite/g++.dg/abi/bitfield3.C2
-rw-r--r--gcc/testsuite/g++.dg/abi/bitfield8.C2
-rw-r--r--gcc/testsuite/g++.dg/abi/dtor1.C2
-rw-r--r--gcc/testsuite/g++.dg/abi/empty10.C2
-rw-r--r--gcc/testsuite/g++.dg/abi/empty7.C2
-rw-r--r--gcc/testsuite/g++.dg/abi/empty9.C2
-rw-r--r--gcc/testsuite/g++.dg/abi/layout3.C2
-rw-r--r--gcc/testsuite/g++.dg/abi/layout4.C2
-rw-r--r--gcc/testsuite/g++.dg/abi/thunk1.C2
-rw-r--r--gcc/testsuite/g++.dg/abi/thunk2.C2
-rw-r--r--gcc/testsuite/g++.dg/abi/vbase11.C2
-rw-r--r--gcc/testsuite/g++.dg/abi/vthunk2.C2
-rw-r--r--gcc/testsuite/g++.dg/abi/vthunk3.C2
-rw-r--r--gcc/testsuite/g++.dg/ext/attrib8.C2
-rw-r--r--gcc/testsuite/g++.dg/opt/longbranch2.C2
-rw-r--r--gcc/testsuite/g++.dg/opt/reg-stack4.C2
-rw-r--r--gcc/testsuite/g++.old-deja/g++.ext/attrib1.C2
-rw-r--r--gcc/testsuite/g++.old-deja/g++.ext/attrib2.C2
-rw-r--r--gcc/testsuite/g++.old-deja/g++.ext/attrib3.C2
-rw-r--r--gcc/testsuite/g++.old-deja/g++.other/store-expr1.C2
-rw-r--r--gcc/testsuite/g++.old-deja/g++.other/store-expr2.C2
-rw-r--r--gcc/testsuite/gcc.dg/20000609-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/20000720-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/20011107-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/20011119-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/20020108-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/20020122-2.c2
-rw-r--r--gcc/testsuite/gcc.dg/20020122-3.c2
-rw-r--r--gcc/testsuite/gcc.dg/20020201-3.c2
-rw-r--r--gcc/testsuite/gcc.dg/20020206-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/20020218-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/20020310-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/20020411-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/20020418-2.c2
-rw-r--r--gcc/testsuite/gcc.dg/20020426-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/20020426-2.c2
-rw-r--r--gcc/testsuite/gcc.dg/20020517-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/20020523-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/20020523-2.c2
-rw-r--r--gcc/testsuite/gcc.dg/20020729-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/20030204-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/20030826-2.c2
-rw-r--r--gcc/testsuite/gcc.dg/20030926-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/20031202-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/980312-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/980313-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/990117-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/990424-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/990524-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/991230-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/i386-387-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/i386-387-2.c2
-rw-r--r--gcc/testsuite/gcc.dg/i386-387-3.c2
-rw-r--r--gcc/testsuite/gcc.dg/i386-387-4.c2
-rw-r--r--gcc/testsuite/gcc.dg/i386-387-5.c2
-rw-r--r--gcc/testsuite/gcc.dg/i386-387-6.c2
-rw-r--r--gcc/testsuite/gcc.dg/i386-asm-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/i386-bitfield1.c2
-rw-r--r--gcc/testsuite/gcc.dg/i386-bitfield2.c2
-rw-r--r--gcc/testsuite/gcc.dg/i386-loop-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/i386-loop-2.c2
-rw-r--r--gcc/testsuite/gcc.dg/i386-loop-3.c2
-rw-r--r--gcc/testsuite/gcc.dg/i386-pentium4-not-mull.c2
-rw-r--r--gcc/testsuite/gcc.dg/i386-pic-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/i386-regparm.c2
-rw-r--r--gcc/testsuite/gcc.dg/i386-signbit-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/i386-signbit-2.c2
-rw-r--r--gcc/testsuite/gcc.dg/i386-signbit-3.c2
-rw-r--r--gcc/testsuite/gcc.dg/i386-sse-5.c2
-rw-r--r--gcc/testsuite/gcc.dg/i386-sse-8.c2
-rw-r--r--gcc/testsuite/gcc.dg/i386-unroll-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/tls/opt-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/tls/opt-2.c2
-rw-r--r--gcc/testsuite/gcc.dg/unroll-1.c2
-rw-r--r--gcc/testsuite/gcc.misc-tests/i386-pf-3dnow-1.c2
-rw-r--r--gcc/testsuite/gcc.misc-tests/i386-pf-athlon-1.c2
-rw-r--r--gcc/testsuite/gcc.misc-tests/i386-pf-none-1.c2
-rw-r--r--gcc/testsuite/gcc.misc-tests/i386-pf-sse-1.c2
-rw-r--r--gcc/testsuite/lib/gcc-dg.exp40
80 files changed, 173 insertions, 106 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 8093d75806f..56231e466b5 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,86 @@
+2004-11-17 Janis Johnson <janis187@us.ibm.com>
+
+ * lib/gcc-dg.exp (dg-skip-if): New function.
+ (dg-forbid-option): Remove.
+ * g++.dg/abi/bitfield3.C: Use dg-skip-if i?86 -m64.
+ * g++.dg/abi/bitfield8.C: Likewise.
+ * g++.dg/abi/dtor1.C: Likewise.
+ * g++.dg/abi/empty10.C: Likewise.
+ * g++.dg/abi/empty7.C: Likewise.
+ * g++.dg/abi/empty9.C: Likewise.
+ * g++.dg/abi/layout3.C: Likewise.
+ * g++.dg/abi/layout4.C: Likewise.
+ * g++.dg/abi/thunk1.C: Likewise.
+ * g++.dg/abi/thunk2.C: Likewise.
+ * g++.dg/abi/vbase11.C: Likewise.
+ * g++.dg/abi/vthunk2.C: Likewise.
+ * g++.dg/abi/vthunk3.C: Likewise.
+ * g++.dg/ext/attrib8.C: Likewise.
+ * g++.dg/opt/longbranch2.C: Likewise.
+ * g++.dg/opt/reg-stack4.C: Likewise.
+ * g++.old-deja/g++.ext/attrib1.C: Likewise.
+ * g++.old-deja/g++.ext/attrib2.C: Likewise.
+ * g++.old-deja/g++.ext/attrib3.C: Likewise.
+ * g++.old-deja/g++.other/store-expr1.C: Likewise.
+ * g++.old-deja/g++.other/store-expr2.C: Likewise.
+ * gcc.dg/20000609-1.c: Likewise.
+ * gcc.dg/20000720-1.c: Likewise.
+ * gcc.dg/20011107-1.c: Likewise.
+ * gcc.dg/20011119-1.c: Likewise.
+ * gcc.dg/20020108-1.c: Likewise.
+ * gcc.dg/20020122-2.c: Likewise.
+ * gcc.dg/20020122-3.c: Likewise.
+ * gcc.dg/20020201-3.c: Likewise.
+ * gcc.dg/20020206-1.c: Likewise.
+ * gcc.dg/20020218-1.c: Likewise.
+ * gcc.dg/20020310-1.c: Likewise.
+ * gcc.dg/20020411-1.c: Likewise.
+ * gcc.dg/20020418-2.c: Likewise.
+ * gcc.dg/20020426-1.c: Likewise.
+ * gcc.dg/20020426-2.c: Likewise.
+ * gcc.dg/20020517-1.c: Likewise.
+ * gcc.dg/20020523-1.c: Likewise.
+ * gcc.dg/20020523-2.c: Likewise.
+ * gcc.dg/20020729-1.c: Likewise.
+ * gcc.dg/20030204-1.c: Likewise.
+ * gcc.dg/20030826-2.c: Likewise.
+ * gcc.dg/20030926-1.c: Likewise.
+ * gcc.dg/20031202-1.c: Likewise.
+ * gcc.dg/980312-1.c: Likewise.
+ * gcc.dg/980313-1.c: Likewise.
+ * gcc.dg/990117-1.c: Likewise.
+ * gcc.dg/990424-1.c: Likewise.
+ * gcc.dg/990524-1.c: Likewise.
+ * gcc.dg/991230-1.c: Likewise.
+ * gcc.dg/i386-387-1.c: Likewise.
+ * gcc.dg/i386-387-2.c: Likewise.
+ * gcc.dg/i386-387-3.c: Likewise.
+ * gcc.dg/i386-387-4.c: Likewise.
+ * gcc.dg/i386-387-5.c: Likewise.
+ * gcc.dg/i386-387-6.c: Likewise.
+ * gcc.dg/i386-asm-1.c: Likewise.
+ * gcc.dg/i386-bitfield1.c: Likewise.
+ * gcc.dg/i386-bitfield2.c: Likewise.
+ * gcc.dg/i386-loop-1.c: Likewise.
+ * gcc.dg/i386-loop-2.c: Likewise.
+ * gcc.dg/i386-loop-3.c: Likewise.
+ * gcc.dg/i386-pentium4-not-mull.c: Likewise.
+ * gcc.dg/i386-pic-1.c: Likewise.
+ * gcc.dg/i386-regparm.c: Likewise.
+ * gcc.dg/i386-signbit-1.c: Likewise.
+ * gcc.dg/i386-signbit-2.c: Likewise.
+ * gcc.dg/i386-signbit-3.c: Likewise.
+ * gcc.dg/i386-sse-5.c: Likewise.
+ * gcc.dg/i386-sse-8.c: Likewise.
+ * gcc.dg/i386-unroll-1.c: Likewise.
+ * gcc.dg/tls/opt-1.c: Likewise.
+ * gcc.dg/tls/opt-2.c: Likewise.
+ * gcc.dg/unroll-1.c: Likewise.
+ * gcc.misc-tests/i386-pf-3dnow-1.c: Likewise.
+ * gcc.misc-tests/i386-pf-athlon-1.c: Likewise.
+ * gcc.misc-tests/i386-pf-none-1.c: Likewise.
+ * gcc.misc-tests/i386-pf-sse-1.c: Likewise.
+
2004-11-16 Giovanni Bajo <giovannibajo@gcc.gnu.org>
* g++.dg/template/incomplete1.C: New test.
diff --git a/gcc/testsuite/g++.dg/abi/bitfield3.C b/gcc/testsuite/g++.dg/abi/bitfield3.C
index 5ff310bc738..864abc33b8d 100644
--- a/gcc/testsuite/g++.dg/abi/bitfield3.C
+++ b/gcc/testsuite/g++.dg/abi/bitfield3.C
@@ -4,7 +4,7 @@
// Cygwin and mingw32 default to MASK_ALIGN_DOUBLE. Override to ensure
// 4-byte alignment.
// { dg-options "-mno-align-double" { target i?86-*-cygwin* i?86-*-mingw* } }
-// { dg-forbid-option "-m64" }
+// { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } }
struct A
{
diff --git a/gcc/testsuite/g++.dg/abi/bitfield8.C b/gcc/testsuite/g++.dg/abi/bitfield8.C
index 64ec0f735cb..6130ae45739 100644
--- a/gcc/testsuite/g++.dg/abi/bitfield8.C
+++ b/gcc/testsuite/g++.dg/abi/bitfield8.C
@@ -1,6 +1,6 @@
// { dg-do run { target i?86-*-* } }
// { dg-options "-fabi-version=0" }
-// { dg-forbid-option "-m64" }
+// { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } }
struct A {
virtual void f() {}
diff --git a/gcc/testsuite/g++.dg/abi/dtor1.C b/gcc/testsuite/g++.dg/abi/dtor1.C
index 429b39e098d..9ec44ae7520 100644
--- a/gcc/testsuite/g++.dg/abi/dtor1.C
+++ b/gcc/testsuite/g++.dg/abi/dtor1.C
@@ -1,5 +1,5 @@
// { dg-do compile { target i?86-*-* } }
-// { dg-forbid-option "-m64" }
+// { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } }
// { dg-options "-fabi-version=0" }
struct A {
diff --git a/gcc/testsuite/g++.dg/abi/empty10.C b/gcc/testsuite/g++.dg/abi/empty10.C
index af2ba9c7e82..9147e9692f5 100644
--- a/gcc/testsuite/g++.dg/abi/empty10.C
+++ b/gcc/testsuite/g++.dg/abi/empty10.C
@@ -1,5 +1,5 @@
// { dg-do run { target i?86-*-* } }
-// { dg-forbid-option "-m64" }
+// { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } }
// { dg-options "-fabi-version=0 -w" }
struct E {};
diff --git a/gcc/testsuite/g++.dg/abi/empty7.C b/gcc/testsuite/g++.dg/abi/empty7.C
index 7cc6510046e..5ff75e65d97 100644
--- a/gcc/testsuite/g++.dg/abi/empty7.C
+++ b/gcc/testsuite/g++.dg/abi/empty7.C
@@ -1,5 +1,5 @@
// { dg-do run { target i?86-*-* } }
-// { dg-forbid-option "-m64" }
+// { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } }
// { dg-options "-fabi-version=0" }
struct S1 {};
diff --git a/gcc/testsuite/g++.dg/abi/empty9.C b/gcc/testsuite/g++.dg/abi/empty9.C
index 10ebedfdc3b..3c4b71f100f 100644
--- a/gcc/testsuite/g++.dg/abi/empty9.C
+++ b/gcc/testsuite/g++.dg/abi/empty9.C
@@ -1,5 +1,5 @@
// { dg-do run { target i?86-*-* } }
-// { dg-forbid-option "-m64" }
+// { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } }
// { dg-options "-w -fabi-version=0" }
struct E1 {};
diff --git a/gcc/testsuite/g++.dg/abi/layout3.C b/gcc/testsuite/g++.dg/abi/layout3.C
index a2e94f693a5..121310862db 100644
--- a/gcc/testsuite/g++.dg/abi/layout3.C
+++ b/gcc/testsuite/g++.dg/abi/layout3.C
@@ -1,5 +1,5 @@
// { dg-do run { target i?86-*-* } }
-// { dg-forbid-option "-m64" }
+// { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } }
// { dg-options "-fabi-version=0 -w" }
struct S {
diff --git a/gcc/testsuite/g++.dg/abi/layout4.C b/gcc/testsuite/g++.dg/abi/layout4.C
index 105c74b95c7..13d3648d6f5 100644
--- a/gcc/testsuite/g++.dg/abi/layout4.C
+++ b/gcc/testsuite/g++.dg/abi/layout4.C
@@ -1,5 +1,5 @@
// { dg-do run { target i?86-*-* } }
-// { dg-forbid-option "-m64" }
+// { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } }
// { dg-options "-fabi-version=1" }
struct C4
diff --git a/gcc/testsuite/g++.dg/abi/thunk1.C b/gcc/testsuite/g++.dg/abi/thunk1.C
index 0ba7ce76102..5508882359f 100644
--- a/gcc/testsuite/g++.dg/abi/thunk1.C
+++ b/gcc/testsuite/g++.dg/abi/thunk1.C
@@ -1,5 +1,5 @@
// { dg-do compile { target i?86-*-* } }
-// { dg-forbid-option "-m64" }
+// { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } }
struct A {
virtual void f ();
diff --git a/gcc/testsuite/g++.dg/abi/thunk2.C b/gcc/testsuite/g++.dg/abi/thunk2.C
index e6774194e95..c1f88682df9 100644
--- a/gcc/testsuite/g++.dg/abi/thunk2.C
+++ b/gcc/testsuite/g++.dg/abi/thunk2.C
@@ -1,5 +1,5 @@
// { dg-do compile { target i?86-*-* } }
-// { dg-forbid-option "-m64" }
+// { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } }
// { dg-options -w }
struct A {
diff --git a/gcc/testsuite/g++.dg/abi/vbase11.C b/gcc/testsuite/g++.dg/abi/vbase11.C
index 974f56216a8..1dcc75647ca 100644
--- a/gcc/testsuite/g++.dg/abi/vbase11.C
+++ b/gcc/testsuite/g++.dg/abi/vbase11.C
@@ -1,5 +1,5 @@
// { dg-do run { target i?86-*-* } }
-// { dg-forbid-option "-m64" }
+// { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } }
// { dg-options "-fabi-version=0" }
struct A { virtual void f(); char c1; };
diff --git a/gcc/testsuite/g++.dg/abi/vthunk2.C b/gcc/testsuite/g++.dg/abi/vthunk2.C
index 314f5980f7a..698c691cc0a 100644
--- a/gcc/testsuite/g++.dg/abi/vthunk2.C
+++ b/gcc/testsuite/g++.dg/abi/vthunk2.C
@@ -1,5 +1,5 @@
// { dg-do compile { target i?86-*-* } }
-// { dg-forbid-option "-m64" }
+// { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } }
struct c0 {
virtual void f ();
diff --git a/gcc/testsuite/g++.dg/abi/vthunk3.C b/gcc/testsuite/g++.dg/abi/vthunk3.C
index bc677df1c3d..969cd2da84c 100644
--- a/gcc/testsuite/g++.dg/abi/vthunk3.C
+++ b/gcc/testsuite/g++.dg/abi/vthunk3.C
@@ -1,5 +1,5 @@
// { dg-do compile { target i?86-*-* } }
-// { dg-forbid-option "-m64" }
+// { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } }
// { dg-options "-fabi-version=0" }
struct A {
diff --git a/gcc/testsuite/g++.dg/ext/attrib8.C b/gcc/testsuite/g++.dg/ext/attrib8.C
index 0b162e32e93..df2d48fecf4 100644
--- a/gcc/testsuite/g++.dg/ext/attrib8.C
+++ b/gcc/testsuite/g++.dg/ext/attrib8.C
@@ -1,6 +1,6 @@
// PR 8656
// { dg-do compile { target i?86-*-* } }
-// { dg-forbid-option "-m64" }
+// { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } }
extern int * (__attribute__((stdcall)) *fooPtr)( void);
int * __attribute__((stdcall)) myFn01( void) { return 0; }
diff --git a/gcc/testsuite/g++.dg/opt/longbranch2.C b/gcc/testsuite/g++.dg/opt/longbranch2.C
index 2ada1980cf9..88594b04ef7 100644
--- a/gcc/testsuite/g++.dg/opt/longbranch2.C
+++ b/gcc/testsuite/g++.dg/opt/longbranch2.C
@@ -3,7 +3,7 @@
// { dg-do compile }
// { dg-options "-O3 -funroll-loops -mtune=k6 -fomit-frame-pointer" { target i?86-*-* } }
-// { dg-forbid-option "-m64" { target i?86-*-* } }
+// { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } }
// This used to fail to assemble because of an out-of-range 'loop' instructions.
diff --git a/gcc/testsuite/g++.dg/opt/reg-stack4.C b/gcc/testsuite/g++.dg/opt/reg-stack4.C
index 5db14159bd1..9ea77c23230 100644
--- a/gcc/testsuite/g++.dg/opt/reg-stack4.C
+++ b/gcc/testsuite/g++.dg/opt/reg-stack4.C
@@ -6,7 +6,7 @@
// { dg-do compile }
// { dg-options "-mtune=i586 -O2" { target i?86-*-* } }
-// { dg-forbid-option "-m64" { target i?86-*-* } }
+// { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } }
struct array {
double data;
diff --git a/gcc/testsuite/g++.old-deja/g++.ext/attrib1.C b/gcc/testsuite/g++.old-deja/g++.ext/attrib1.C
index 0d66d72ebc6..bdc3ade8b74 100644
--- a/gcc/testsuite/g++.old-deja/g++.ext/attrib1.C
+++ b/gcc/testsuite/g++.old-deja/g++.ext/attrib1.C
@@ -1,5 +1,5 @@
// { dg-do assemble { target i?86-*-* } }
-// { dg-forbid-option "-m64" }
+// { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } }
// Test for using prefix attributes in a parameter decl.
// Contributed by Jason Merrill <jason@cygnus.com>
diff --git a/gcc/testsuite/g++.old-deja/g++.ext/attrib2.C b/gcc/testsuite/g++.old-deja/g++.ext/attrib2.C
index abac1b322cf..c60ff823130 100644
--- a/gcc/testsuite/g++.old-deja/g++.ext/attrib2.C
+++ b/gcc/testsuite/g++.old-deja/g++.ext/attrib2.C
@@ -1,5 +1,5 @@
// { dg-do run { target i?86-*-* } }
-// { dg-forbid-option "-m64" }
+// { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } }
// Test that stdcall doesn't prevent us from using op delete.
// Contributed by Jason Merrill <jason@cygnus.com>
diff --git a/gcc/testsuite/g++.old-deja/g++.ext/attrib3.C b/gcc/testsuite/g++.old-deja/g++.ext/attrib3.C
index f47ab074e45..492cd9d7c49 100644
--- a/gcc/testsuite/g++.old-deja/g++.ext/attrib3.C
+++ b/gcc/testsuite/g++.old-deja/g++.ext/attrib3.C
@@ -1,5 +1,5 @@
// { dg-do run { target i?86-*-* } }
-// { dg-forbid-option "-m64" }
+// { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } }
// Test for proper handling of attributes in template instantiation.
// Contributed by Jason Merrill <jason@cygnus.com>
diff --git a/gcc/testsuite/g++.old-deja/g++.other/store-expr1.C b/gcc/testsuite/g++.old-deja/g++.other/store-expr1.C
index 153c8810703..49456242b4e 100644
--- a/gcc/testsuite/g++.old-deja/g++.other/store-expr1.C
+++ b/gcc/testsuite/g++.old-deja/g++.other/store-expr1.C
@@ -1,5 +1,5 @@
// { dg-do run { target i?86-*-* } }
-// { dg-forbid-option "-m64" }
+// { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } }
// { dg-options "-mtune=i686 -O2 -fpic" }
// { dg-bogus "\[Uu\]nresolved symbol .(_GLOBAL_OFFSET_TABLE_|\[_.A-Za-z\]\[_.0-9A-Za-z\]*@(PLT|GOT|GOTOFF))" "PIC unsupported" { xfail *-*-netware* } 0 }
class G {};
diff --git a/gcc/testsuite/g++.old-deja/g++.other/store-expr2.C b/gcc/testsuite/g++.old-deja/g++.other/store-expr2.C
index 651f81d8d80..d35e3b77dfa 100644
--- a/gcc/testsuite/g++.old-deja/g++.other/store-expr2.C
+++ b/gcc/testsuite/g++.old-deja/g++.other/store-expr2.C
@@ -1,5 +1,5 @@
// { dg-do run { target i?86-*-* } }
-// { dg-forbid-option "-m64" }
+// { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } }
// { dg-options "-mtune=i686 -O2" }
class G {};
diff --git a/gcc/testsuite/gcc.dg/20000609-1.c b/gcc/testsuite/gcc.dg/20000609-1.c
index 2f0f783cfab..dfa64983ef2 100644
--- a/gcc/testsuite/gcc.dg/20000609-1.c
+++ b/gcc/testsuite/gcc.dg/20000609-1.c
@@ -1,6 +1,6 @@
/* { dg-do run { target i?86-*-* } } */
/* { dg-options "-O1 -ffast-math -march=i686" } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* Sanity check for fp_jcc_* with TARGET_CMOVE. */
diff --git a/gcc/testsuite/gcc.dg/20000720-1.c b/gcc/testsuite/gcc.dg/20000720-1.c
index dc3fb25b9d8..89b570d750a 100644
--- a/gcc/testsuite/gcc.dg/20000720-1.c
+++ b/gcc/testsuite/gcc.dg/20000720-1.c
@@ -1,5 +1,5 @@
/* { dg-do compile { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-options "-mpreferred-stack-boundary=2 -march=i586 -O2 -fomit-frame-pointer" } */
extern void *foo(void *a, const void *b, unsigned c);
diff --git a/gcc/testsuite/gcc.dg/20011107-1.c b/gcc/testsuite/gcc.dg/20011107-1.c
index b61de6cb514..a53f4f1912e 100644
--- a/gcc/testsuite/gcc.dg/20011107-1.c
+++ b/gcc/testsuite/gcc.dg/20011107-1.c
@@ -1,5 +1,5 @@
/* { dg-do compile { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-options "-O2 -mtune=k6" } */
void
diff --git a/gcc/testsuite/gcc.dg/20011119-1.c b/gcc/testsuite/gcc.dg/20011119-1.c
index 67525b9aaa7..83a9b1cd3f3 100644
--- a/gcc/testsuite/gcc.dg/20011119-1.c
+++ b/gcc/testsuite/gcc.dg/20011119-1.c
@@ -1,6 +1,6 @@
/* Test for reload failing to eliminate from argp to sp. */
/* { dg-do run { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-options "-O2 -fomit-frame-pointer" } */
static int ustrsize (const char *s);
diff --git a/gcc/testsuite/gcc.dg/20020108-1.c b/gcc/testsuite/gcc.dg/20020108-1.c
index 6cabb502783..03b97d1fec6 100644
--- a/gcc/testsuite/gcc.dg/20020108-1.c
+++ b/gcc/testsuite/gcc.dg/20020108-1.c
@@ -6,7 +6,7 @@
/* { dg-do compile } */
/* { dg-options "-O2" } */
/* { dg-options "-O2 -mtune=i686" { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" { target i?86-*-* } } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
void
foo (unsigned short *cp)
diff --git a/gcc/testsuite/gcc.dg/20020122-2.c b/gcc/testsuite/gcc.dg/20020122-2.c
index d6062b58b34..de92bd82880 100644
--- a/gcc/testsuite/gcc.dg/20020122-2.c
+++ b/gcc/testsuite/gcc.dg/20020122-2.c
@@ -4,7 +4,7 @@
/* { dg-do compile } */
/* { dg-options "-O2 -fprefetch-loop-arrays -w" } */
/* { dg-options "-O2 -fprefetch-loop-arrays -march=athlon" { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" { target i?86-*-* } } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
extern int access( char* );
extern int a();
diff --git a/gcc/testsuite/gcc.dg/20020122-3.c b/gcc/testsuite/gcc.dg/20020122-3.c
index 77b70353f11..4aafc4777c9 100644
--- a/gcc/testsuite/gcc.dg/20020122-3.c
+++ b/gcc/testsuite/gcc.dg/20020122-3.c
@@ -5,7 +5,7 @@
/* { dg-do compile } */
/* { dg-options "-Os -fprefetch-loop-arrays -w" } */
/* { dg-options "-Os -fprefetch-loop-arrays -mtune=pentium3 -w" { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" { target i?86-*-* } } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
int foo (int *p, int n)
{
diff --git a/gcc/testsuite/gcc.dg/20020201-3.c b/gcc/testsuite/gcc.dg/20020201-3.c
index 1d93475b0a2..66a48022b16 100644
--- a/gcc/testsuite/gcc.dg/20020201-3.c
+++ b/gcc/testsuite/gcc.dg/20020201-3.c
@@ -1,7 +1,7 @@
/* This testcase ICEd because a SFmode variable was given a MMX register
for which there is no movsf exists. */
/* { dg-do compile { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-options "-O2 -march=i686 -mmmx -fno-strict-aliasing" } */
struct A { unsigned int a, b; };
diff --git a/gcc/testsuite/gcc.dg/20020206-1.c b/gcc/testsuite/gcc.dg/20020206-1.c
index 643c4394d65..1bdb25de166 100644
--- a/gcc/testsuite/gcc.dg/20020206-1.c
+++ b/gcc/testsuite/gcc.dg/20020206-1.c
@@ -5,7 +5,7 @@
/* { dg-do run } */
/* { dg-options "-O2 -fprefetch-loop-arrays -w" } */
/* { dg-options "-O2 -fprefetch-loop-arrays -mtune=pentium3 -w" { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" { target i?86-*-* } } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
struct reload
{
diff --git a/gcc/testsuite/gcc.dg/20020218-1.c b/gcc/testsuite/gcc.dg/20020218-1.c
index eff60de18d9..240c3d7e2ab 100644
--- a/gcc/testsuite/gcc.dg/20020218-1.c
+++ b/gcc/testsuite/gcc.dg/20020218-1.c
@@ -1,6 +1,6 @@
/* Verify that X86-64 only SSE registers aren't restored on IA-32. */
/* { dg-do compile { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-options "-O2 -msse" } */
/* { dg-final { scan-assembler-not "xmm8" } } */
diff --git a/gcc/testsuite/gcc.dg/20020310-1.c b/gcc/testsuite/gcc.dg/20020310-1.c
index fd3c24ddf28..6067e190622 100644
--- a/gcc/testsuite/gcc.dg/20020310-1.c
+++ b/gcc/testsuite/gcc.dg/20020310-1.c
@@ -3,7 +3,7 @@
/* { dg-do run } */
/* { dg-options "-O2" } */
/* { dg-options "-O2 -mtune=i586" { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" { target i?86-*-* } } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
struct A
{
diff --git a/gcc/testsuite/gcc.dg/20020411-1.c b/gcc/testsuite/gcc.dg/20020411-1.c
index d78608d111d..0413ed9b56b 100644
--- a/gcc/testsuite/gcc.dg/20020411-1.c
+++ b/gcc/testsuite/gcc.dg/20020411-1.c
@@ -4,7 +4,7 @@
/* { dg-do compile } */
/* { dg-options "-O2" } */
/* { dg-options "-O2 -march=i686" { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" { target i?86-*-* } } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
#if __INT_MAX__ > 32767
diff --git a/gcc/testsuite/gcc.dg/20020418-2.c b/gcc/testsuite/gcc.dg/20020418-2.c
index e3066c95b47..8a15b2644f5 100644
--- a/gcc/testsuite/gcc.dg/20020418-2.c
+++ b/gcc/testsuite/gcc.dg/20020418-2.c
@@ -2,7 +2,7 @@
/* { dg-do compile } */
/* { dg-options "-O2 -funroll-all-loops" } */
/* { dg-options "-O2 -funroll-all-loops -march=pentium3" { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" { target i?86-*-* } } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
void bar (float);
diff --git a/gcc/testsuite/gcc.dg/20020426-1.c b/gcc/testsuite/gcc.dg/20020426-1.c
index 225b3199bca..67b09b3f80d 100644
--- a/gcc/testsuite/gcc.dg/20020426-1.c
+++ b/gcc/testsuite/gcc.dg/20020426-1.c
@@ -1,6 +1,6 @@
/* { dg-do compile { target i?86-*-* } } */
/* { dg-options "-msoft-float -mfp-ret-in-387" } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
void f() {
__builtin_apply(0, 0, 0);
diff --git a/gcc/testsuite/gcc.dg/20020426-2.c b/gcc/testsuite/gcc.dg/20020426-2.c
index 85f04f871f3..19bf991b346 100644
--- a/gcc/testsuite/gcc.dg/20020426-2.c
+++ b/gcc/testsuite/gcc.dg/20020426-2.c
@@ -3,7 +3,7 @@
/* { dg-do run } */
/* { dg-options "-O2" } */
/* { dg-options "-O2 -frename-registers -fomit-frame-pointer -fPIC -mtune=i686" { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" { target i?86-*-* } } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-bogus "\[Uu\]nresolved symbol .(_GLOBAL_OFFSET_TABLE_|\[_.A-Za-z\]\[_.0-9A-Za-z\]*@(PLT|GOT|GOTOFF))" "PIC unsupported" { xfail *-*-netware* } 0 } */
extern void exit (int);
diff --git a/gcc/testsuite/gcc.dg/20020517-1.c b/gcc/testsuite/gcc.dg/20020517-1.c
index bc6cb8305e0..72b252900d4 100644
--- a/gcc/testsuite/gcc.dg/20020517-1.c
+++ b/gcc/testsuite/gcc.dg/20020517-1.c
@@ -3,7 +3,7 @@
/* { dg-do run } */
/* { dg-options "-O2" } */
/* { dg-options "-O2 -mtune=i686" { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" { target i?86-*-* } } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
#include <limits.h>
diff --git a/gcc/testsuite/gcc.dg/20020523-1.c b/gcc/testsuite/gcc.dg/20020523-1.c
index de0555f37d2..d29f20ae2e6 100644
--- a/gcc/testsuite/gcc.dg/20020523-1.c
+++ b/gcc/testsuite/gcc.dg/20020523-1.c
@@ -2,7 +2,7 @@
This testcase was miscompiled because sse_mov?fcc_const0*
patterns were missing earlyclobber. */
/* { dg-do run { target i386-*-* } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-options "-march=pentium3 -msse -ffast-math -O2" } */
extern void abort (void);
diff --git a/gcc/testsuite/gcc.dg/20020523-2.c b/gcc/testsuite/gcc.dg/20020523-2.c
index dc9a12657e6..086f1d469e6 100644
--- a/gcc/testsuite/gcc.dg/20020523-2.c
+++ b/gcc/testsuite/gcc.dg/20020523-2.c
@@ -2,7 +2,7 @@
This testcase was miscompiled because sse_mov?fcc_const0*
patterns were missing earlyclobber. */
/* { dg-do run { target i386-*-* } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-options "-march=pentium3 -msse -ffast-math -O2" } */
#include "i386-cpuid.h"
diff --git a/gcc/testsuite/gcc.dg/20020729-1.c b/gcc/testsuite/gcc.dg/20020729-1.c
index 028464541df..929b5c361bd 100644
--- a/gcc/testsuite/gcc.dg/20020729-1.c
+++ b/gcc/testsuite/gcc.dg/20020729-1.c
@@ -1,5 +1,5 @@
/* { dg-do compile { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-options "-O2 -march=k6" } */
static inline void *
diff --git a/gcc/testsuite/gcc.dg/20030204-1.c b/gcc/testsuite/gcc.dg/20030204-1.c
index ac7c3add320..33a9eb229f9 100644
--- a/gcc/testsuite/gcc.dg/20030204-1.c
+++ b/gcc/testsuite/gcc.dg/20030204-1.c
@@ -2,7 +2,7 @@
/* { dg-do compile } */
/* { dg-options "-O -ffast-math -funroll-loops" } */
/* { dg-options "-march=pentium3 -O -ffast-math -funroll-loops" { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" { target i?86-*-* } } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
float foo (float *a, int i)
{
diff --git a/gcc/testsuite/gcc.dg/20030826-2.c b/gcc/testsuite/gcc.dg/20030826-2.c
index f38e32372c0..e69c5346a26 100644
--- a/gcc/testsuite/gcc.dg/20030826-2.c
+++ b/gcc/testsuite/gcc.dg/20030826-2.c
@@ -1,7 +1,7 @@
/* { dg-do run } */
/* { dg-options "-O2 -fomit-frame-pointer" } */
/* { dg-options "-O2 -fomit-frame-pointer -march=i386" { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" { target i?86-*-* } } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
extern void abort (void);
extern void exit (int);
diff --git a/gcc/testsuite/gcc.dg/20030926-1.c b/gcc/testsuite/gcc.dg/20030926-1.c
index 8af98aa56ef..09931b378dd 100644
--- a/gcc/testsuite/gcc.dg/20030926-1.c
+++ b/gcc/testsuite/gcc.dg/20030926-1.c
@@ -2,7 +2,7 @@
/* { dg-do compile { target i?86-*-* x86_64-*-* } } */
/* { dg-options "-O2 -minline-all-stringops" } */
/* { dg-options "-O2 -minline-all-stringops -march=pentium4" { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" { target i?86-*-* } } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
extern void *memcpy (void *, const void *, __SIZE_TYPE__);
extern __SIZE_TYPE__ strlen (const char *);
diff --git a/gcc/testsuite/gcc.dg/20031202-1.c b/gcc/testsuite/gcc.dg/20031202-1.c
index 7947770dfd5..ac443a28425 100644
--- a/gcc/testsuite/gcc.dg/20031202-1.c
+++ b/gcc/testsuite/gcc.dg/20031202-1.c
@@ -1,7 +1,7 @@
/* { dg-do run } */
/* { dg-options "-O2" } */
/* { dg-options "-O2 -mtune=i686" { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" { target i?86-*-* } } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
extern void abort (void);
extern void exit (int);
diff --git a/gcc/testsuite/gcc.dg/980312-1.c b/gcc/testsuite/gcc.dg/980312-1.c
index 69553ef4199..83f1488745a 100644
--- a/gcc/testsuite/gcc.dg/980312-1.c
+++ b/gcc/testsuite/gcc.dg/980312-1.c
@@ -1,5 +1,5 @@
/* { dg-do link { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-options "-O2 -march=pentiumpro" } */
extern __inline double
diff --git a/gcc/testsuite/gcc.dg/980313-1.c b/gcc/testsuite/gcc.dg/980313-1.c
index 1e23fee16ed..75566222116 100644
--- a/gcc/testsuite/gcc.dg/980313-1.c
+++ b/gcc/testsuite/gcc.dg/980313-1.c
@@ -1,5 +1,5 @@
/* { dg-do link { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-options "-O2 -march=pentiumpro" } */
extern __inline double
diff --git a/gcc/testsuite/gcc.dg/990117-1.c b/gcc/testsuite/gcc.dg/990117-1.c
index df7636b8a8c..6d71787f305 100644
--- a/gcc/testsuite/gcc.dg/990117-1.c
+++ b/gcc/testsuite/gcc.dg/990117-1.c
@@ -1,5 +1,5 @@
/* { dg-do compile { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-options "-O2 -march=pentiumpro" } */
extern __inline double
diff --git a/gcc/testsuite/gcc.dg/990424-1.c b/gcc/testsuite/gcc.dg/990424-1.c
index 9a3b630554e..d479754a9ef 100644
--- a/gcc/testsuite/gcc.dg/990424-1.c
+++ b/gcc/testsuite/gcc.dg/990424-1.c
@@ -2,7 +2,7 @@
with stdcall functions. */
/* { dg-do run { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-options -mpreferred-stack-boundary=4 } */
void __attribute__((stdcall)) foo(int a, int b, int c);
diff --git a/gcc/testsuite/gcc.dg/990524-1.c b/gcc/testsuite/gcc.dg/990524-1.c
index bded9f412a9..203c1dd452d 100644
--- a/gcc/testsuite/gcc.dg/990524-1.c
+++ b/gcc/testsuite/gcc.dg/990524-1.c
@@ -1,5 +1,5 @@
/* { dg-do compile { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-options "-O2 -march=pentiumpro" } */
typedef struct t_anim_info {
diff --git a/gcc/testsuite/gcc.dg/991230-1.c b/gcc/testsuite/gcc.dg/991230-1.c
index 3bc1b0693ea..1cb66f5c379 100644
--- a/gcc/testsuite/gcc.dg/991230-1.c
+++ b/gcc/testsuite/gcc.dg/991230-1.c
@@ -1,5 +1,5 @@
/* { dg-do run { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-options "-O -ffast-math -mtune=i486" } */
/* Test that floating point greater-than tests are compiled correctly with
diff --git a/gcc/testsuite/gcc.dg/i386-387-1.c b/gcc/testsuite/gcc.dg/i386-387-1.c
index 05861885315..7be1ba34aaa 100644
--- a/gcc/testsuite/gcc.dg/i386-387-1.c
+++ b/gcc/testsuite/gcc.dg/i386-387-1.c
@@ -1,6 +1,6 @@
/* Verify that -mno-fancy-math-387 works. */
/* { dg-do compile { target "i?86-*-*" } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-options "-O -ffast-math -mfpmath=387 -mno-fancy-math-387 -march=i386" } */
/* { dg-final { scan-assembler "call\t_?sin" } } */
/* { dg-final { scan-assembler "call\t_?cos" } } */
diff --git a/gcc/testsuite/gcc.dg/i386-387-2.c b/gcc/testsuite/gcc.dg/i386-387-2.c
index 9642b225e3e..ebbe619df36 100644
--- a/gcc/testsuite/gcc.dg/i386-387-2.c
+++ b/gcc/testsuite/gcc.dg/i386-387-2.c
@@ -1,6 +1,6 @@
/* Verify that -march overrides -mno-fancy-math-387. */
/* { dg-do compile { target "i?86-*-*" } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-options "-O -ffast-math -mfpmath=387 -march=i686 -mno-fancy-math-387" } */
/* { dg-final { scan-assembler "fsin" } } */
/* { dg-final { scan-assembler "fcos" } } */
diff --git a/gcc/testsuite/gcc.dg/i386-387-3.c b/gcc/testsuite/gcc.dg/i386-387-3.c
index 92f95d6fd63..b68928a1adf 100644
--- a/gcc/testsuite/gcc.dg/i386-387-3.c
+++ b/gcc/testsuite/gcc.dg/i386-387-3.c
@@ -1,6 +1,6 @@
/* Verify that 387 mathematical constants are recognized. */
/* { dg-do compile { target "i?86-*-*" } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-options "-O2 -march=i686" } */
/* { dg-final { scan-assembler "fldpi" } } */
diff --git a/gcc/testsuite/gcc.dg/i386-387-4.c b/gcc/testsuite/gcc.dg/i386-387-4.c
index 65834b0e73d..dbe340ca4b6 100644
--- a/gcc/testsuite/gcc.dg/i386-387-4.c
+++ b/gcc/testsuite/gcc.dg/i386-387-4.c
@@ -1,5 +1,5 @@
/* { dg-do compile { target "i?86-*-*" } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-options "-O2 -march=i686" } */
/* { dg-final { scan-assembler "fldpi" } } */
diff --git a/gcc/testsuite/gcc.dg/i386-387-5.c b/gcc/testsuite/gcc.dg/i386-387-5.c
index d5f29b33d15..d438b254db9 100644
--- a/gcc/testsuite/gcc.dg/i386-387-5.c
+++ b/gcc/testsuite/gcc.dg/i386-387-5.c
@@ -1,6 +1,6 @@
/* Verify that -mno-fancy-math-387 works. */
/* { dg-do compile { target "i?86-*-*" } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-options "-O -ffast-math -mfpmath=387 -mno-fancy-math-387 -march=i386" } */
/* { dg-final { scan-assembler "call\t_?atan" } } */
/* { dg-final { scan-assembler "call\t_?log1p" } } */
diff --git a/gcc/testsuite/gcc.dg/i386-387-6.c b/gcc/testsuite/gcc.dg/i386-387-6.c
index 85d2fa4121d..ab6412b7aff 100644
--- a/gcc/testsuite/gcc.dg/i386-387-6.c
+++ b/gcc/testsuite/gcc.dg/i386-387-6.c
@@ -1,6 +1,6 @@
/* Verify that -march overrides -mno-fancy-math-387. */
/* { dg-do compile { target "i?86-*-*" } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-options "-O -ffast-math -mfpmath=387 -march=i686 -mno-fancy-math-387" } */
/* { dg-final { scan-assembler "fpatan" } } */
/* { dg-final { scan-assembler "fyl2xp1" } } */
diff --git a/gcc/testsuite/gcc.dg/i386-asm-1.c b/gcc/testsuite/gcc.dg/i386-asm-1.c
index 593869909ef..a23e0a09298 100644
--- a/gcc/testsuite/gcc.dg/i386-asm-1.c
+++ b/gcc/testsuite/gcc.dg/i386-asm-1.c
@@ -1,6 +1,6 @@
/* PR inline-asm/11676 */
/* { dg-do run { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-options "-O2" } */
extern void abort (void);
diff --git a/gcc/testsuite/gcc.dg/i386-bitfield1.c b/gcc/testsuite/gcc.dg/i386-bitfield1.c
index 1db7cb562bf..5b53acf8dfd 100644
--- a/gcc/testsuite/gcc.dg/i386-bitfield1.c
+++ b/gcc/testsuite/gcc.dg/i386-bitfield1.c
@@ -1,6 +1,6 @@
// Test for bitfield alignment in structs on IA-32
// { dg-do run { target i?86-*-* } }
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
// { dg-options "-O2" }
// { dg-options "-mno-align-double -mno-ms-bitfields" { target i?86-*-interix* i?86-*-cygwin* i?86-*-mingw*} }
diff --git a/gcc/testsuite/gcc.dg/i386-bitfield2.c b/gcc/testsuite/gcc.dg/i386-bitfield2.c
index 60e1697c055..f77a4ab4097 100644
--- a/gcc/testsuite/gcc.dg/i386-bitfield2.c
+++ b/gcc/testsuite/gcc.dg/i386-bitfield2.c
@@ -1,6 +1,6 @@
// Test for bitfield alignment in structs on IA-32
// { dg-do run { target i?86-*-* } }
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
// { dg-options "-O2" }
// { dg-options "-mno-align-double -mno-ms-bitfields" { target i?86-*-interix* i?86-*-cygwin* i?86-*-mingw* } }
diff --git a/gcc/testsuite/gcc.dg/i386-loop-1.c b/gcc/testsuite/gcc.dg/i386-loop-1.c
index b9e0fe20697..9aa23ef900f 100644
--- a/gcc/testsuite/gcc.dg/i386-loop-1.c
+++ b/gcc/testsuite/gcc.dg/i386-loop-1.c
@@ -1,6 +1,6 @@
/* PR optimization/9888 */
/* { dg-do run { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-xfail-if "" { *-*-* } { "-m64" } { "" } } */
/* { dg-options "-mtune=k6 -O3" } */
/* Verify that GCC doesn't emit out of range 'loop' instructions. */
diff --git a/gcc/testsuite/gcc.dg/i386-loop-2.c b/gcc/testsuite/gcc.dg/i386-loop-2.c
index 3da2b09e966..548819a336c 100644
--- a/gcc/testsuite/gcc.dg/i386-loop-2.c
+++ b/gcc/testsuite/gcc.dg/i386-loop-2.c
@@ -1,7 +1,7 @@
/* PR optimization/9888 */
/* Originator: Jim Bray <jb@as220.org> */
/* { dg-do run { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-options "-mtune=k6 -Os" } */
enum reload_type
diff --git a/gcc/testsuite/gcc.dg/i386-loop-3.c b/gcc/testsuite/gcc.dg/i386-loop-3.c
index d574f2f2d2e..394b4e99246 100644
--- a/gcc/testsuite/gcc.dg/i386-loop-3.c
+++ b/gcc/testsuite/gcc.dg/i386-loop-3.c
@@ -2,7 +2,7 @@
/* Originator: Tim McGrath <misty-@charter.net> */
/* Testcase contributed by Eric Botcazou <ebotcazou@libertysurf.fr> */
/* { dg-do run { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-options "-mtune=k6 -O3 -ffast-math -funroll-loops" } */
extern void *memset (void *, int, __SIZE_TYPE__);
diff --git a/gcc/testsuite/gcc.dg/i386-pentium4-not-mull.c b/gcc/testsuite/gcc.dg/i386-pentium4-not-mull.c
index 24516fdd605..2df07822ded 100644
--- a/gcc/testsuite/gcc.dg/i386-pentium4-not-mull.c
+++ b/gcc/testsuite/gcc.dg/i386-pentium4-not-mull.c
@@ -1,6 +1,6 @@
/* { dg-do compile { target i?86-*-* x86_64-*-* } } */
/* { dg-options "-O2 -march=pentium4" { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" { target i?86-*-* } } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-options "-O2 -march=pentium4 -m32" { target x86_64-*-* } } */
/* { dg-final { scan-assembler-not "imull" } } */
diff --git a/gcc/testsuite/gcc.dg/i386-pic-1.c b/gcc/testsuite/gcc.dg/i386-pic-1.c
index 72c46e92735..8fa2caf67f7 100644
--- a/gcc/testsuite/gcc.dg/i386-pic-1.c
+++ b/gcc/testsuite/gcc.dg/i386-pic-1.c
@@ -1,6 +1,6 @@
/* PR target/8340 */
/* { dg-do compile { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-options "-fPIC" } */
int foo ()
diff --git a/gcc/testsuite/gcc.dg/i386-regparm.c b/gcc/testsuite/gcc.dg/i386-regparm.c
index 8406874dd18..601688f6489 100644
--- a/gcc/testsuite/gcc.dg/i386-regparm.c
+++ b/gcc/testsuite/gcc.dg/i386-regparm.c
@@ -1,5 +1,5 @@
/* { dg-do compile { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-options "-W -Wall" } */
/* Verify that GCC correctly detects non-matching regparm attributes. */
diff --git a/gcc/testsuite/gcc.dg/i386-signbit-1.c b/gcc/testsuite/gcc.dg/i386-signbit-1.c
index 2c0fe5c78b5..57c1f5f2cb3 100644
--- a/gcc/testsuite/gcc.dg/i386-signbit-1.c
+++ b/gcc/testsuite/gcc.dg/i386-signbit-1.c
@@ -1,6 +1,6 @@
/* PR optimization/8746 */
/* { dg-do run { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-options "-O1 -mtune=i586" } */
extern void abort (void);
diff --git a/gcc/testsuite/gcc.dg/i386-signbit-2.c b/gcc/testsuite/gcc.dg/i386-signbit-2.c
index dbda6c4c95e..3e35249dadd 100644
--- a/gcc/testsuite/gcc.dg/i386-signbit-2.c
+++ b/gcc/testsuite/gcc.dg/i386-signbit-2.c
@@ -1,6 +1,6 @@
/* PR optimization/8746 */
/* { dg-do run { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-options "-O1 -mtune=i586" } */
extern void abort (void);
diff --git a/gcc/testsuite/gcc.dg/i386-signbit-3.c b/gcc/testsuite/gcc.dg/i386-signbit-3.c
index 476e873d57e..882e6421415 100644
--- a/gcc/testsuite/gcc.dg/i386-signbit-3.c
+++ b/gcc/testsuite/gcc.dg/i386-signbit-3.c
@@ -1,6 +1,6 @@
/* PR optimization/8746 */
/* { dg-do run { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-options "-O1 -mtune=i586" } */
extern void abort (void);
diff --git a/gcc/testsuite/gcc.dg/i386-sse-5.c b/gcc/testsuite/gcc.dg/i386-sse-5.c
index ab2d499c5e7..a35e5d60cb6 100644
--- a/gcc/testsuite/gcc.dg/i386-sse-5.c
+++ b/gcc/testsuite/gcc.dg/i386-sse-5.c
@@ -1,5 +1,5 @@
/* { dg-do compile { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-options "-Winline -O2 -march=i386" } */
typedef double v2df __attribute__ ((vector_size (16)));
v2df p;
diff --git a/gcc/testsuite/gcc.dg/i386-sse-8.c b/gcc/testsuite/gcc.dg/i386-sse-8.c
index 3197e99a24c..7ae52fdca7c 100644
--- a/gcc/testsuite/gcc.dg/i386-sse-8.c
+++ b/gcc/testsuite/gcc.dg/i386-sse-8.c
@@ -5,7 +5,7 @@
/* { dg-do compile { xfail xstormy16-*-* } } */
/* { dg-options "" } */
/* { dg-options "-march=pentium3" { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" { target i?86-*-* } } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
int main()
{
diff --git a/gcc/testsuite/gcc.dg/i386-unroll-1.c b/gcc/testsuite/gcc.dg/i386-unroll-1.c
index 2dff9127721..8ffd2ebe110 100644
--- a/gcc/testsuite/gcc.dg/i386-unroll-1.c
+++ b/gcc/testsuite/gcc.dg/i386-unroll-1.c
@@ -1,6 +1,6 @@
/* PR optimization/8599 */
/* { dg-do run { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
/* { dg-options "-mtune=k6 -O2 -funroll-loops" } */
extern void exit (int);
diff --git a/gcc/testsuite/gcc.dg/tls/opt-1.c b/gcc/testsuite/gcc.dg/tls/opt-1.c
index a35b72b0927..f817c04e151 100644
--- a/gcc/testsuite/gcc.dg/tls/opt-1.c
+++ b/gcc/testsuite/gcc.dg/tls/opt-1.c
@@ -1,7 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O2 -fPIC" } */
/* { dg-options "-O2 -fPIC -mtune=i686" { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" { target i?86-*-* } } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
extern __thread int thr;
diff --git a/gcc/testsuite/gcc.dg/tls/opt-2.c b/gcc/testsuite/gcc.dg/tls/opt-2.c
index a4064f0b8d8..6dc2b0e05aa 100644
--- a/gcc/testsuite/gcc.dg/tls/opt-2.c
+++ b/gcc/testsuite/gcc.dg/tls/opt-2.c
@@ -5,7 +5,7 @@
/* { dg-do link } */
/* { dg-options "-O2 -ftls-model=initial-exec" } */
/* { dg-options "-O2 -ftls-model=initial-exec -march=i686" { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" { target i?86-*-* } } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
__thread int thr;
diff --git a/gcc/testsuite/gcc.dg/unroll-1.c b/gcc/testsuite/gcc.dg/unroll-1.c
index 7a75d6b2812..2ea694f3521 100644
--- a/gcc/testsuite/gcc.dg/unroll-1.c
+++ b/gcc/testsuite/gcc.dg/unroll-1.c
@@ -2,7 +2,7 @@
/* { dg-do run } */
/* { dg-options "-O2 -funroll-loops" } */
/* { dg-options "-mtune=k6 -O2 -funroll-loops" { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" { target i?86-*-* } } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
extern void abort (void);
diff --git a/gcc/testsuite/gcc.misc-tests/i386-pf-3dnow-1.c b/gcc/testsuite/gcc.misc-tests/i386-pf-3dnow-1.c
index a21e9ccf112..e4961cf6c51 100644
--- a/gcc/testsuite/gcc.misc-tests/i386-pf-3dnow-1.c
+++ b/gcc/testsuite/gcc.misc-tests/i386-pf-3dnow-1.c
@@ -2,7 +2,7 @@
variants that use 3DNow! prefetch instructions. */
/* { dg-do compile { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
extern void exit (int);
diff --git a/gcc/testsuite/gcc.misc-tests/i386-pf-athlon-1.c b/gcc/testsuite/gcc.misc-tests/i386-pf-athlon-1.c
index 33acfbb9bd8..08d046bf1c8 100644
--- a/gcc/testsuite/gcc.misc-tests/i386-pf-athlon-1.c
+++ b/gcc/testsuite/gcc.misc-tests/i386-pf-athlon-1.c
@@ -3,7 +3,7 @@
locality hints. */
/* { dg-do compile { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
extern void exit (int);
diff --git a/gcc/testsuite/gcc.misc-tests/i386-pf-none-1.c b/gcc/testsuite/gcc.misc-tests/i386-pf-none-1.c
index 02d0efe726f..155e0f4ac02 100644
--- a/gcc/testsuite/gcc.misc-tests/i386-pf-none-1.c
+++ b/gcc/testsuite/gcc.misc-tests/i386-pf-none-1.c
@@ -2,7 +2,7 @@
that do not support those instructions. */
/* { dg-do compile { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
extern void exit (int);
diff --git a/gcc/testsuite/gcc.misc-tests/i386-pf-sse-1.c b/gcc/testsuite/gcc.misc-tests/i386-pf-sse-1.c
index e5fc0910c24..7d1ed99ecbc 100644
--- a/gcc/testsuite/gcc.misc-tests/i386-pf-sse-1.c
+++ b/gcc/testsuite/gcc.misc-tests/i386-pf-sse-1.c
@@ -2,7 +2,7 @@
variants that use SSE prefetch instructions. */
/* { dg-do compile { target i?86-*-* } } */
-/* { dg-forbid-option "-m64" } */
+/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
extern void exit (int);
diff --git a/gcc/testsuite/lib/gcc-dg.exp b/gcc/testsuite/lib/gcc-dg.exp
index feb1461b5f2..1244462b2d4 100644
--- a/gcc/testsuite/lib/gcc-dg.exp
+++ b/gcc/testsuite/lib/gcc-dg.exp
@@ -446,34 +446,18 @@ proc dg-require-effective-target { args } {
}
}
-# ARGS is a list. The 0th element is the line number at which the
-# dg-forbid-option directive appeared in the source file. The 1st
-# element is a regular expression. If the regular expression matches
-# the command-line options implied by the current multilib, then the
-# test will be treated as unsupported. The 2nd element of the list,
-# if present, is a target selector conditionalizing this directive;
-# if the target selector does not match the current target, this
-# dg-forbid-option directive is ignored.
-
-proc dg-forbid-option { args } {
- set target_name [target_info name]
- set pattern [lindex $args 1]
-
- if {[llength $args] > 2} {
- set selector [lindex $args 2]
- if { [dg-process-target $selector] == "N" } {
- return
- }
- }
-
- # Check to see if the option occurs in the multilib options
- # for this target.
- if {[board_info $target_name exists multilib_flags]} {
- set multilib_flags [board_info $target_name multilib_flags]
- if { [regexp -- ${pattern} $multilib_flags] } {
- upvar dg-do-what dg-do-what
- set dg-do-what [list [lindex ${dg-do-what} 0] "N" "P"]
- }
+# Skip the test (report it as UNSUPPORTED) if the target list and
+# included flags are matched and the excluded flags are not matched.
+#
+# The first argument is the line number of the dg-skip-if directive
+# within the test file. Remaining arguments are as for xfail lists:
+# message { targets } { include } { exclude }
+
+proc dg-skip-if { args } {
+ set args [lreplace $args 0 0]
+ if [check_conditional_xfail $args] {
+ upvar dg-do-what dg-do-what
+ skip_test_and_clear_xfail
}
}