b2596086308f8ff09801e72c60a9013bb24dbc94
[oota-llvm.git] / test / MC / AsmParser / X86 / x86_64-encoding.s
1 // RUN: llvm-mc -triple x86_64-unknown-unknown --show-encoding %s | FileCheck %s
2
3 // CHECK: crc32b        %bl, %eax
4 // CHECK:  encoding: [0xf2,0x0f,0x38,0xf0,0xc3]
5         crc32b  %bl, %eax
6
7 // CHECK: crc32b        4(%rbx), %eax
8 // CHECK:  encoding: [0xf2,0x0f,0x38,0xf0,0x43,0x04]
9         crc32b  4(%rbx), %eax
10
11 // CHECK: crc32w        %bx, %eax
12 // CHECK:  encoding: [0x66,0xf2,0x0f,0x38,0xf1,0xc3]
13         crc32w  %bx, %eax
14
15 // CHECK: crc32w        4(%rbx), %eax
16 // CHECK:  encoding: [0x66,0xf2,0x0f,0x38,0xf1,0x43,0x04]
17         crc32w  4(%rbx), %eax
18
19 // CHECK: crc32l        %ebx, %eax
20 // CHECK:  encoding: [0xf2,0x0f,0x38,0xf1,0xc3]
21         crc32l  %ebx, %eax
22
23 // CHECK: crc32l        4(%rbx), %eax
24 // CHECK:  encoding: [0xf2,0x0f,0x38,0xf1,0x43,0x04]
25         crc32l  4(%rbx), %eax
26
27 // CHECK: crc32l        3735928559(%rbx,%rcx,8), %ecx
28 // CHECK:  encoding: [0xf2,0x0f,0x38,0xf1,0x8c,0xcb,0xef,0xbe,0xad,0xde]
29                 crc32l   0xdeadbeef(%rbx,%rcx,8),%ecx
30
31 // CHECK: crc32l        69, %ecx
32 // CHECK:  encoding: [0xf2,0x0f,0x38,0xf1,0x0c,0x25,0x45,0x00,0x00,0x00]
33                 crc32l   0x45,%ecx
34
35 // CHECK: crc32l        32493, %ecx
36 // CHECK:  encoding: [0xf2,0x0f,0x38,0xf1,0x0c,0x25,0xed,0x7e,0x00,0x00]
37                 crc32l   0x7eed,%ecx
38
39 // CHECK: crc32l        3133065982, %ecx
40 // CHECK:  encoding: [0xf2,0x0f,0x38,0xf1,0x0c,0x25,0xfe,0xca,0xbe,0xba]
41                 crc32l   0xbabecafe,%ecx
42
43 // CHECK: crc32l        %ecx, %ecx
44 // CHECK:  encoding: [0xf2,0x0f,0x38,0xf1,0xc9]
45                 crc32l   %ecx,%ecx
46
47 // CHECK: crc32b        %r11b, %eax
48 // CHECK:  encoding: [0xf2,0x41,0x0f,0x38,0xf0,0xc3]
49         crc32b  %r11b, %eax
50
51 // CHECK: crc32b        4(%rbx), %eax
52 // CHECK:  encoding: [0xf2,0x0f,0x38,0xf0,0x43,0x04]
53         crc32b  4(%rbx), %eax
54
55 // CHECK: crc32b        %dil, %rax
56 // CHECK:  encoding: [0xf2,0x48,0x0f,0x38,0xf0,0xc7]
57         crc32b  %dil,%rax
58
59 // CHECK: crc32b        %r11b, %rax
60 // CHECK:  encoding: [0xf2,0x49,0x0f,0x38,0xf0,0xc3]
61         crc32b  %r11b,%rax
62
63 // CHECK: crc32b        4(%rbx), %rax
64 // CHECK:  encoding: [0xf2,0x48,0x0f,0x38,0xf0,0x43,0x04]
65         crc32b  4(%rbx), %rax
66
67 // CHECK: crc32q        %rbx, %rax
68 // CHECK:  encoding: [0xf2,0x48,0x0f,0x38,0xf1,0xc3]
69         crc32q  %rbx, %rax
70
71 // CHECK: crc32q        4(%rbx), %rax
72 // CHECK:  encoding: [0xf2,0x48,0x0f,0x38,0xf1,0x43,0x04]
73         crc32q  4(%rbx), %rax
74
75 // CHECK: movd %r8, %mm1
76 // CHECK:  encoding: [0x49,0x0f,0x6e,0xc8]
77 movd %r8, %mm1
78
79 // CHECK: movd %r8d, %mm1
80 // CHECK:  encoding: [0x41,0x0f,0x6e,0xc8]
81 movd %r8d, %mm1
82
83 // CHECK: movd %rdx, %mm1
84 // CHECK:  encoding: [0x48,0x0f,0x6e,0xca]
85 movd %rdx, %mm1
86
87 // CHECK: movd %edx, %mm1
88 // CHECK:  encoding: [0x0f,0x6e,0xca]
89 movd %edx, %mm1
90
91 // CHECK: movd %mm1, %r8
92 // CHECK:  encoding: [0x49,0x0f,0x7e,0xc8]
93 movd %mm1, %r8
94
95 // CHECK: movd %mm1, %r8d
96 // CHECK:  encoding: [0x41,0x0f,0x7e,0xc8]
97 movd %mm1, %r8d
98
99 // CHECK: movd %mm1, %rdx
100 // CHECK:  encoding: [0x48,0x0f,0x7e,0xca]
101 movd %mm1, %rdx
102
103 // CHECK: movd %mm1, %edx
104 // CHECK:  encoding: [0x0f,0x7e,0xca]
105 movd %mm1, %edx
106
107 // CHECK: vaddss  %xmm8, %xmm9, %xmm10
108 // CHECK:  encoding: [0xc4,0x41,0x32,0x58,0xd0]
109 vaddss  %xmm8, %xmm9, %xmm10
110
111 // CHECK: vmulss  %xmm8, %xmm9, %xmm10
112 // CHECK:  encoding: [0xc4,0x41,0x32,0x59,0xd0]
113 vmulss  %xmm8, %xmm9, %xmm10
114
115 // CHECK: vsubss  %xmm8, %xmm9, %xmm10
116 // CHECK:  encoding: [0xc4,0x41,0x32,0x5c,0xd0]
117 vsubss  %xmm8, %xmm9, %xmm10
118
119 // CHECK: vdivss  %xmm8, %xmm9, %xmm10
120 // CHECK:  encoding: [0xc4,0x41,0x32,0x5e,0xd0]
121 vdivss  %xmm8, %xmm9, %xmm10
122
123 // CHECK: vaddsd  %xmm8, %xmm9, %xmm10
124 // CHECK:  encoding: [0xc4,0x41,0x33,0x58,0xd0]
125 vaddsd  %xmm8, %xmm9, %xmm10
126
127 // CHECK: vmulsd  %xmm8, %xmm9, %xmm10
128 // CHECK:  encoding: [0xc4,0x41,0x33,0x59,0xd0]
129 vmulsd  %xmm8, %xmm9, %xmm10
130
131 // CHECK: vsubsd  %xmm8, %xmm9, %xmm10
132 // CHECK:  encoding: [0xc4,0x41,0x33,0x5c,0xd0]
133 vsubsd  %xmm8, %xmm9, %xmm10
134
135 // CHECK: vdivsd  %xmm8, %xmm9, %xmm10
136 // CHECK:  encoding: [0xc4,0x41,0x33,0x5e,0xd0]
137 vdivsd  %xmm8, %xmm9, %xmm10