aboutsummaryrefslogtreecommitdiff
path: root/test/CodeGen/asm.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/CodeGen/asm.c')
-rw-r--r--test/CodeGen/asm.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/test/CodeGen/asm.c b/test/CodeGen/asm.c
index 7199f09e1a3c..019eb9ca3e67 100644
--- a/test/CodeGen/asm.c
+++ b/test/CodeGen/asm.c
@@ -1,4 +1,13 @@
// RUN: %clang_cc1 -triple i386-unknown-unknown -emit-llvm %s -o - | FileCheck %s
+
+// PR10415
+__asm__ ("foo1");
+__asm__ ("foo2");
+__asm__ ("foo3");
+// CHECK: module asm "foo1"
+// CHECK-NEXT: module asm "foo2"
+// CHECK-NEXT: module asm "foo3"
+
void t1(int len) {
__asm__ volatile("" : "=&r"(len), "+&r"(len));
}
@@ -191,6 +200,15 @@ unsigned char t23(unsigned char a, unsigned char b) {
return res;
}
+void *t24(char c) {
+ void *addr;
+ // CHECK: @t24
+ // CHECK: zext i8 {{.*}} to i32
+ // CHECK-NEXT: call i8* asm "foobar"
+ __asm__ ("foobar" : "=a" (addr) : "0" (c));
+ return addr;
+}
+
// PR10299 - fpsr, fpcr
void test(void)