1 // RUN
: llvm-mc
-triple x86_64-unknown-unknown
--show-encoding
%s | FileCheck
%s
3 // CHECK
: addsubpd
485498096, %xmm6
4 // CHECK
: encoding
: [0x66,0x0f,0xd0,0x34,0x25,0xf0,0x1c,0xf0,0x1c]
5 addsubpd
485498096, %xmm6
7 // CHECK
: addsubpd
-64(%rdx
,%rax
,4), %xmm6
8 // CHECK
: encoding
: [0x66,0x0f,0xd0,0x74,0x82,0xc0]
9 addsubpd
-64(%rdx
,%rax
,4), %xmm6
11 // CHECK
: addsubpd
64(%rdx
,%rax
,4), %xmm6
12 // CHECK
: encoding
: [0x66,0x0f,0xd0,0x74,0x82,0x40]
13 addsubpd
64(%rdx
,%rax
,4), %xmm6
15 // CHECK
: addsubpd
64(%rdx
,%rax
), %xmm6
16 // CHECK
: encoding
: [0x66,0x0f,0xd0,0x74,0x02,0x40]
17 addsubpd
64(%rdx
,%rax
), %xmm6
19 // CHECK
: addsubpd
64(%rdx
), %xmm6
20 // CHECK
: encoding
: [0x66,0x0f,0xd0,0x72,0x40]
21 addsubpd
64(%rdx
), %xmm6
23 // CHECK
: addsubpd
(%rdx
), %xmm6
24 // CHECK
: encoding
: [0x66,0x0f,0xd0,0x32]
25 addsubpd
(%rdx
), %xmm6
27 // CHECK
: addsubpd
%xmm6
, %xmm6
28 // CHECK
: encoding
: [0x66,0x0f,0xd0,0xf6]
31 // CHECK
: addsubps
485498096, %xmm6
32 // CHECK
: encoding
: [0xf2,0x0f,0xd0,0x34,0x25,0xf0,0x1c,0xf0,0x1c]
33 addsubps
485498096, %xmm6
35 // CHECK
: addsubps
-64(%rdx
,%rax
,4), %xmm6
36 // CHECK
: encoding
: [0xf2,0x0f,0xd0,0x74,0x82,0xc0]
37 addsubps
-64(%rdx
,%rax
,4), %xmm6
39 // CHECK
: addsubps
64(%rdx
,%rax
,4), %xmm6
40 // CHECK
: encoding
: [0xf2,0x0f,0xd0,0x74,0x82,0x40]
41 addsubps
64(%rdx
,%rax
,4), %xmm6
43 // CHECK
: addsubps
64(%rdx
,%rax
), %xmm6
44 // CHECK
: encoding
: [0xf2,0x0f,0xd0,0x74,0x02,0x40]
45 addsubps
64(%rdx
,%rax
), %xmm6
47 // CHECK
: addsubps
64(%rdx
), %xmm6
48 // CHECK
: encoding
: [0xf2,0x0f,0xd0,0x72,0x40]
49 addsubps
64(%rdx
), %xmm6
51 // CHECK
: addsubps
(%rdx
), %xmm6
52 // CHECK
: encoding
: [0xf2,0x0f,0xd0,0x32]
53 addsubps
(%rdx
), %xmm6
55 // CHECK
: addsubps
%xmm6
, %xmm6
56 // CHECK
: encoding
: [0xf2,0x0f,0xd0,0xf6]
59 // CHECK
: fisttpl
485498096
60 // CHECK
: encoding
: [0xdb,0x0c,0x25,0xf0,0x1c,0xf0,0x1c]
63 // CHECK
: fisttpl
64(%rdx
)
64 // CHECK
: encoding
: [0xdb,0x4a,0x40]
67 // CHECK
: fisttpl
-64(%rdx
,%rax
,4)
68 // CHECK
: encoding
: [0xdb,0x4c,0x82,0xc0]
69 fisttpl
-64(%rdx
,%rax
,4)
71 // CHECK
: fisttpl
64(%rdx
,%rax
,4)
72 // CHECK
: encoding
: [0xdb,0x4c,0x82,0x40]
73 fisttpl
64(%rdx
,%rax
,4)
75 // CHECK
: fisttpl
64(%rdx
,%rax
)
76 // CHECK
: encoding
: [0xdb,0x4c,0x02,0x40]
79 // CHECK
: fisttpll
485498096
80 // CHECK
: encoding
: [0xdd,0x0c,0x25,0xf0,0x1c,0xf0,0x1c]
83 // CHECK
: fisttpll
64(%rdx
)
84 // CHECK
: encoding
: [0xdd,0x4a,0x40]
87 // CHECK
: fisttpll
-64(%rdx
,%rax
,4)
88 // CHECK
: encoding
: [0xdd,0x4c,0x82,0xc0]
89 fisttpll
-64(%rdx
,%rax
,4)
91 // CHECK
: fisttpll
64(%rdx
,%rax
,4)
92 // CHECK
: encoding
: [0xdd,0x4c,0x82,0x40]
93 fisttpll
64(%rdx
,%rax
,4)
95 // CHECK
: fisttpll
64(%rdx
,%rax
)
96 // CHECK
: encoding
: [0xdd,0x4c,0x02,0x40]
97 fisttpll
64(%rdx
,%rax
)
99 // CHECK
: fisttpll
(%rdx
)
100 // CHECK
: encoding
: [0xdd,0x0a]
103 // CHECK
: fisttpl
(%rdx
)
104 // CHECK
: encoding
: [0xdb,0x0a]
107 // CHECK
: fisttps
485498096
108 // CHECK
: encoding
: [0xdf,0x0c,0x25,0xf0,0x1c,0xf0,0x1c]
111 // CHECK
: fisttps
64(%rdx
)
112 // CHECK
: encoding
: [0xdf,0x4a,0x40]
115 // CHECK
: fisttps
-64(%rdx
,%rax
,4)
116 // CHECK
: encoding
: [0xdf,0x4c,0x82,0xc0]
117 fisttps
-64(%rdx
,%rax
,4)
119 // CHECK
: fisttps
64(%rdx
,%rax
,4)
120 // CHECK
: encoding
: [0xdf,0x4c,0x82,0x40]
121 fisttps
64(%rdx
,%rax
,4)
123 // CHECK
: fisttps
64(%rdx
,%rax
)
124 // CHECK
: encoding
: [0xdf,0x4c,0x02,0x40]
125 fisttps
64(%rdx
,%rax
)
127 // CHECK
: fisttps
(%rdx
)
128 // CHECK
: encoding
: [0xdf,0x0a]
131 // CHECK
: haddpd
485498096, %xmm6
132 // CHECK
: encoding
: [0x66,0x0f,0x7c,0x34,0x25,0xf0,0x1c,0xf0,0x1c]
133 haddpd
485498096, %xmm6
135 // CHECK
: haddpd
-64(%rdx
,%rax
,4), %xmm6
136 // CHECK
: encoding
: [0x66,0x0f,0x7c,0x74,0x82,0xc0]
137 haddpd
-64(%rdx
,%rax
,4), %xmm6
139 // CHECK
: haddpd
64(%rdx
,%rax
,4), %xmm6
140 // CHECK
: encoding
: [0x66,0x0f,0x7c,0x74,0x82,0x40]
141 haddpd
64(%rdx
,%rax
,4), %xmm6
143 // CHECK
: haddpd
64(%rdx
,%rax
), %xmm6
144 // CHECK
: encoding
: [0x66,0x0f,0x7c,0x74,0x02,0x40]
145 haddpd
64(%rdx
,%rax
), %xmm6
147 // CHECK
: haddpd
64(%rdx
), %xmm6
148 // CHECK
: encoding
: [0x66,0x0f,0x7c,0x72,0x40]
149 haddpd
64(%rdx
), %xmm6
151 // CHECK
: haddpd
(%rdx
), %xmm6
152 // CHECK
: encoding
: [0x66,0x0f,0x7c,0x32]
155 // CHECK
: haddpd
%xmm6
, %xmm6
156 // CHECK
: encoding
: [0x66,0x0f,0x7c,0xf6]
159 // CHECK
: haddps
485498096, %xmm6
160 // CHECK
: encoding
: [0xf2,0x0f,0x7c,0x34,0x25,0xf0,0x1c,0xf0,0x1c]
161 haddps
485498096, %xmm6
163 // CHECK
: haddps
-64(%rdx
,%rax
,4), %xmm6
164 // CHECK
: encoding
: [0xf2,0x0f,0x7c,0x74,0x82,0xc0]
165 haddps
-64(%rdx
,%rax
,4), %xmm6
167 // CHECK
: haddps
64(%rdx
,%rax
,4), %xmm6
168 // CHECK
: encoding
: [0xf2,0x0f,0x7c,0x74,0x82,0x40]
169 haddps
64(%rdx
,%rax
,4), %xmm6
171 // CHECK
: haddps
64(%rdx
,%rax
), %xmm6
172 // CHECK
: encoding
: [0xf2,0x0f,0x7c,0x74,0x02,0x40]
173 haddps
64(%rdx
,%rax
), %xmm6
175 // CHECK
: haddps
64(%rdx
), %xmm6
176 // CHECK
: encoding
: [0xf2,0x0f,0x7c,0x72,0x40]
177 haddps
64(%rdx
), %xmm6
179 // CHECK
: haddps
(%rdx
), %xmm6
180 // CHECK
: encoding
: [0xf2,0x0f,0x7c,0x32]
183 // CHECK
: haddps
%xmm6
, %xmm6
184 // CHECK
: encoding
: [0xf2,0x0f,0x7c,0xf6]
187 // CHECK
: hsubpd
485498096, %xmm6
188 // CHECK
: encoding
: [0x66,0x0f,0x7d,0x34,0x25,0xf0,0x1c,0xf0,0x1c]
189 hsubpd
485498096, %xmm6
191 // CHECK
: hsubpd
-64(%rdx
,%rax
,4), %xmm6
192 // CHECK
: encoding
: [0x66,0x0f,0x7d,0x74,0x82,0xc0]
193 hsubpd
-64(%rdx
,%rax
,4), %xmm6
195 // CHECK
: hsubpd
64(%rdx
,%rax
,4), %xmm6
196 // CHECK
: encoding
: [0x66,0x0f,0x7d,0x74,0x82,0x40]
197 hsubpd
64(%rdx
,%rax
,4), %xmm6
199 // CHECK
: hsubpd
64(%rdx
,%rax
), %xmm6
200 // CHECK
: encoding
: [0x66,0x0f,0x7d,0x74,0x02,0x40]
201 hsubpd
64(%rdx
,%rax
), %xmm6
203 // CHECK
: hsubpd
64(%rdx
), %xmm6
204 // CHECK
: encoding
: [0x66,0x0f,0x7d,0x72,0x40]
205 hsubpd
64(%rdx
), %xmm6
207 // CHECK
: hsubpd
(%rdx
), %xmm6
208 // CHECK
: encoding
: [0x66,0x0f,0x7d,0x32]
211 // CHECK
: hsubpd
%xmm6
, %xmm6
212 // CHECK
: encoding
: [0x66,0x0f,0x7d,0xf6]
215 // CHECK
: hsubps
485498096, %xmm6
216 // CHECK
: encoding
: [0xf2,0x0f,0x7d,0x34,0x25,0xf0,0x1c,0xf0,0x1c]
217 hsubps
485498096, %xmm6
219 // CHECK
: hsubps
-64(%rdx
,%rax
,4), %xmm6
220 // CHECK
: encoding
: [0xf2,0x0f,0x7d,0x74,0x82,0xc0]
221 hsubps
-64(%rdx
,%rax
,4), %xmm6
223 // CHECK
: hsubps
64(%rdx
,%rax
,4), %xmm6
224 // CHECK
: encoding
: [0xf2,0x0f,0x7d,0x74,0x82,0x40]
225 hsubps
64(%rdx
,%rax
,4), %xmm6
227 // CHECK
: hsubps
64(%rdx
,%rax
), %xmm6
228 // CHECK
: encoding
: [0xf2,0x0f,0x7d,0x74,0x02,0x40]
229 hsubps
64(%rdx
,%rax
), %xmm6
231 // CHECK
: hsubps
64(%rdx
), %xmm6
232 // CHECK
: encoding
: [0xf2,0x0f,0x7d,0x72,0x40]
233 hsubps
64(%rdx
), %xmm6
235 // CHECK
: hsubps
(%rdx
), %xmm6
236 // CHECK
: encoding
: [0xf2,0x0f,0x7d,0x32]
239 // CHECK
: hsubps
%xmm6
, %xmm6
240 // CHECK
: encoding
: [0xf2,0x0f,0x7d,0xf6]
243 // CHECK
: lddqu
485498096, %xmm6
244 // CHECK
: encoding
: [0xf2,0x0f,0xf0,0x34,0x25,0xf0,0x1c,0xf0,0x1c]
245 lddqu
485498096, %xmm6
247 // CHECK
: lddqu
-64(%rdx
,%rax
,4), %xmm6
248 // CHECK
: encoding
: [0xf2,0x0f,0xf0,0x74,0x82,0xc0]
249 lddqu
-64(%rdx
,%rax
,4), %xmm6
251 // CHECK
: lddqu
64(%rdx
,%rax
,4), %xmm6
252 // CHECK
: encoding
: [0xf2,0x0f,0xf0,0x74,0x82,0x40]
253 lddqu
64(%rdx
,%rax
,4), %xmm6
255 // CHECK
: lddqu
64(%rdx
,%rax
), %xmm6
256 // CHECK
: encoding
: [0xf2,0x0f,0xf0,0x74,0x02,0x40]
257 lddqu
64(%rdx
,%rax
), %xmm6
259 // CHECK
: lddqu
64(%rdx
), %xmm6
260 // CHECK
: encoding
: [0xf2,0x0f,0xf0,0x72,0x40]
261 lddqu
64(%rdx
), %xmm6
263 // CHECK
: lddqu
(%rdx
), %xmm6
264 // CHECK
: encoding
: [0xf2,0x0f,0xf0,0x32]
268 // CHECK
: encoding
: [0x0f,0x01,0xc8]
271 // CHECK
: movddup
485498096, %xmm6
272 // CHECK
: encoding
: [0xf2,0x0f,0x12,0x34,0x25,0xf0,0x1c,0xf0,0x1c]
273 movddup
485498096, %xmm6
275 // CHECK
: movddup
-64(%rdx
,%rax
,4), %xmm6
276 // CHECK
: encoding
: [0xf2,0x0f,0x12,0x74,0x82,0xc0]
277 movddup
-64(%rdx
,%rax
,4), %xmm6
279 // CHECK
: movddup
64(%rdx
,%rax
,4), %xmm6
280 // CHECK
: encoding
: [0xf2,0x0f,0x12,0x74,0x82,0x40]
281 movddup
64(%rdx
,%rax
,4), %xmm6
283 // CHECK
: movddup
64(%rdx
,%rax
), %xmm6
284 // CHECK
: encoding
: [0xf2,0x0f,0x12,0x74,0x02,0x40]
285 movddup
64(%rdx
,%rax
), %xmm6
287 // CHECK
: movddup
64(%rdx
), %xmm6
288 // CHECK
: encoding
: [0xf2,0x0f,0x12,0x72,0x40]
289 movddup
64(%rdx
), %xmm6
291 // CHECK
: movddup
(%rdx
), %xmm6
292 // CHECK
: encoding
: [0xf2,0x0f,0x12,0x32]
293 movddup
(%rdx
), %xmm6
295 // CHECK
: movddup
%xmm6
, %xmm6
296 // CHECK
: encoding
: [0xf2,0x0f,0x12,0xf6]
299 // CHECK
: movshdup
485498096, %xmm6
300 // CHECK
: encoding
: [0xf3,0x0f,0x16,0x34,0x25,0xf0,0x1c,0xf0,0x1c]
301 movshdup
485498096, %xmm6
303 // CHECK
: movshdup
-64(%rdx
,%rax
,4), %xmm6
304 // CHECK
: encoding
: [0xf3,0x0f,0x16,0x74,0x82,0xc0]
305 movshdup
-64(%rdx
,%rax
,4), %xmm6
307 // CHECK
: movshdup
64(%rdx
,%rax
,4), %xmm6
308 // CHECK
: encoding
: [0xf3,0x0f,0x16,0x74,0x82,0x40]
309 movshdup
64(%rdx
,%rax
,4), %xmm6
311 // CHECK
: movshdup
64(%rdx
,%rax
), %xmm6
312 // CHECK
: encoding
: [0xf3,0x0f,0x16,0x74,0x02,0x40]
313 movshdup
64(%rdx
,%rax
), %xmm6
315 // CHECK
: movshdup
64(%rdx
), %xmm6
316 // CHECK
: encoding
: [0xf3,0x0f,0x16,0x72,0x40]
317 movshdup
64(%rdx
), %xmm6
319 // CHECK
: movshdup
(%rdx
), %xmm6
320 // CHECK
: encoding
: [0xf3,0x0f,0x16,0x32]
321 movshdup
(%rdx
), %xmm6
323 // CHECK
: movshdup
%xmm6
, %xmm6
324 // CHECK
: encoding
: [0xf3,0x0f,0x16,0xf6]
325 movshdup
%xmm6
, %xmm6
327 // CHECK
: movsldup
485498096, %xmm6
328 // CHECK
: encoding
: [0xf3,0x0f,0x12,0x34,0x25,0xf0,0x1c,0xf0,0x1c]
329 movsldup
485498096, %xmm6
331 // CHECK
: movsldup
-64(%rdx
,%rax
,4), %xmm6
332 // CHECK
: encoding
: [0xf3,0x0f,0x12,0x74,0x82,0xc0]
333 movsldup
-64(%rdx
,%rax
,4), %xmm6
335 // CHECK
: movsldup
64(%rdx
,%rax
,4), %xmm6
336 // CHECK
: encoding
: [0xf3,0x0f,0x12,0x74,0x82,0x40]
337 movsldup
64(%rdx
,%rax
,4), %xmm6
339 // CHECK
: movsldup
64(%rdx
,%rax
), %xmm6
340 // CHECK
: encoding
: [0xf3,0x0f,0x12,0x74,0x02,0x40]
341 movsldup
64(%rdx
,%rax
), %xmm6
343 // CHECK
: movsldup
64(%rdx
), %xmm6
344 // CHECK
: encoding
: [0xf3,0x0f,0x12,0x72,0x40]
345 movsldup
64(%rdx
), %xmm6
347 // CHECK
: movsldup
(%rdx
), %xmm6
348 // CHECK
: encoding
: [0xf3,0x0f,0x12,0x32]
349 movsldup
(%rdx
), %xmm6
351 // CHECK
: movsldup
%xmm6
, %xmm6
352 // CHECK
: encoding
: [0xf3,0x0f,0x12,0xf6]
353 movsldup
%xmm6
, %xmm6
356 // CHECK
: encoding
: [0x0f,0x01,0xc9]