ARM assembly parsing and encoding for four-register VST1.
[oota-llvm.git] / test / MC / X86 / x86-32-coverage.s
index f97fc4bee03547dbad2a7710a6ce8a48b940e5c0..577ac40e321a1b02f392fcd8d2f6fb4aedf6347d 100644 (file)
@@ -18,7 +18,7 @@
 // CHECK:      movswl  3735928559(%ebx,%ecx,8), %ecx
                movswl  0xdeadbeef(%ebx,%ecx,8),%ecx
 
-// CHECK:      movzbl  3735928559(%ebx,%ecx,8), %ecx  # NOREX
+// CHECK:      movzbl  3735928559(%ebx,%ecx,8), %ecx
                movzbl  0xdeadbeef(%ebx,%ecx,8),%ecx
 
 // CHECK:      movzwl  3735928559(%ebx,%ecx,8), %ecx
 // CHECK:      leave
                leave
 
+// CHECK:      leave
+               leavel
+
 // CHECK:      seto    %bl
                seto    %bl
 
 // CHECK:      nop
                nop
 
+// CHECK: flds (%edi)
+// CHECK:  encoding: [0xd9,0x07]
+               flds    (%edi)
+
+// CHECK: filds        (%edi)
+// CHECK:  encoding: [0xdf,0x07]
+               filds   (%edi)
+
 // CHECK:      fldl    3735928559(%ebx,%ecx,8)
                fldl    0xdeadbeef(%ebx,%ecx,8)
 
 // CHECK:      sysexit
                sysexit
 
+// CHECK:      sysexitl
+               sysexitl
+
 // CHECK:      ud2
                ud2
 
-// CHECK:      movnti  %ecx, 3735928559(%ebx,%ecx,8)
+// CHECK:      movntil %ecx, 3735928559(%ebx,%ecx,8)
                movnti  %ecx,0xdeadbeef(%ebx,%ecx,8)
 
 // CHECK:      clflush 3735928559(%ebx,%ecx,8)
 // CHECK:  encoding: [0xc9]
                leave
 
+// CHECK: leave
+// CHECK:  encoding: [0xc9]
+               leavel
+
 // CHECK: seto %bl
 // CHECK:  encoding: [0x0f,0x90,0xc3]
                seto    %bl
 // CHECK:  encoding: [0x0f,0x35]
                sysexit
 
+// CHECK: sysexitl
+// CHECK:  encoding: [0x0f,0x35]
+               sysexitl
+
 // CHECK: fxsave       3735928559(%ebx,%ecx,8)
 // CHECK:  encoding: [0x0f,0xae,0x84,0xcb,0xef,0xbe,0xad,0xde]
                fxsave  0xdeadbeef(%ebx,%ecx,8)
 // CHECK:  encoding: [0xdb,0xda]
                fcmovnu %st(2),%st
 
-// CHECK: fcomi        %st(2), %st(0)
+// CHECK: fcomi        %st(2)
 // CHECK:  encoding: [0xdb,0xf2]
                fcomi   %st(2),%st
 
-// CHECK: fucomi       %st(2), %st(0)
+// CHECK: fucomi       %st(2)
 // CHECK:  encoding: [0xdb,0xea]
                fucomi  %st(2),%st
 
-// CHECK: fcomip       %st(2), %st(0)
+// CHECK: fcompi       %st(2)
 // CHECK:  encoding: [0xdf,0xf2]
                fcomip  %st(2),%st
 
-// CHECK: fucomip      %st(2), %st(0)
+// CHECK: fucompi      %st(2)
 // CHECK:  encoding: [0xdf,0xea]
                fucomip %st(2),%st
 
-// CHECK: movnti       %ecx, 3735928559(%ebx,%ecx,8)
+// CHECK: movntil      %ecx, 3735928559(%ebx,%ecx,8)
 // CHECK:  encoding: [0x0f,0xc3,0x8c,0xcb,0xef,0xbe,0xad,0xde]
                movnti  %ecx,0xdeadbeef(%ebx,%ecx,8)
 
-// CHECK: movnti       %ecx, 69
+// CHECK: movntil      %ecx, 69
 // CHECK:  encoding: [0x0f,0xc3,0x0d,0x45,0x00,0x00,0x00]
                movnti  %ecx,0x45
 
-// CHECK: movnti       %ecx, 32493
+// CHECK: movntil      %ecx, 32493
 // CHECK:  encoding: [0x0f,0xc3,0x0d,0xed,0x7e,0x00,0x00]
                movnti  %ecx,0x7eed
 
-// CHECK: movnti       %ecx, 3133065982
+// CHECK: movntil      %ecx, 3133065982
 // CHECK:  encoding: [0x0f,0xc3,0x0d,0xfe,0xca,0xbe,0xba]
                movnti  %ecx,0xbabecafe
 
