1 // RUN
: llvm-mc
-triple x86_64-unknown-unknown
--show-encoding
%s | FileCheck
%s
3 vpmadd52luq
%xmm4
, %xmm5
, %xmm6
{%k7
}
4 //CHECK
: vpmadd52luq
%xmm4
, %xmm5
, %xmm6
{%k7
}
5 //CHECK
: encoding
: [0x62,0xf2,0xd5,0x0f,0xb4,0xf4]
7 vpmadd52luq
%xmm4
, %xmm5
, %xmm6
{%k7
} {z
}
8 //CHECK
: vpmadd52luq
%xmm4
, %xmm5
, %xmm6
{%k7
} {z
}
9 //CHECK
: encoding
: [0x62,0xf2,0xd5,0x8f,0xb4,0xf4]
11 vpmadd52luq
%ymm4
, %ymm5
, %ymm6
{%k7
}
12 //CHECK
: vpmadd52luq
%ymm4
, %ymm5
, %ymm6
{%k7
}
13 //CHECK
: encoding
: [0x62,0xf2,0xd5,0x2f,0xb4,0xf4]
15 vpmadd52luq
%ymm4
, %ymm5
, %ymm6
{%k7
} {z
}
16 //CHECK
: vpmadd52luq
%ymm4
, %ymm5
, %ymm6
{%k7
} {z
}
17 //CHECK
: encoding
: [0x62,0xf2,0xd5,0xaf,0xb4,0xf4]
19 vpmadd52luq
%xmm28
, %xmm29
, %xmm30
20 //CHECK
: vpmadd52luq
%xmm28
, %xmm29
, %xmm30
21 //CHECK
: encoding
: [0x62,0x02,0x95,0x00,0xb4,0xf4]
23 vpmadd52luq
%xmm28
, %xmm29
, %xmm30
{%k7
}
24 //CHECK
: vpmadd52luq
%xmm28
, %xmm29
, %xmm30
{%k7
}
25 //CHECK
: encoding
: [0x62,0x02,0x95,0x07,0xb4,0xf4]
27 vpmadd52luq
%xmm28
, %xmm29
, %xmm30
{%k7
} {z
}
28 //CHECK
: vpmadd52luq
%xmm28
, %xmm29
, %xmm30
{%k7
} {z
}
29 //CHECK
: encoding
: [0x62,0x02,0x95,0x87,0xb4,0xf4]
31 vpmadd52luq
(%rcx
), %xmm29
, %xmm30
32 //CHECK
: vpmadd52luq
(%rcx
), %xmm29
, %xmm30
33 //CHECK
: encoding
: [0x62,0x62,0x95,0x00,0xb4,0x31]
35 vpmadd52luq
0x123(%rax
,%r14,8), %xmm29
, %xmm30
36 //CHECK
: vpmadd52luq
291(%rax
,%r14,8), %xmm29
, %xmm30
37 //CHECK
: encoding
: [0x62,0x22,0x95,0x00,0xb4,0xb4,0xf0,0x23,0x01,0x00,0x00]
39 vpmadd52luq
(%rcx
){1to2
}, %xmm29
, %xmm30
40 //CHECK
: vpmadd52luq
(%rcx
){1to2
}, %xmm29
, %xmm30
41 //CHECK
: encoding
: [0x62,0x62,0x95,0x10,0xb4,0x31]
43 vpmadd52luq
0x7f0(%rdx
), %xmm29
, %xmm30
44 //CHECK
: vpmadd52luq
2032(%rdx
), %xmm29
, %xmm30
45 //CHECK
: encoding
: [0x62,0x62,0x95,0x00,0xb4,0x72,0x7f]
47 vpmadd52luq
0x800(%rdx
), %xmm29
, %xmm30
48 //CHECK
: vpmadd52luq
2048(%rdx
), %xmm29
, %xmm30
49 //CHECK
: encoding
: [0x62,0x62,0x95,0x00,0xb4,0xb2,0x00,0x08,0x00,0x00]
51 vpmadd52luq
-0x800(%rdx
), %xmm29
, %xmm30
52 //CHECK
: vpmadd52luq
-2048(%rdx
), %xmm29
, %xmm30
53 //CHECK
: encoding
: [0x62,0x62,0x95,0x00,0xb4,0x72,0x80]
55 vpmadd52luq
-0x810(%rdx
), %xmm29
, %xmm30
56 //CHECK
: vpmadd52luq
-2064(%rdx
), %xmm29
, %xmm30
57 //CHECK
: encoding
: [0x62,0x62,0x95,0x00,0xb4,0xb2,0xf0,0xf7,0xff,0xff]
59 vpmadd52luq
0x3f8(%rdx
){1to2
}, %xmm29
, %xmm30
60 //CHECK
: vpmadd52luq
1016(%rdx
){1to2
}, %xmm29
, %xmm30
61 //CHECK
: encoding
: [0x62,0x62,0x95,0x10,0xb4,0x72,0x7f]
63 vpmadd52luq
0x400(%rdx
){1to2
}, %xmm29
, %xmm30
64 //CHECK
: vpmadd52luq
1024(%rdx
){1to2
}, %xmm29
, %xmm30
65 //CHECK
: encoding
: [0x62,0x62,0x95,0x10,0xb4,0xb2,0x00,0x04,0x00,0x00]
67 vpmadd52luq
-0x400(%rdx
){1to2
}, %xmm29
, %xmm30
68 //CHECK
: vpmadd52luq
-1024(%rdx
){1to2
}, %xmm29
, %xmm30
69 //CHECK
: encoding
: [0x62,0x62,0x95,0x10,0xb4,0x72,0x80]
71 vpmadd52luq
-0x408(%rdx
){1to2
}, %xmm29
, %xmm30
72 //CHECK
: vpmadd52luq
-1032(%rdx
){1to2
}, %xmm29
, %xmm30
73 //CHECK
: encoding
: [0x62,0x62,0x95,0x10,0xb4,0xb2,0xf8,0xfb,0xff,0xff]
75 vpmadd52luq
%ymm28
, %ymm29
, %ymm30
76 //CHECK
: vpmadd52luq
%ymm28
, %ymm29
, %ymm30
77 //CHECK
: encoding
: [0x62,0x02,0x95,0x20,0xb4,0xf4]
79 vpmadd52luq
%ymm28
, %ymm29
, %ymm30
{%k7
}
80 //CHECK
: vpmadd52luq
%ymm28
, %ymm29
, %ymm30
{%k7
}
81 //CHECK
: encoding
: [0x62,0x02,0x95,0x27,0xb4,0xf4]
83 vpmadd52luq
%ymm28
, %ymm29
, %ymm30
{%k7
} {z
}
84 //CHECK
: vpmadd52luq
%ymm28
, %ymm29
, %ymm30
{%k7
} {z
}
85 //CHECK
: encoding
: [0x62,0x02,0x95,0xa7,0xb4,0xf4]
87 vpmadd52luq
(%rcx
), %ymm29
, %ymm30
88 //CHECK
: vpmadd52luq
(%rcx
), %ymm29
, %ymm30
89 //CHECK
: encoding
: [0x62,0x62,0x95,0x20,0xb4,0x31]
91 vpmadd52luq
0x123(%rax
,%r14,8), %ymm29
, %ymm30
92 //CHECK
: vpmadd52luq
291(%rax
,%r14,8), %ymm29
, %ymm30
93 //CHECK
: encoding
: [0x62,0x22,0x95,0x20,0xb4,0xb4,0xf0,0x23,0x01,0x00,0x00]
95 vpmadd52luq
(%rcx
){1to4
}, %ymm29
, %ymm30
96 //CHECK
: vpmadd52luq
(%rcx
){1to4
}, %ymm29
, %ymm30
97 //CHECK
: encoding
: [0x62,0x62,0x95,0x30,0xb4,0x31]
99 vpmadd52luq
0xfe0(%rdx
), %ymm29
, %ymm30
100 //CHECK
: vpmadd52luq
4064(%rdx
), %ymm29
, %ymm30
101 //CHECK
: encoding
: [0x62,0x62,0x95,0x20,0xb4,0x72,0x7f]
103 vpmadd52luq
0x1000(%rdx
), %ymm29
, %ymm30
104 //CHECK
: vpmadd52luq
4096(%rdx
), %ymm29
, %ymm30
105 //CHECK
: encoding
: [0x62,0x62,0x95,0x20,0xb4,0xb2,0x00,0x10,0x00,0x00]
107 vpmadd52luq
-0x1000(%rdx
), %ymm29
, %ymm30
108 //CHECK
: vpmadd52luq
-4096(%rdx
), %ymm29
, %ymm30
109 //CHECK
: encoding
: [0x62,0x62,0x95,0x20,0xb4,0x72,0x80]
111 vpmadd52luq
-0x1020(%rdx
), %ymm29
, %ymm30
112 //CHECK
: vpmadd52luq
-4128(%rdx
), %ymm29
, %ymm30
113 //CHECK
: encoding
: [0x62,0x62,0x95,0x20,0xb4,0xb2,0xe0,0xef,0xff,0xff]
115 vpmadd52luq
0x3f8(%rdx
){1to4
}, %ymm29
, %ymm30
116 //CHECK
: vpmadd52luq
1016(%rdx
){1to4
}, %ymm29
, %ymm30
117 //CHECK
: encoding
: [0x62,0x62,0x95,0x30,0xb4,0x72,0x7f]
119 vpmadd52luq
0x400(%rdx
){1to4
}, %ymm29
, %ymm30
120 //CHECK
: vpmadd52luq
1024(%rdx
){1to4
}, %ymm29
, %ymm30
121 //CHECK
: encoding
: [0x62,0x62,0x95,0x30,0xb4,0xb2,0x00,0x04,0x00,0x00]
123 vpmadd52luq
-0x400(%rdx
){1to4
}, %ymm29
, %ymm30
124 //CHECK
: vpmadd52luq
-1024(%rdx
){1to4
}, %ymm29
, %ymm30
125 //CHECK
: encoding
: [0x62,0x62,0x95,0x30,0xb4,0x72,0x80]
127 vpmadd52luq
-0x408(%rdx
){1to4
}, %ymm29
, %ymm30
128 //CHECK
: vpmadd52luq
-1032(%rdx
){1to4
}, %ymm29
, %ymm30
129 //CHECK
: encoding
: [0x62,0x62,0x95,0x30,0xb4,0xb2,0xf8,0xfb,0xff,0xff]
131 vpmadd52luq
0x1234(%rax
,%r14,8), %xmm29
, %xmm30
132 //CHECK
: vpmadd52luq
4660(%rax
,%r14,8), %xmm29
, %xmm30
133 //CHECK
: encoding
: [0x62,0x22,0x95,0x00,0xb4,0xb4,0xf0,0x34,0x12,0x00,0x00]
135 vpmadd52luq
0x1234(%rax
,%r14,8), %ymm29
, %ymm30
136 //CHECK
: vpmadd52luq
4660(%rax
,%r14,8), %ymm29
, %ymm30
137 //CHECK
: encoding
: [0x62,0x22,0x95,0x20,0xb4,0xb4,0xf0,0x34,0x12,0x00,0x00]
139 vpmadd52huq
%xmm4
, %xmm5
, %xmm6
{%k7
}
140 //CHECK
: vpmadd52huq
%xmm4
, %xmm5
, %xmm6
{%k7
}
141 //CHECK
: encoding
: [0x62,0xf2,0xd5,0x0f,0xb5,0xf4]
143 vpmadd52huq
%xmm4
, %xmm5
, %xmm6
{%k7
} {z
}
144 //CHECK
: vpmadd52huq
%xmm4
, %xmm5
, %xmm6
{%k7
} {z
}
145 //CHECK
: encoding
: [0x62,0xf2,0xd5,0x8f,0xb5,0xf4]
147 vpmadd52huq
%ymm4
, %ymm5
, %ymm6
{%k7
}
148 //CHECK
: vpmadd52huq
%ymm4
, %ymm5
, %ymm6
{%k7
}
149 //CHECK
: encoding
: [0x62,0xf2,0xd5,0x2f,0xb5,0xf4]
151 vpmadd52huq
%ymm4
, %ymm5
, %ymm6
{%k7
} {z
}
152 //CHECK
: vpmadd52huq
%ymm4
, %ymm5
, %ymm6
{%k7
} {z
}
153 //CHECK
: encoding
: [0x62,0xf2,0xd5,0xaf,0xb5,0xf4]
155 vpmadd52huq
%xmm28
, %xmm29
, %xmm30
156 //CHECK
: vpmadd52huq
%xmm28
, %xmm29
, %xmm30
157 //CHECK
: encoding
: [0x62,0x02,0x95,0x00,0xb5,0xf4]
159 vpmadd52huq
%xmm28
, %xmm29
, %xmm30
{%k7
}
160 //CHECK
: vpmadd52huq
%xmm28
, %xmm29
, %xmm30
{%k7
}
161 //CHECK
: encoding
: [0x62,0x02,0x95,0x07,0xb5,0xf4]
163 vpmadd52huq
%xmm28
, %xmm29
, %xmm30
{%k7
} {z
}
164 //CHECK
: vpmadd52huq
%xmm28
, %xmm29
, %xmm30
{%k7
} {z
}
165 //CHECK
: encoding
: [0x62,0x02,0x95,0x87,0xb5,0xf4]
167 vpmadd52huq
(%rcx
), %xmm29
, %xmm30
168 //CHECK
: vpmadd52huq
(%rcx
), %xmm29
, %xmm30
169 //CHECK
: encoding
: [0x62,0x62,0x95,0x00,0xb5,0x31]
171 vpmadd52huq
0x123(%rax
,%r14,8), %xmm29
, %xmm30
172 //CHECK
: vpmadd52huq
291(%rax
,%r14,8), %xmm29
, %xmm30
173 //CHECK
: encoding
: [0x62,0x22,0x95,0x00,0xb5,0xb4,0xf0,0x23,0x01,0x00,0x00]
175 vpmadd52huq
(%rcx
){1to2
}, %xmm29
, %xmm30
176 //CHECK
: vpmadd52huq
(%rcx
){1to2
}, %xmm29
, %xmm30
177 //CHECK
: encoding
: [0x62,0x62,0x95,0x10,0xb5,0x31]
179 vpmadd52huq
0x7f0(%rdx
), %xmm29
, %xmm30
180 //CHECK
: vpmadd52huq
2032(%rdx
), %xmm29
, %xmm30
181 //CHECK
: encoding
: [0x62,0x62,0x95,0x00,0xb5,0x72,0x7f]
183 vpmadd52huq
0x800(%rdx
), %xmm29
, %xmm30
184 //CHECK
: vpmadd52huq
2048(%rdx
), %xmm29
, %xmm30
185 //CHECK
: encoding
: [0x62,0x62,0x95,0x00,0xb5,0xb2,0x00,0x08,0x00,0x00]
187 vpmadd52huq
-0x800(%rdx
), %xmm29
, %xmm30
188 //CHECK
: vpmadd52huq
-2048(%rdx
), %xmm29
, %xmm30
189 //CHECK
: encoding
: [0x62,0x62,0x95,0x00,0xb5,0x72,0x80]
191 vpmadd52huq
-0x810(%rdx
), %xmm29
, %xmm30
192 //CHECK
: vpmadd52huq
-2064(%rdx
), %xmm29
, %xmm30
193 //CHECK
: encoding
: [0x62,0x62,0x95,0x00,0xb5,0xb2,0xf0,0xf7,0xff,0xff]
195 vpmadd52huq
0x3f8(%rdx
){1to2
}, %xmm29
, %xmm30
196 //CHECK
: vpmadd52huq
1016(%rdx
){1to2
}, %xmm29
, %xmm30
197 //CHECK
: encoding
: [0x62,0x62,0x95,0x10,0xb5,0x72,0x7f]
199 vpmadd52huq
0x400(%rdx
){1to2
}, %xmm29
, %xmm30
200 //CHECK
: vpmadd52huq
1024(%rdx
){1to2
}, %xmm29
, %xmm30
201 //CHECK
: encoding
: [0x62,0x62,0x95,0x10,0xb5,0xb2,0x00,0x04,0x00,0x00]
203 vpmadd52huq
-0x400(%rdx
){1to2
}, %xmm29
, %xmm30
204 //CHECK
: vpmadd52huq
-1024(%rdx
){1to2
}, %xmm29
, %xmm30
205 //CHECK
: encoding
: [0x62,0x62,0x95,0x10,0xb5,0x72,0x80]
207 vpmadd52huq
-0x408(%rdx
){1to2
}, %xmm29
, %xmm30
208 //CHECK
: vpmadd52huq
-1032(%rdx
){1to2
}, %xmm29
, %xmm30
209 //CHECK
: encoding
: [0x62,0x62,0x95,0x10,0xb5,0xb2,0xf8,0xfb,0xff,0xff]
211 vpmadd52huq
%ymm28
, %ymm29
, %ymm30
212 //CHECK
: vpmadd52huq
%ymm28
, %ymm29
, %ymm30
213 //CHECK
: encoding
: [0x62,0x02,0x95,0x20,0xb5,0xf4]
215 vpmadd52huq
%ymm28
, %ymm29
, %ymm30
{%k7
}
216 //CHECK
: vpmadd52huq
%ymm28
, %ymm29
, %ymm30
{%k7
}
217 //CHECK
: encoding
: [0x62,0x02,0x95,0x27,0xb5,0xf4]
219 vpmadd52huq
%ymm28
, %ymm29
, %ymm30
{%k7
} {z
}
220 //CHECK
: vpmadd52huq
%ymm28
, %ymm29
, %ymm30
{%k7
} {z
}
221 //CHECK
: encoding
: [0x62,0x02,0x95,0xa7,0xb5,0xf4]
223 vpmadd52huq
(%rcx
), %ymm29
, %ymm30
224 //CHECK
: vpmadd52huq
(%rcx
), %ymm29
, %ymm30
225 //CHECK
: encoding
: [0x62,0x62,0x95,0x20,0xb5,0x31]
227 vpmadd52huq
0x123(%rax
,%r14,8), %ymm29
, %ymm30
228 //CHECK
: vpmadd52huq
291(%rax
,%r14,8), %ymm29
, %ymm30
229 //CHECK
: encoding
: [0x62,0x22,0x95,0x20,0xb5,0xb4,0xf0,0x23,0x01,0x00,0x00]
231 vpmadd52huq
(%rcx
){1to4
}, %ymm29
, %ymm30
232 //CHECK
: vpmadd52huq
(%rcx
){1to4
}, %ymm29
, %ymm30
233 //CHECK
: encoding
: [0x62,0x62,0x95,0x30,0xb5,0x31]
235 vpmadd52huq
0xfe0(%rdx
), %ymm29
, %ymm30
236 //CHECK
: vpmadd52huq
4064(%rdx
), %ymm29
, %ymm30
237 //CHECK
: encoding
: [0x62,0x62,0x95,0x20,0xb5,0x72,0x7f]
239 vpmadd52huq
0x1000(%rdx
), %ymm29
, %ymm30
240 //CHECK
: vpmadd52huq
4096(%rdx
), %ymm29
, %ymm30
241 //CHECK
: encoding
: [0x62,0x62,0x95,0x20,0xb5,0xb2,0x00,0x10,0x00,0x00]
243 vpmadd52huq
-0x1000(%rdx
), %ymm29
, %ymm30
244 //CHECK
: vpmadd52huq
-4096(%rdx
), %ymm29
, %ymm30
245 //CHECK
: encoding
: [0x62,0x62,0x95,0x20,0xb5,0x72,0x80]
247 vpmadd52huq
-0x1020(%rdx
), %ymm29
, %ymm30
248 //CHECK
: vpmadd52huq
-4128(%rdx
), %ymm29
, %ymm30
249 //CHECK
: encoding
: [0x62,0x62,0x95,0x20,0xb5,0xb2,0xe0,0xef,0xff,0xff]
251 vpmadd52huq
0x3f8(%rdx
){1to4
}, %ymm29
, %ymm30
252 //CHECK
: vpmadd52huq
1016(%rdx
){1to4
}, %ymm29
, %ymm30
253 //CHECK
: encoding
: [0x62,0x62,0x95,0x30,0xb5,0x72,0x7f]
255 vpmadd52huq
0x400(%rdx
){1to4
}, %ymm29
, %ymm30
256 //CHECK
: vpmadd52huq
1024(%rdx
){1to4
}, %ymm29
, %ymm30
257 //CHECK
: encoding
: [0x62,0x62,0x95,0x30,0xb5,0xb2,0x00,0x04,0x00,0x00]
259 vpmadd52huq
-0x400(%rdx
){1to4
}, %ymm29
, %ymm30
260 //CHECK
: vpmadd52huq
-1024(%rdx
){1to4
}, %ymm29
, %ymm30
261 //CHECK
: encoding
: [0x62,0x62,0x95,0x30,0xb5,0x72,0x80]
263 vpmadd52huq
-0x408(%rdx
){1to4
}, %ymm29
, %ymm30
264 //CHECK
: vpmadd52huq
-1032(%rdx
){1to4
}, %ymm29
, %ymm30
265 //CHECK
: encoding
: [0x62,0x62,0x95,0x30,0xb5,0xb2,0xf8,0xfb,0xff,0xff]
267 vpmadd52huq
0x1234(%rax
,%r14,8), %xmm29
, %xmm30
268 //CHECK
: vpmadd52huq
4660(%rax
,%r14,8), %xmm29
, %xmm30
269 //CHECK
: encoding
: [0x62,0x22,0x95,0x00,0xb5,0xb4,0xf0,0x34,0x12,0x00,0x00]
271 vpmadd52huq
0x1234(%rax
,%r14,8), %ymm29
, %ymm30
272 //CHECK
: vpmadd52huq
4660(%rax
,%r14,8), %ymm29
, %ymm30
273 //CHECK
: encoding
: [0x62,0x22,0x95,0x20,0xb5,0xb4,0xf0,0x34,0x12,0x00,0x00]