]> granicus.if.org Git - clang/commitdiff
[ms-inline asm] Add a test case for r166723 and r166724.
authorChad Rosier <mcrosier@apple.com>
Thu, 25 Oct 2012 21:52:03 +0000 (21:52 +0000)
committerChad Rosier <mcrosier@apple.com>
Thu, 25 Oct 2012 21:52:03 +0000 (21:52 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166725 91177308-0d34-0410-b5e6-96231b3b80d8

test/CodeGen/ms-inline-asm.c

index e875698684f7b85993a06328787d5a0d0411ba1f..cd0d05ebf64c685719fe17cca016097a0a397a1f 100644 (file)
@@ -179,3 +179,17 @@ int t18() {
 // CHECK: t18
 // CHECK: call void asm sideeffect inteldialect "lea ebx, foo\0A\09mov eax, [ebx].0\0A\09mov [ebx].4, ecx", "~{eax},~{dirflag},~{fpsr},~{flags}"() nounwind
 }
+
+int t19() {
+  struct t18_type foo;
+  foo.a = 1;
+  foo.b = 2;
+  __asm {
+     lea ebx, foo
+     mov eax, [ebx].foo.a
+     mov [ebx].foo.b, ecx
+  }
+  return foo.b;
+// CHECK: t19
+// CHECK: call void asm sideeffect inteldialect "lea ebx, foo\0A\09mov eax, [ebx].0\0A\09mov [ebx].4, ecx", "~{eax},~{dirflag},~{fpsr},~{flags}"() nounwind
+}