[llvm-readobj] - Simplify stack-sizes.test test case.
[llvm-complete.git] / test / MC / X86 / AES-64.s
blobe451c3c05626fb626bc987301c215677005d35ff
1 // RUN: llvm-mc -triple x86_64-unknown-unknown --show-encoding %s | FileCheck %s
3 // CHECK: aesdec 485498096, %xmm15
4 // CHECK: encoding: [0x66,0x44,0x0f,0x38,0xde,0x3c,0x25,0xf0,0x1c,0xf0,0x1c]
5 aesdec 485498096, %xmm15
7 // CHECK: aesdec 485498096, %xmm6
8 // CHECK: encoding: [0x66,0x0f,0x38,0xde,0x34,0x25,0xf0,0x1c,0xf0,0x1c]
9 aesdec 485498096, %xmm6
11 // CHECK: aesdec 64(%rdx,%rax,4), %xmm15
12 // CHECK: encoding: [0x66,0x44,0x0f,0x38,0xde,0x7c,0x82,0x40]
13 aesdec 64(%rdx,%rax,4), %xmm15
15 // CHECK: aesdec -64(%rdx,%rax,4), %xmm15
16 // CHECK: encoding: [0x66,0x44,0x0f,0x38,0xde,0x7c,0x82,0xc0]
17 aesdec -64(%rdx,%rax,4), %xmm15
19 // CHECK: aesdec 64(%rdx,%rax,4), %xmm6
20 // CHECK: encoding: [0x66,0x0f,0x38,0xde,0x74,0x82,0x40]
21 aesdec 64(%rdx,%rax,4), %xmm6
23 // CHECK: aesdec -64(%rdx,%rax,4), %xmm6
24 // CHECK: encoding: [0x66,0x0f,0x38,0xde,0x74,0x82,0xc0]
25 aesdec -64(%rdx,%rax,4), %xmm6
27 // CHECK: aesdec 64(%rdx,%rax), %xmm15
28 // CHECK: encoding: [0x66,0x44,0x0f,0x38,0xde,0x7c,0x02,0x40]
29 aesdec 64(%rdx,%rax), %xmm15
31 // CHECK: aesdec 64(%rdx,%rax), %xmm6
32 // CHECK: encoding: [0x66,0x0f,0x38,0xde,0x74,0x02,0x40]
33 aesdec 64(%rdx,%rax), %xmm6
35 // CHECK: aesdec 64(%rdx), %xmm15
36 // CHECK: encoding: [0x66,0x44,0x0f,0x38,0xde,0x7a,0x40]
37 aesdec 64(%rdx), %xmm15
39 // CHECK: aesdec 64(%rdx), %xmm6
40 // CHECK: encoding: [0x66,0x0f,0x38,0xde,0x72,0x40]
41 aesdec 64(%rdx), %xmm6
43 // CHECK: aesdeclast 485498096, %xmm15
44 // CHECK: encoding: [0x66,0x44,0x0f,0x38,0xdf,0x3c,0x25,0xf0,0x1c,0xf0,0x1c]
45 aesdeclast 485498096, %xmm15
47 // CHECK: aesdeclast 485498096, %xmm6
48 // CHECK: encoding: [0x66,0x0f,0x38,0xdf,0x34,0x25,0xf0,0x1c,0xf0,0x1c]
49 aesdeclast 485498096, %xmm6
51 // CHECK: aesdeclast 64(%rdx,%rax,4), %xmm15
52 // CHECK: encoding: [0x66,0x44,0x0f,0x38,0xdf,0x7c,0x82,0x40]
53 aesdeclast 64(%rdx,%rax,4), %xmm15
55 // CHECK: aesdeclast -64(%rdx,%rax,4), %xmm15
56 // CHECK: encoding: [0x66,0x44,0x0f,0x38,0xdf,0x7c,0x82,0xc0]
57 aesdeclast -64(%rdx,%rax,4), %xmm15
59 // CHECK: aesdeclast 64(%rdx,%rax,4), %xmm6
60 // CHECK: encoding: [0x66,0x0f,0x38,0xdf,0x74,0x82,0x40]
61 aesdeclast 64(%rdx,%rax,4), %xmm6
63 // CHECK: aesdeclast -64(%rdx,%rax,4), %xmm6
64 // CHECK: encoding: [0x66,0x0f,0x38,0xdf,0x74,0x82,0xc0]
65 aesdeclast -64(%rdx,%rax,4), %xmm6
67 // CHECK: aesdeclast 64(%rdx,%rax), %xmm15
68 // CHECK: encoding: [0x66,0x44,0x0f,0x38,0xdf,0x7c,0x02,0x40]
69 aesdeclast 64(%rdx,%rax), %xmm15
71 // CHECK: aesdeclast 64(%rdx,%rax), %xmm6
72 // CHECK: encoding: [0x66,0x0f,0x38,0xdf,0x74,0x02,0x40]
73 aesdeclast 64(%rdx,%rax), %xmm6
75 // CHECK: aesdeclast 64(%rdx), %xmm15
76 // CHECK: encoding: [0x66,0x44,0x0f,0x38,0xdf,0x7a,0x40]
77 aesdeclast 64(%rdx), %xmm15
79 // CHECK: aesdeclast 64(%rdx), %xmm6
80 // CHECK: encoding: [0x66,0x0f,0x38,0xdf,0x72,0x40]
81 aesdeclast 64(%rdx), %xmm6
83 // CHECK: aesdeclast (%rdx), %xmm15
84 // CHECK: encoding: [0x66,0x44,0x0f,0x38,0xdf,0x3a]
85 aesdeclast (%rdx), %xmm15
87 // CHECK: aesdeclast (%rdx), %xmm6
88 // CHECK: encoding: [0x66,0x0f,0x38,0xdf,0x32]
89 aesdeclast (%rdx), %xmm6
91 // CHECK: aesdeclast %xmm15, %xmm15
92 // CHECK: encoding: [0x66,0x45,0x0f,0x38,0xdf,0xff]
93 aesdeclast %xmm15, %xmm15
95 // CHECK: aesdeclast %xmm6, %xmm6
96 // CHECK: encoding: [0x66,0x0f,0x38,0xdf,0xf6]
97 aesdeclast %xmm6, %xmm6
99 // CHECK: aesdec (%rdx), %xmm15
100 // CHECK: encoding: [0x66,0x44,0x0f,0x38,0xde,0x3a]
101 aesdec (%rdx), %xmm15
103 // CHECK: aesdec (%rdx), %xmm6
104 // CHECK: encoding: [0x66,0x0f,0x38,0xde,0x32]
105 aesdec (%rdx), %xmm6
107 // CHECK: aesdec %xmm15, %xmm15
108 // CHECK: encoding: [0x66,0x45,0x0f,0x38,0xde,0xff]
109 aesdec %xmm15, %xmm15
111 // CHECK: aesdec %xmm6, %xmm6
112 // CHECK: encoding: [0x66,0x0f,0x38,0xde,0xf6]
113 aesdec %xmm6, %xmm6
115 // CHECK: aesenc 485498096, %xmm15
116 // CHECK: encoding: [0x66,0x44,0x0f,0x38,0xdc,0x3c,0x25,0xf0,0x1c,0xf0,0x1c]
117 aesenc 485498096, %xmm15
119 // CHECK: aesenc 485498096, %xmm6
120 // CHECK: encoding: [0x66,0x0f,0x38,0xdc,0x34,0x25,0xf0,0x1c,0xf0,0x1c]
121 aesenc 485498096, %xmm6
123 // CHECK: aesenc 64(%rdx,%rax,4), %xmm15
124 // CHECK: encoding: [0x66,0x44,0x0f,0x38,0xdc,0x7c,0x82,0x40]
125 aesenc 64(%rdx,%rax,4), %xmm15
127 // CHECK: aesenc -64(%rdx,%rax,4), %xmm15
128 // CHECK: encoding: [0x66,0x44,0x0f,0x38,0xdc,0x7c,0x82,0xc0]
129 aesenc -64(%rdx,%rax,4), %xmm15
131 // CHECK: aesenc 64(%rdx,%rax,4), %xmm6
132 // CHECK: encoding: [0x66,0x0f,0x38,0xdc,0x74,0x82,0x40]
133 aesenc 64(%rdx,%rax,4), %xmm6
135 // CHECK: aesenc -64(%rdx,%rax,4), %xmm6
136 // CHECK: encoding: [0x66,0x0f,0x38,0xdc,0x74,0x82,0xc0]
137 aesenc -64(%rdx,%rax,4), %xmm6
139 // CHECK: aesenc 64(%rdx,%rax), %xmm15
140 // CHECK: encoding: [0x66,0x44,0x0f,0x38,0xdc,0x7c,0x02,0x40]
141 aesenc 64(%rdx,%rax), %xmm15
143 // CHECK: aesenc 64(%rdx,%rax), %xmm6
144 // CHECK: encoding: [0x66,0x0f,0x38,0xdc,0x74,0x02,0x40]
145 aesenc 64(%rdx,%rax), %xmm6
147 // CHECK: aesenc 64(%rdx), %xmm15
148 // CHECK: encoding: [0x66,0x44,0x0f,0x38,0xdc,0x7a,0x40]
149 aesenc 64(%rdx), %xmm15
151 // CHECK: aesenc 64(%rdx), %xmm6
152 // CHECK: encoding: [0x66,0x0f,0x38,0xdc,0x72,0x40]
153 aesenc 64(%rdx), %xmm6
155 // CHECK: aesenclast 485498096, %xmm15
156 // CHECK: encoding: [0x66,0x44,0x0f,0x38,0xdd,0x3c,0x25,0xf0,0x1c,0xf0,0x1c]
157 aesenclast 485498096, %xmm15
159 // CHECK: aesenclast 485498096, %xmm6
160 // CHECK: encoding: [0x66,0x0f,0x38,0xdd,0x34,0x25,0xf0,0x1c,0xf0,0x1c]
161 aesenclast 485498096, %xmm6
163 // CHECK: aesenclast 64(%rdx,%rax,4), %xmm15
164 // CHECK: encoding: [0x66,0x44,0x0f,0x38,0xdd,0x7c,0x82,0x40]
165 aesenclast 64(%rdx,%rax,4), %xmm15
167 // CHECK: aesenclast -64(%rdx,%rax,4), %xmm15
168 // CHECK: encoding: [0x66,0x44,0x0f,0x38,0xdd,0x7c,0x82,0xc0]
169 aesenclast -64(%rdx,%rax,4), %xmm15
171 // CHECK: aesenclast 64(%rdx,%rax,4), %xmm6
172 // CHECK: encoding: [0x66,0x0f,0x38,0xdd,0x74,0x82,0x40]
173 aesenclast 64(%rdx,%rax,4), %xmm6
175 // CHECK: aesenclast -64(%rdx,%rax,4), %xmm6
176 // CHECK: encoding: [0x66,0x0f,0x38,0xdd,0x74,0x82,0xc0]
177 aesenclast -64(%rdx,%rax,4), %xmm6
179 // CHECK: aesenclast 64(%rdx,%rax), %xmm15
180 // CHECK: encoding: [0x66,0x44,0x0f,0x38,0xdd,0x7c,0x02,0x40]
181 aesenclast 64(%rdx,%rax), %xmm15
183 // CHECK: aesenclast 64(%rdx,%rax), %xmm6
184 // CHECK: encoding: [0x66,0x0f,0x38,0xdd,0x74,0x02,0x40]
185 aesenclast 64(%rdx,%rax), %xmm6
187 // CHECK: aesenclast 64(%rdx), %xmm15
188 // CHECK: encoding: [0x66,0x44,0x0f,0x38,0xdd,0x7a,0x40]
189 aesenclast 64(%rdx), %xmm15
191 // CHECK: aesenclast 64(%rdx), %xmm6
192 // CHECK: encoding: [0x66,0x0f,0x38,0xdd,0x72,0x40]
193 aesenclast 64(%rdx), %xmm6
195 // CHECK: aesenclast (%rdx), %xmm15
196 // CHECK: encoding: [0x66,0x44,0x0f,0x38,0xdd,0x3a]
197 aesenclast (%rdx), %xmm15
199 // CHECK: aesenclast (%rdx), %xmm6
200 // CHECK: encoding: [0x66,0x0f,0x38,0xdd,0x32]
201 aesenclast (%rdx), %xmm6
203 // CHECK: aesenclast %xmm15, %xmm15
204 // CHECK: encoding: [0x66,0x45,0x0f,0x38,0xdd,0xff]
205 aesenclast %xmm15, %xmm15
207 // CHECK: aesenclast %xmm6, %xmm6
208 // CHECK: encoding: [0x66,0x0f,0x38,0xdd,0xf6]
209 aesenclast %xmm6, %xmm6
211 // CHECK: aesenc (%rdx), %xmm15
212 // CHECK: encoding: [0x66,0x44,0x0f,0x38,0xdc,0x3a]
213 aesenc (%rdx), %xmm15
215 // CHECK: aesenc (%rdx), %xmm6
216 // CHECK: encoding: [0x66,0x0f,0x38,0xdc,0x32]
217 aesenc (%rdx), %xmm6
219 // CHECK: aesenc %xmm15, %xmm15
220 // CHECK: encoding: [0x66,0x45,0x0f,0x38,0xdc,0xff]
221 aesenc %xmm15, %xmm15
223 // CHECK: aesenc %xmm6, %xmm6
224 // CHECK: encoding: [0x66,0x0f,0x38,0xdc,0xf6]
225 aesenc %xmm6, %xmm6
227 // CHECK: aesimc 485498096, %xmm15
228 // CHECK: encoding: [0x66,0x44,0x0f,0x38,0xdb,0x3c,0x25,0xf0,0x1c,0xf0,0x1c]
229 aesimc 485498096, %xmm15
231 // CHECK: aesimc 485498096, %xmm6
232 // CHECK: encoding: [0x66,0x0f,0x38,0xdb,0x34,0x25,0xf0,0x1c,0xf0,0x1c]
233 aesimc 485498096, %xmm6
235 // CHECK: aesimc 64(%rdx,%rax,4), %xmm15
236 // CHECK: encoding: [0x66,0x44,0x0f,0x38,0xdb,0x7c,0x82,0x40]
237 aesimc 64(%rdx,%rax,4), %xmm15
239 // CHECK: aesimc -64(%rdx,%rax,4), %xmm15
240 // CHECK: encoding: [0x66,0x44,0x0f,0x38,0xdb,0x7c,0x82,0xc0]
241 aesimc -64(%rdx,%rax,4), %xmm15
243 // CHECK: aesimc 64(%rdx,%rax,4), %xmm6
244 // CHECK: encoding: [0x66,0x0f,0x38,0xdb,0x74,0x82,0x40]
245 aesimc 64(%rdx,%rax,4), %xmm6
247 // CHECK: aesimc -64(%rdx,%rax,4), %xmm6
248 // CHECK: encoding: [0x66,0x0f,0x38,0xdb,0x74,0x82,0xc0]
249 aesimc -64(%rdx,%rax,4), %xmm6
251 // CHECK: aesimc 64(%rdx,%rax), %xmm15
252 // CHECK: encoding: [0x66,0x44,0x0f,0x38,0xdb,0x7c,0x02,0x40]
253 aesimc 64(%rdx,%rax), %xmm15
255 // CHECK: aesimc 64(%rdx,%rax), %xmm6
256 // CHECK: encoding: [0x66,0x0f,0x38,0xdb,0x74,0x02,0x40]
257 aesimc 64(%rdx,%rax), %xmm6
259 // CHECK: aesimc 64(%rdx), %xmm15
260 // CHECK: encoding: [0x66,0x44,0x0f,0x38,0xdb,0x7a,0x40]
261 aesimc 64(%rdx), %xmm15
263 // CHECK: aesimc 64(%rdx), %xmm6
264 // CHECK: encoding: [0x66,0x0f,0x38,0xdb,0x72,0x40]
265 aesimc 64(%rdx), %xmm6
267 // CHECK: aesimc (%rdx), %xmm15
268 // CHECK: encoding: [0x66,0x44,0x0f,0x38,0xdb,0x3a]
269 aesimc (%rdx), %xmm15
271 // CHECK: aesimc (%rdx), %xmm6
272 // CHECK: encoding: [0x66,0x0f,0x38,0xdb,0x32]
273 aesimc (%rdx), %xmm6
275 // CHECK: aesimc %xmm15, %xmm15
276 // CHECK: encoding: [0x66,0x45,0x0f,0x38,0xdb,0xff]
277 aesimc %xmm15, %xmm15
279 // CHECK: aesimc %xmm6, %xmm6
280 // CHECK: encoding: [0x66,0x0f,0x38,0xdb,0xf6]
281 aesimc %xmm6, %xmm6
283 // CHECK: aeskeygenassist $0, 485498096, %xmm15
284 // CHECK: encoding: [0x66,0x44,0x0f,0x3a,0xdf,0x3c,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
285 aeskeygenassist $0, 485498096, %xmm15
287 // CHECK: aeskeygenassist $0, 485498096, %xmm6
288 // CHECK: encoding: [0x66,0x0f,0x3a,0xdf,0x34,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
289 aeskeygenassist $0, 485498096, %xmm6
291 // CHECK: aeskeygenassist $0, 64(%rdx,%rax,4), %xmm15
292 // CHECK: encoding: [0x66,0x44,0x0f,0x3a,0xdf,0x7c,0x82,0x40,0x00]
293 aeskeygenassist $0, 64(%rdx,%rax,4), %xmm15
295 // CHECK: aeskeygenassist $0, -64(%rdx,%rax,4), %xmm15
296 // CHECK: encoding: [0x66,0x44,0x0f,0x3a,0xdf,0x7c,0x82,0xc0,0x00]
297 aeskeygenassist $0, -64(%rdx,%rax,4), %xmm15
299 // CHECK: aeskeygenassist $0, 64(%rdx,%rax,4), %xmm6
300 // CHECK: encoding: [0x66,0x0f,0x3a,0xdf,0x74,0x82,0x40,0x00]
301 aeskeygenassist $0, 64(%rdx,%rax,4), %xmm6
303 // CHECK: aeskeygenassist $0, -64(%rdx,%rax,4), %xmm6
304 // CHECK: encoding: [0x66,0x0f,0x3a,0xdf,0x74,0x82,0xc0,0x00]
305 aeskeygenassist $0, -64(%rdx,%rax,4), %xmm6
307 // CHECK: aeskeygenassist $0, 64(%rdx,%rax), %xmm15
308 // CHECK: encoding: [0x66,0x44,0x0f,0x3a,0xdf,0x7c,0x02,0x40,0x00]
309 aeskeygenassist $0, 64(%rdx,%rax), %xmm15
311 // CHECK: aeskeygenassist $0, 64(%rdx,%rax), %xmm6
312 // CHECK: encoding: [0x66,0x0f,0x3a,0xdf,0x74,0x02,0x40,0x00]
313 aeskeygenassist $0, 64(%rdx,%rax), %xmm6
315 // CHECK: aeskeygenassist $0, 64(%rdx), %xmm15
316 // CHECK: encoding: [0x66,0x44,0x0f,0x3a,0xdf,0x7a,0x40,0x00]
317 aeskeygenassist $0, 64(%rdx), %xmm15
319 // CHECK: aeskeygenassist $0, 64(%rdx), %xmm6
320 // CHECK: encoding: [0x66,0x0f,0x3a,0xdf,0x72,0x40,0x00]
321 aeskeygenassist $0, 64(%rdx), %xmm6
323 // CHECK: aeskeygenassist $0, (%rdx), %xmm15
324 // CHECK: encoding: [0x66,0x44,0x0f,0x3a,0xdf,0x3a,0x00]
325 aeskeygenassist $0, (%rdx), %xmm15
327 // CHECK: aeskeygenassist $0, (%rdx), %xmm6
328 // CHECK: encoding: [0x66,0x0f,0x3a,0xdf,0x32,0x00]
329 aeskeygenassist $0, (%rdx), %xmm6
331 // CHECK: aeskeygenassist $0, %xmm15, %xmm15
332 // CHECK: encoding: [0x66,0x45,0x0f,0x3a,0xdf,0xff,0x00]
333 aeskeygenassist $0, %xmm15, %xmm15
335 // CHECK: aeskeygenassist $0, %xmm6, %xmm6
336 // CHECK: encoding: [0x66,0x0f,0x3a,0xdf,0xf6,0x00]
337 aeskeygenassist $0, %xmm6, %xmm6