aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/Coverage/codegen-gnu.m8
-rw-r--r--test/Coverage/objc-language-features.inc4
2 files changed, 9 insertions, 3 deletions
diff --git a/test/Coverage/codegen-gnu.m b/test/Coverage/codegen-gnu.m
index 63cd468505..9d5aa89fa5 100644
--- a/test/Coverage/codegen-gnu.m
+++ b/test/Coverage/codegen-gnu.m
@@ -1,5 +1,7 @@
-// RUN: clang -fgnu-runtime -emit-llvm -o %t %s &&
-// RUN: clang -g -fgnu-runtime -emit-llvm -o %t %s
-// XFAIL
+// RUN: clang -DIRGENABLE_GNU -DIRGENABLE -fgnu-runtime -emit-llvm -o %t %s &&
+// RUN: clang -DIRGENABLE_GNU -DIRGENABLE -g -fgnu-runtime -emit-llvm -o %t %s &&
+
+// FIXME: Remove once GNU can IRgen everything.
+// RUN: ! clang -fgnu-runtime -emit-llvm -o %t %s
#include "objc-language-features.inc"
diff --git a/test/Coverage/objc-language-features.inc b/test/Coverage/objc-language-features.inc
index 0e6237e012..793d0e5a44 100644
--- a/test/Coverage/objc-language-features.inc
+++ b/test/Coverage/objc-language-features.inc
@@ -52,11 +52,14 @@
@end
int f0(id x) {
+#ifndef IRGENABLE_GNU
#ifndef IRGENABLE
@synchronized(x) {
}
#endif
+#endif
+#ifndef IRGENABLE_GNU
@try {
@throw x;
} @catch(A *e) {
@@ -68,6 +71,7 @@ int f0(id x) {
for (id y in x) {
break;
}
+#endif
}
struct s0 {