diff --git a/test/CodeGen/ms-inline-asm.c b/test/CodeGen/ms-inline-asm.c
index cfdcfc3..62e466b 100644
--- a/test/CodeGen/ms-inline-asm.c
+++ b/test/CodeGen/ms-inline-asm.c
@@ -97,41 +97,12 @@
 }
 
 void t11(void) {
-  __asm EVEN
-  __asm ALIGN
-// CHECK: t11
-// CHECK: call void asm sideeffect inteldialect "", "~{dirflag},~{fpsr},~{flags}"() nounwind
-// CHECK: call void asm sideeffect inteldialect "", "~{dirflag},~{fpsr},~{flags}"() nounwind
-}
-
-void t12(void) {
-  __asm {
-    _emit 0x4A
-    _emit 0x43
-    _emit 0x4B
-  }
-// CHECK: t12
-// CHECK: call void asm sideeffect inteldialect "", "~{dirflag},~{fpsr},~{flags}"() nounwind
-}
-
-void t13(void) {
-  unsigned arr[10];
-  __asm LENGTH arr ; sizeof(arr)/sizeof(arr[0])
-  __asm SIZE arr   ; sizeof(arr)
-  __asm TYPE arr   ; sizeof(arr[0])
-// CHECK: t13
-// CHECK: call void asm sideeffect inteldialect "", "~{dirflag},~{fpsr},~{flags}"() nounwind
-// CHECK: call void asm sideeffect inteldialect "", "~{dirflag},~{fpsr},~{flags}"() nounwind
-// CHECK: call void asm sideeffect inteldialect "", "~{dirflag},~{fpsr},~{flags}"() nounwind
-}
-
-void t14(void) {
   __asm mov eax, 1
-// CHECK: t14
+// CHECK: t11
 // CHECK: call void asm sideeffect inteldialect "mov eax, $$1", "~{eax},~{dirflag},~{fpsr},~{flags}"() nounwind
 }
 
-unsigned t15(void) {
+unsigned t12(void) {
   unsigned i = 1, j, l = 1, m;
   __asm {
     mov eax, i
@@ -140,6 +111,6 @@
     mov m, eax
   }
   return j + m;
-// CHECK: t15
+// CHECK: t12
 // CHECK: call void asm sideeffect inteldialect "mov eax, $2\0A\09mov $0, eax\0A\09mov eax, $3\0A\09mov $1, eax", "=*m,=*m,*m,*m,~{eax},~{dirflag},~{fpsr},~{flags}"(i32* %{{.*}}, i32* %{{.*}}, i32* %{{.*}}, i32* %{{.*}}) nounwind
 }
