summaryrefslogtreecommitdiffstats
path: root/clang/test
diff options
context:
space:
mode:
Diffstat (limited to 'clang/test')
-rw-r--r--clang/test/PCH/asm.c11
-rw-r--r--clang/test/PCH/asm.h14
2 files changed, 25 insertions, 0 deletions
diff --git a/clang/test/PCH/asm.c b/clang/test/PCH/asm.c
new file mode 100644
index 00000000000..135abc17968
--- /dev/null
+++ b/clang/test/PCH/asm.c
@@ -0,0 +1,11 @@
+// Test this without pch.
+// RUN: clang-cc -include %S/asm.h -fsyntax-only -verify %s
+
+// Test with pch.
+// RUN: clang-cc -emit-pch -o %t %S/asm.h &&
+// RUN: clang-cc -include-pch %t -fsyntax-only -verify %s
+
+
+void call_f(void) { f(); }
+
+void call_clobbers(void) { clobbers(); }
diff --git a/clang/test/PCH/asm.h b/clang/test/PCH/asm.h
new file mode 100644
index 00000000000..a568058d58f
--- /dev/null
+++ b/clang/test/PCH/asm.h
@@ -0,0 +1,14 @@
+// Header for the PCH test asm.c
+
+void f() {
+ int i;
+
+ asm ("foo\n" : : "a" (i + 2));
+ asm ("foo\n" : [symbolic_name] "=a" (i) : "[symbolic_name]" (i));
+}
+
+void clobbers() {
+ asm ("nop" : : : "ax", "#ax", "%ax");
+ asm ("nop" : : : "eax", "rax", "ah", "al");
+ asm ("nop" : : : "0", "%0", "#0");
+}
OpenPOWER on IntegriCloud