-// CHECK: movnti       %ecx, 305419896
+// CHECK: movntil      %ecx, 305419896
 // CHECK:  encoding: [0x0f,0xc3,0x0d,0x78,0x56,0x34,0x12]
                movnti  %ecx,0x12345678
 
 // CHECK:      movswl  305419896, %ecx
                movswl  0x12345678,%ecx
 
-// CHECK:      movzbl  3735928559(%ebx,%ecx,8), %ecx  # NOREX
+// CHECK:      movzbl  3735928559(%ebx,%ecx,8), %ecx
                movzbl  0xdeadbeef(%ebx,%ecx,8),%ecx
 
-// CHECK:      movzbl  69, %ecx  # NOREX
+// CHECK:      movzbl  69, %ecx
                movzbl  0x45,%ecx
 
-// CHECK:      movzbl  32493, %ecx  # NOREX
+// CHECK:      movzbl  32493, %ecx
                movzbl  0x7eed,%ecx
 
-// CHECK:      movzbl  3133065982, %ecx  # NOREX
+// CHECK:      movzbl  3133065982, %ecx
                movzbl  0xbabecafe,%ecx
 
-// CHECK:      movzbl  305419896, %ecx  # NOREX
+// CHECK:      movzbl  305419896, %ecx
                movzbl  0x12345678,%ecx
 
 // CHECK:      movzbw  3735928559(%ebx,%ecx,8), %bx
 // CHECK:      fcmovnu %st(2), %st(0)
                fcmovnu %st(2),%st
 
-// CHECK:      fcomi   %st(2), %st(0)
+// CHECK:      fcomi   %st(2)
                fcomi   %st(2),%st
 
-// CHECK:      fucomi  %st(2), %st(0)
+// CHECK:      fucomi  %st(2)
                fucomi  %st(2),%st
 
-// CHECK:      fcomip  %st(2), %st(0)
+// CHECK:      fcompi  %st(2)
                fcomip  %st(2),%st
 
-// CHECK:      fucomip %st(2), %st(0)
+// CHECK:      fucompi %st(2)
                fucomip %st(2),%st
 
-// CHECK:      movnti  %ecx, 3735928559(%ebx,%ecx,8)
+// CHECK:      movntil %ecx, 3735928559(%ebx,%ecx,8)
                movnti  %ecx,0xdeadbeef(%ebx,%ecx,8)
 
-// CHECK:      movnti  %ecx, 69
-               movnti  %ecx,0x45
+// CHECK:      movntil %ecx, 69
+               movntil %ecx,0x45
 
-// CHECK:      movnti  %ecx, 32493
+// CHECK:      movntil %ecx, 32493
                movnti  %ecx,0x7eed
 
-// CHECK:      movnti  %ecx, 3133065982
+// CHECK:      movntil %ecx, 3133065982
                movnti  %ecx,0xbabecafe
 
-// CHECK:      movnti  %ecx, 305419896
+// CHECK:      movntil %ecx, 305419896
                movnti  %ecx,0x12345678
 
 // CHECK:      clflush 3735928559(%ebx,%ecx,8)
 
 // CHECK:      aeskeygenassist $125, (%edx,%eax,4), %xmm2
                 aeskeygenassist $125, (%edx,%eax,4), %xmm2
+
+// CHECK:   blendvps   (%eax), %xmm1   # encoding: [0x66,0x0f,0x38,0x14,0x08]
+            blendvps (%eax), %xmm1
+// CHECK:   blendvps   %xmm2, %xmm1    # encoding: [0x66,0x0f,0x38,0x14,0xca]
+            blendvps %xmm2, %xmm1
+
+// rdar://9795008
+// These instructions take a mask not an 8-bit sign extended value.
+// CHECK: blendps $129, %xmm2, %xmm1
+          blendps $0x81, %xmm2, %xmm1
+// CHECK: blendpd $129, %xmm2, %xmm1
+          blendpd $0x81, %xmm2, %xmm1
+// CHECK: pblendw $129, %xmm2, %xmm1
+          pblendw $0x81, %xmm2, %xmm1
+// CHECK: mpsadbw $129, %xmm2, %xmm1
+          mpsadbw $0x81, %xmm2, %xmm1
+// CHECK: dpps $129, %xmm2, %xmm1
+          dpps $0x81, %xmm2, %xmm1
+// CHECK: dppd $129, %xmm2, %xmm1
+          dppd $0x81, %xmm2, %xmm1
+// CHECK: insertps $129, %xmm2, %xmm1
+          insertps $0x81, %xmm2, %xmm1