Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / llvm / test / MC / Disassembler / X86 / avx-vnni-int16-32.txt
blob099970430ea29b7d4dfef1962691ddf485a15af8
1 # RUN: llvm-mc --disassemble %s -triple=i386-unknown-unknown | FileCheck %s --check-prefixes=ATT
2 # RUN: llvm-mc --disassemble %s -triple=i386-unknown-unknown --output-asm-variant=1 | FileCheck %s --check-prefixes=INTEL
4 # ATT:        vpdpwsud %ymm4, %ymm3, %ymm2
5 # INTEL:      vpdpwsud ymm2, ymm3, ymm4
6 0xc4,0xe2,0x66,0xd2,0xd4
8 # ATT:        vpdpwsud %xmm4, %xmm3, %xmm2
9 # INTEL:      vpdpwsud xmm2, xmm3, xmm4
10 0xc4,0xe2,0x62,0xd2,0xd4
12 # ATT:        vpdpwsud  268435456(%esp,%esi,8), %ymm3, %ymm2
13 # INTEL:      vpdpwsud ymm2, ymm3, ymmword ptr [esp + 8*esi + 268435456]
14 0xc4,0xe2,0x66,0xd2,0x94,0xf4,0x00,0x00,0x00,0x10
16 # ATT:        vpdpwsud  291(%edi,%eax,4), %ymm3, %ymm2
17 # INTEL:      vpdpwsud ymm2, ymm3, ymmword ptr [edi + 4*eax + 291]
18 0xc4,0xe2,0x66,0xd2,0x94,0x87,0x23,0x01,0x00,0x00
20 # ATT:        vpdpwsud  (%eax), %ymm3, %ymm2
21 # INTEL:      vpdpwsud ymm2, ymm3, ymmword ptr [eax]
22 0xc4,0xe2,0x66,0xd2,0x10
24 # ATT:        vpdpwsud  -1024(,%ebp,2), %ymm3, %ymm2
25 # INTEL:      vpdpwsud ymm2, ymm3, ymmword ptr [2*ebp - 1024]
26 0xc4,0xe2,0x66,0xd2,0x14,0x6d,0x00,0xfc,0xff,0xff
28 # ATT:        vpdpwsud  4064(%ecx), %ymm3, %ymm2
29 # INTEL:      vpdpwsud ymm2, ymm3, ymmword ptr [ecx + 4064]
30 0xc4,0xe2,0x66,0xd2,0x91,0xe0,0x0f,0x00,0x00
32 # ATT:        vpdpwsud  -4096(%edx), %ymm3, %ymm2
33 # INTEL:      vpdpwsud ymm2, ymm3, ymmword ptr [edx - 4096]
34 0xc4,0xe2,0x66,0xd2,0x92,0x00,0xf0,0xff,0xff
36 # ATT:        vpdpwsud  268435456(%esp,%esi,8), %xmm3, %xmm2
37 # INTEL:      vpdpwsud xmm2, xmm3, xmmword ptr [esp + 8*esi + 268435456]
38 0xc4,0xe2,0x62,0xd2,0x94,0xf4,0x00,0x00,0x00,0x10
40 # ATT:        vpdpwsud  291(%edi,%eax,4), %xmm3, %xmm2
41 # INTEL:      vpdpwsud xmm2, xmm3, xmmword ptr [edi + 4*eax + 291]
42 0xc4,0xe2,0x62,0xd2,0x94,0x87,0x23,0x01,0x00,0x00
44 # ATT:        vpdpwsud  (%eax), %xmm3, %xmm2
45 # INTEL:      vpdpwsud xmm2, xmm3, xmmword ptr [eax]
46 0xc4,0xe2,0x62,0xd2,0x10
48 # ATT:        vpdpwsud  -512(,%ebp,2), %xmm3, %xmm2
49 # INTEL:      vpdpwsud xmm2, xmm3, xmmword ptr [2*ebp - 512]
50 0xc4,0xe2,0x62,0xd2,0x14,0x6d,0x00,0xfe,0xff,0xff
52 # ATT:        vpdpwsud  2032(%ecx), %xmm3, %xmm2
53 # INTEL:      vpdpwsud xmm2, xmm3, xmmword ptr [ecx + 2032]
54 0xc4,0xe2,0x62,0xd2,0x91,0xf0,0x07,0x00,0x00
56 # ATT:        vpdpwsud  -2048(%edx), %xmm3, %xmm2
57 # INTEL:      vpdpwsud xmm2, xmm3, xmmword ptr [edx - 2048]
58 0xc4,0xe2,0x62,0xd2,0x92,0x00,0xf8,0xff,0xff
60 # ATT:        vpdpwsuds %ymm4, %ymm3, %ymm2
61 # INTEL:      vpdpwsuds ymm2, ymm3, ymm4
62 0xc4,0xe2,0x66,0xd3,0xd4
64 # ATT:        vpdpwsuds %xmm4, %xmm3, %xmm2
65 # INTEL:      vpdpwsuds xmm2, xmm3, xmm4
66 0xc4,0xe2,0x62,0xd3,0xd4
68 # ATT:        vpdpwsuds  268435456(%esp,%esi,8), %ymm3, %ymm2
69 # INTEL:      vpdpwsuds ymm2, ymm3, ymmword ptr [esp + 8*esi + 268435456]
70 0xc4,0xe2,0x66,0xd3,0x94,0xf4,0x00,0x00,0x00,0x10
72 # ATT:        vpdpwsuds  291(%edi,%eax,4), %ymm3, %ymm2
73 # INTEL:      vpdpwsuds ymm2, ymm3, ymmword ptr [edi + 4*eax + 291]
74 0xc4,0xe2,0x66,0xd3,0x94,0x87,0x23,0x01,0x00,0x00
76 # ATT:        vpdpwsuds  (%eax), %ymm3, %ymm2
77 # INTEL:      vpdpwsuds ymm2, ymm3, ymmword ptr [eax]
78 0xc4,0xe2,0x66,0xd3,0x10
80 # ATT:        vpdpwsuds  -1024(,%ebp,2), %ymm3, %ymm2
81 # INTEL:      vpdpwsuds ymm2, ymm3, ymmword ptr [2*ebp - 1024]
82 0xc4,0xe2,0x66,0xd3,0x14,0x6d,0x00,0xfc,0xff,0xff
84 # ATT:        vpdpwsuds  4064(%ecx), %ymm3, %ymm2
85 # INTEL:      vpdpwsuds ymm2, ymm3, ymmword ptr [ecx + 4064]
86 0xc4,0xe2,0x66,0xd3,0x91,0xe0,0x0f,0x00,0x00
88 # ATT:        vpdpwsuds  -4096(%edx), %ymm3, %ymm2
89 # INTEL:      vpdpwsuds ymm2, ymm3, ymmword ptr [edx - 4096]
90 0xc4,0xe2,0x66,0xd3,0x92,0x00,0xf0,0xff,0xff
92 # ATT:        vpdpwsuds  268435456(%esp,%esi,8), %xmm3, %xmm2
93 # INTEL:      vpdpwsuds xmm2, xmm3, xmmword ptr [esp + 8*esi + 268435456]
94 0xc4,0xe2,0x62,0xd3,0x94,0xf4,0x00,0x00,0x00,0x10
96 # ATT:        vpdpwsuds  291(%edi,%eax,4), %xmm3, %xmm2
97 # INTEL:      vpdpwsuds xmm2, xmm3, xmmword ptr [edi + 4*eax + 291]
98 0xc4,0xe2,0x62,0xd3,0x94,0x87,0x23,0x01,0x00,0x00
100 # ATT:        vpdpwsuds  (%eax), %xmm3, %xmm2
101 # INTEL:      vpdpwsuds xmm2, xmm3, xmmword ptr [eax]
102 0xc4,0xe2,0x62,0xd3,0x10
104 # ATT:        vpdpwsuds  -512(,%ebp,2), %xmm3, %xmm2
105 # INTEL:      vpdpwsuds xmm2, xmm3, xmmword ptr [2*ebp - 512]
106 0xc4,0xe2,0x62,0xd3,0x14,0x6d,0x00,0xfe,0xff,0xff
108 # ATT:        vpdpwsuds  2032(%ecx), %xmm3, %xmm2
109 # INTEL:      vpdpwsuds xmm2, xmm3, xmmword ptr [ecx + 2032]
110 0xc4,0xe2,0x62,0xd3,0x91,0xf0,0x07,0x00,0x00
112 # ATT:        vpdpwsuds  -2048(%edx), %xmm3, %xmm2
113 # INTEL:      vpdpwsuds xmm2, xmm3, xmmword ptr [edx - 2048]
114 0xc4,0xe2,0x62,0xd3,0x92,0x00,0xf8,0xff,0xff
116 # ATT:        vpdpwusd %ymm4, %ymm3, %ymm2
117 # INTEL:      vpdpwusd ymm2, ymm3, ymm4
118 0xc4,0xe2,0x65,0xd2,0xd4
120 # ATT:        vpdpwusd %xmm4, %xmm3, %xmm2
121 # INTEL:      vpdpwusd xmm2, xmm3, xmm4
122 0xc4,0xe2,0x61,0xd2,0xd4
124 # ATT:        vpdpwusd  268435456(%esp,%esi,8), %ymm3, %ymm2
125 # INTEL:      vpdpwusd ymm2, ymm3, ymmword ptr [esp + 8*esi + 268435456]
126 0xc4,0xe2,0x65,0xd2,0x94,0xf4,0x00,0x00,0x00,0x10
128 # ATT:        vpdpwusd  291(%edi,%eax,4), %ymm3, %ymm2
129 # INTEL:      vpdpwusd ymm2, ymm3, ymmword ptr [edi + 4*eax + 291]
130 0xc4,0xe2,0x65,0xd2,0x94,0x87,0x23,0x01,0x00,0x00
132 # ATT:        vpdpwusd  (%eax), %ymm3, %ymm2
133 # INTEL:      vpdpwusd ymm2, ymm3, ymmword ptr [eax]
134 0xc4,0xe2,0x65,0xd2,0x10
136 # ATT:        vpdpwusd  -1024(,%ebp,2), %ymm3, %ymm2
137 # INTEL:      vpdpwusd ymm2, ymm3, ymmword ptr [2*ebp - 1024]
138 0xc4,0xe2,0x65,0xd2,0x14,0x6d,0x00,0xfc,0xff,0xff
140 # ATT:        vpdpwusd  4064(%ecx), %ymm3, %ymm2
141 # INTEL:      vpdpwusd ymm2, ymm3, ymmword ptr [ecx + 4064]
142 0xc4,0xe2,0x65,0xd2,0x91,0xe0,0x0f,0x00,0x00
144 # ATT:        vpdpwusd  -4096(%edx), %ymm3, %ymm2
145 # INTEL:      vpdpwusd ymm2, ymm3, ymmword ptr [edx - 4096]
146 0xc4,0xe2,0x65,0xd2,0x92,0x00,0xf0,0xff,0xff
148 # ATT:        vpdpwusd  268435456(%esp,%esi,8), %xmm3, %xmm2
149 # INTEL:      vpdpwusd xmm2, xmm3, xmmword ptr [esp + 8*esi + 268435456]
150 0xc4,0xe2,0x61,0xd2,0x94,0xf4,0x00,0x00,0x00,0x10
152 # ATT:        vpdpwusd  291(%edi,%eax,4), %xmm3, %xmm2
153 # INTEL:      vpdpwusd xmm2, xmm3, xmmword ptr [edi + 4*eax + 291]
154 0xc4,0xe2,0x61,0xd2,0x94,0x87,0x23,0x01,0x00,0x00
156 # ATT:        vpdpwusd  (%eax), %xmm3, %xmm2
157 # INTEL:      vpdpwusd xmm2, xmm3, xmmword ptr [eax]
158 0xc4,0xe2,0x61,0xd2,0x10
160 # ATT:        vpdpwusd  -512(,%ebp,2), %xmm3, %xmm2
161 # INTEL:      vpdpwusd xmm2, xmm3, xmmword ptr [2*ebp - 512]
162 0xc4,0xe2,0x61,0xd2,0x14,0x6d,0x00,0xfe,0xff,0xff
164 # ATT:        vpdpwusd  2032(%ecx), %xmm3, %xmm2
165 # INTEL:      vpdpwusd xmm2, xmm3, xmmword ptr [ecx + 2032]
166 0xc4,0xe2,0x61,0xd2,0x91,0xf0,0x07,0x00,0x00
168 # ATT:        vpdpwusd  -2048(%edx), %xmm3, %xmm2
169 # INTEL:      vpdpwusd xmm2, xmm3, xmmword ptr [edx - 2048]
170 0xc4,0xe2,0x61,0xd2,0x92,0x00,0xf8,0xff,0xff
172 # ATT:        vpdpwusds %ymm4, %ymm3, %ymm2
173 # INTEL:      vpdpwusds ymm2, ymm3, ymm4
174 0xc4,0xe2,0x65,0xd3,0xd4
176 # ATT:        vpdpwusds %xmm4, %xmm3, %xmm2
177 # INTEL:      vpdpwusds xmm2, xmm3, xmm4
178 0xc4,0xe2,0x61,0xd3,0xd4
180 # ATT:        vpdpwusds  268435456(%esp,%esi,8), %ymm3, %ymm2
181 # INTEL:      vpdpwusds ymm2, ymm3, ymmword ptr [esp + 8*esi + 268435456]
182 0xc4,0xe2,0x65,0xd3,0x94,0xf4,0x00,0x00,0x00,0x10
184 # ATT:        vpdpwusds  291(%edi,%eax,4), %ymm3, %ymm2
185 # INTEL:      vpdpwusds ymm2, ymm3, ymmword ptr [edi + 4*eax + 291]
186 0xc4,0xe2,0x65,0xd3,0x94,0x87,0x23,0x01,0x00,0x00
188 # ATT:        vpdpwusds  (%eax), %ymm3, %ymm2
189 # INTEL:      vpdpwusds ymm2, ymm3, ymmword ptr [eax]
190 0xc4,0xe2,0x65,0xd3,0x10
192 # ATT:        vpdpwusds  -1024(,%ebp,2), %ymm3, %ymm2
193 # INTEL:      vpdpwusds ymm2, ymm3, ymmword ptr [2*ebp - 1024]
194 0xc4,0xe2,0x65,0xd3,0x14,0x6d,0x00,0xfc,0xff,0xff
196 # ATT:        vpdpwusds  4064(%ecx), %ymm3, %ymm2
197 # INTEL:      vpdpwusds ymm2, ymm3, ymmword ptr [ecx + 4064]
198 0xc4,0xe2,0x65,0xd3,0x91,0xe0,0x0f,0x00,0x00
200 # ATT:        vpdpwusds  -4096(%edx), %ymm3, %ymm2
201 # INTEL:      vpdpwusds ymm2, ymm3, ymmword ptr [edx - 4096]
202 0xc4,0xe2,0x65,0xd3,0x92,0x00,0xf0,0xff,0xff
204 # ATT:        vpdpwusds  268435456(%esp,%esi,8), %xmm3, %xmm2
205 # INTEL:      vpdpwusds xmm2, xmm3, xmmword ptr [esp + 8*esi + 268435456]
206 0xc4,0xe2,0x61,0xd3,0x94,0xf4,0x00,0x00,0x00,0x10
208 # ATT:        vpdpwusds  291(%edi,%eax,4), %xmm3, %xmm2
209 # INTEL:      vpdpwusds xmm2, xmm3, xmmword ptr [edi + 4*eax + 291]
210 0xc4,0xe2,0x61,0xd3,0x94,0x87,0x23,0x01,0x00,0x00
212 # ATT:        vpdpwusds  (%eax), %xmm3, %xmm2
213 # INTEL:      vpdpwusds xmm2, xmm3, xmmword ptr [eax]
214 0xc4,0xe2,0x61,0xd3,0x10
216 # ATT:        vpdpwusds  -512(,%ebp,2), %xmm3, %xmm2
217 # INTEL:      vpdpwusds xmm2, xmm3, xmmword ptr [2*ebp - 512]
218 0xc4,0xe2,0x61,0xd3,0x14,0x6d,0x00,0xfe,0xff,0xff
220 # ATT:        vpdpwusds  2032(%ecx), %xmm3, %xmm2
221 # INTEL:      vpdpwusds xmm2, xmm3, xmmword ptr [ecx + 2032]
222 0xc4,0xe2,0x61,0xd3,0x91,0xf0,0x07,0x00,0x00
224 # ATT:        vpdpwusds  -2048(%edx), %xmm3, %xmm2
225 # INTEL:      vpdpwusds xmm2, xmm3, xmmword ptr [edx - 2048]
226 0xc4,0xe2,0x61,0xd3,0x92,0x00,0xf8,0xff,0xff
228 # ATT:        vpdpwuud %ymm4, %ymm3, %ymm2
229 # INTEL:      vpdpwuud ymm2, ymm3, ymm4
230 0xc4,0xe2,0x64,0xd2,0xd4
232 # ATT:        vpdpwuud %xmm4, %xmm3, %xmm2
233 # INTEL:      vpdpwuud xmm2, xmm3, xmm4
234 0xc4,0xe2,0x60,0xd2,0xd4
236 # ATT:        vpdpwuud  268435456(%esp,%esi,8), %ymm3, %ymm2
237 # INTEL:      vpdpwuud ymm2, ymm3, ymmword ptr [esp + 8*esi + 268435456]
238 0xc4,0xe2,0x64,0xd2,0x94,0xf4,0x00,0x00,0x00,0x10
240 # ATT:        vpdpwuud  291(%edi,%eax,4), %ymm3, %ymm2
241 # INTEL:      vpdpwuud ymm2, ymm3, ymmword ptr [edi + 4*eax + 291]
242 0xc4,0xe2,0x64,0xd2,0x94,0x87,0x23,0x01,0x00,0x00
244 # ATT:        vpdpwuud  (%eax), %ymm3, %ymm2
245 # INTEL:      vpdpwuud ymm2, ymm3, ymmword ptr [eax]
246 0xc4,0xe2,0x64,0xd2,0x10
248 # ATT:        vpdpwuud  -1024(,%ebp,2), %ymm3, %ymm2
249 # INTEL:      vpdpwuud ymm2, ymm3, ymmword ptr [2*ebp - 1024]
250 0xc4,0xe2,0x64,0xd2,0x14,0x6d,0x00,0xfc,0xff,0xff
252 # ATT:        vpdpwuud  4064(%ecx), %ymm3, %ymm2
253 # INTEL:      vpdpwuud ymm2, ymm3, ymmword ptr [ecx + 4064]
254 0xc4,0xe2,0x64,0xd2,0x91,0xe0,0x0f,0x00,0x00
256 # ATT:        vpdpwuud  -4096(%edx), %ymm3, %ymm2
257 # INTEL:      vpdpwuud ymm2, ymm3, ymmword ptr [edx - 4096]
258 0xc4,0xe2,0x64,0xd2,0x92,0x00,0xf0,0xff,0xff
260 # ATT:        vpdpwuud  268435456(%esp,%esi,8), %xmm3, %xmm2
261 # INTEL:      vpdpwuud xmm2, xmm3, xmmword ptr [esp + 8*esi + 268435456]
262 0xc4,0xe2,0x60,0xd2,0x94,0xf4,0x00,0x00,0x00,0x10
264 # ATT:        vpdpwuud  291(%edi,%eax,4), %xmm3, %xmm2
265 # INTEL:      vpdpwuud xmm2, xmm3, xmmword ptr [edi + 4*eax + 291]
266 0xc4,0xe2,0x60,0xd2,0x94,0x87,0x23,0x01,0x00,0x00
268 # ATT:        vpdpwuud  (%eax), %xmm3, %xmm2
269 # INTEL:      vpdpwuud xmm2, xmm3, xmmword ptr [eax]
270 0xc4,0xe2,0x60,0xd2,0x10
272 # ATT:        vpdpwuud  -512(,%ebp,2), %xmm3, %xmm2
273 # INTEL:      vpdpwuud xmm2, xmm3, xmmword ptr [2*ebp - 512]
274 0xc4,0xe2,0x60,0xd2,0x14,0x6d,0x00,0xfe,0xff,0xff
276 # ATT:        vpdpwuud  2032(%ecx), %xmm3, %xmm2
277 # INTEL:      vpdpwuud xmm2, xmm3, xmmword ptr [ecx + 2032]
278 0xc4,0xe2,0x60,0xd2,0x91,0xf0,0x07,0x00,0x00
280 # ATT:        vpdpwuud  -2048(%edx), %xmm3, %xmm2
281 # INTEL:      vpdpwuud xmm2, xmm3, xmmword ptr [edx - 2048]
282 0xc4,0xe2,0x60,0xd2,0x92,0x00,0xf8,0xff,0xff
284 # ATT:        vpdpwuuds %ymm4, %ymm3, %ymm2
285 # INTEL:      vpdpwuuds ymm2, ymm3, ymm4
286 0xc4,0xe2,0x64,0xd3,0xd4
288 # ATT:        vpdpwuuds %xmm4, %xmm3, %xmm2
289 # INTEL:      vpdpwuuds xmm2, xmm3, xmm4
290 0xc4,0xe2,0x60,0xd3,0xd4
292 # ATT:        vpdpwuuds  268435456(%esp,%esi,8), %ymm3, %ymm2
293 # INTEL:      vpdpwuuds ymm2, ymm3, ymmword ptr [esp + 8*esi + 268435456]
294 0xc4,0xe2,0x64,0xd3,0x94,0xf4,0x00,0x00,0x00,0x10
296 # ATT:        vpdpwuuds  291(%edi,%eax,4), %ymm3, %ymm2
297 # INTEL:      vpdpwuuds ymm2, ymm3, ymmword ptr [edi + 4*eax + 291]
298 0xc4,0xe2,0x64,0xd3,0x94,0x87,0x23,0x01,0x00,0x00
300 # ATT:        vpdpwuuds  (%eax), %ymm3, %ymm2
301 # INTEL:      vpdpwuuds ymm2, ymm3, ymmword ptr [eax]
302 0xc4,0xe2,0x64,0xd3,0x10
304 # ATT:        vpdpwuuds  -1024(,%ebp,2), %ymm3, %ymm2
305 # INTEL:      vpdpwuuds ymm2, ymm3, ymmword ptr [2*ebp - 1024]
306 0xc4,0xe2,0x64,0xd3,0x14,0x6d,0x00,0xfc,0xff,0xff
308 # ATT:        vpdpwuuds  4064(%ecx), %ymm3, %ymm2
309 # INTEL:      vpdpwuuds ymm2, ymm3, ymmword ptr [ecx + 4064]
310 0xc4,0xe2,0x64,0xd3,0x91,0xe0,0x0f,0x00,0x00
312 # ATT:        vpdpwuuds  -4096(%edx), %ymm3, %ymm2
313 # INTEL:      vpdpwuuds ymm2, ymm3, ymmword ptr [edx - 4096]
314 0xc4,0xe2,0x64,0xd3,0x92,0x00,0xf0,0xff,0xff
316 # ATT:        vpdpwuuds  268435456(%esp,%esi,8), %xmm3, %xmm2
317 # INTEL:      vpdpwuuds xmm2, xmm3, xmmword ptr [esp + 8*esi + 268435456]
318 0xc4,0xe2,0x60,0xd3,0x94,0xf4,0x00,0x00,0x00,0x10
320 # ATT:        vpdpwuuds  291(%edi,%eax,4), %xmm3, %xmm2
321 # INTEL:      vpdpwuuds xmm2, xmm3, xmmword ptr [edi + 4*eax + 291]
322 0xc4,0xe2,0x60,0xd3,0x94,0x87,0x23,0x01,0x00,0x00
324 # ATT:        vpdpwuuds  (%eax), %xmm3, %xmm2
325 # INTEL:      vpdpwuuds xmm2, xmm3, xmmword ptr [eax]
326 0xc4,0xe2,0x60,0xd3,0x10
328 # ATT:        vpdpwuuds  -512(,%ebp,2), %xmm3, %xmm2
329 # INTEL:      vpdpwuuds xmm2, xmm3, xmmword ptr [2*ebp - 512]
330 0xc4,0xe2,0x60,0xd3,0x14,0x6d,0x00,0xfe,0xff,0xff
332 # ATT:        vpdpwuuds  2032(%ecx), %xmm3, %xmm2
333 # INTEL:      vpdpwuuds xmm2, xmm3, xmmword ptr [ecx + 2032]
334 0xc4,0xe2,0x60,0xd3,0x91,0xf0,0x07,0x00,0x00
336 # ATT:        vpdpwuuds  -2048(%edx), %xmm3, %xmm2
337 # INTEL:      vpdpwuuds xmm2, xmm3, xmmword ptr [edx - 2048]
338 0xc4,0xe2,0x60,0xd3,0x92,0x00,0xf8,0xff,0xff