]> granicus.if.org Git - clang/commitdiff
Add a test for PR20343 after llvm r213303.
authorNico Weber <nicolasweber@gmx.de>
Thu, 17 Jul 2014 20:25:36 +0000 (20:25 +0000)
committerNico Weber <nicolasweber@gmx.de>
Thu, 17 Jul 2014 20:25:36 +0000 (20:25 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@213305 91177308-0d34-0410-b5e6-96231b3b80d8

test/CodeGen/ms-inline-asm.c

index 3b55b50aa1230927c6b567e28fd6242d1102ebc2..e08803cb8935e6b66af79963bedb3ce2d0ffaf65 100644 (file)
@@ -476,3 +476,19 @@ void t40(float a) {
   // CHECK: call void asm sideeffect inteldialect "fld dword ptr $0", "*m,~{dirflag},~{fpsr},~{flags}"(float* {{.*}})
   // CHECK: call void asm sideeffect inteldialect "fistp dword ptr $0", "=*m,~{dirflag},~{fpsr},~{flags}"(i32* {{.*}})
 }
+
+void t41(unsigned short a) {
+  __asm mov cs, a;
+  __asm mov ds, a;
+  __asm mov es, a;
+  __asm mov fs, a;
+  __asm mov gs, a;
+  __asm mov ss, a;
+  // CHECK-LABEL: define void @t41
+  // CHECK: call void asm sideeffect inteldialect "mov cs, word ptr $0", "*m,~{dirflag},~{fpsr},~{flags}"(i16* %a.addr)
+  // CHECK: call void asm sideeffect inteldialect "mov ds, word ptr $0", "*m,~{dirflag},~{fpsr},~{flags}"(i16* %a.addr)
+  // CHECK: call void asm sideeffect inteldialect "mov es, word ptr $0", "*m,~{dirflag},~{fpsr},~{flags}"(i16* %a.addr)
+  // CHECK: call void asm sideeffect inteldialect "mov fs, word ptr $0", "*m,~{dirflag},~{fpsr},~{flags}"(i16* %a.addr)
+  // CHECK: call void asm sideeffect inteldialect "mov gs, word ptr $0", "*m,~{dirflag},~{fpsr},~{flags}"(i16* %a.addr)
+  // CHECK: call void asm sideeffect inteldialect "mov ss, word ptr $0", "*m,~{dirflag},~{fpsr},~{flags}"(i16* %a.addr)
+}