1// RUN: llvm-mc -triple x86_64-unknown-unknown --show-encoding %s | FileCheck %s
2
3// CHECK: andnl 485498096, %r13d, %r13d
4// CHECK: encoding: [0xc4,0x62,0x10,0xf2,0x2c,0x25,0xf0,0x1c,0xf0,0x1c]
5andnl 485498096, %r13d, %r13d
6
7// CHECK: andnl 64(%rdx), %r13d, %r13d
8// CHECK: encoding: [0xc4,0x62,0x10,0xf2,0x6a,0x40]
9andnl 64(%rdx), %r13d, %r13d
10
11// CHECK: andnl 64(%rdx,%rax,4), %r13d, %r13d
12// CHECK: encoding: [0xc4,0x62,0x10,0xf2,0x6c,0x82,0x40]
13andnl 64(%rdx,%rax,4), %r13d, %r13d
14
15// CHECK: andnl -64(%rdx,%rax,4), %r13d, %r13d
16// CHECK: encoding: [0xc4,0x62,0x10,0xf2,0x6c,0x82,0xc0]
17andnl -64(%rdx,%rax,4), %r13d, %r13d
18
19// CHECK: andnl 64(%rdx,%rax), %r13d, %r13d
20// CHECK: encoding: [0xc4,0x62,0x10,0xf2,0x6c,0x02,0x40]
21andnl 64(%rdx,%rax), %r13d, %r13d
22
23// CHECK: andnl %r13d, %r13d, %r13d
24// CHECK: encoding: [0xc4,0x42,0x10,0xf2,0xed]
25andnl %r13d, %r13d, %r13d
26
27// CHECK: andnl (%rdx), %r13d, %r13d
28// CHECK: encoding: [0xc4,0x62,0x10,0xf2,0x2a]
29andnl (%rdx), %r13d, %r13d
30
31// CHECK: andnq 485498096, %r15, %r15
32// CHECK: encoding: [0xc4,0x62,0x80,0xf2,0x3c,0x25,0xf0,0x1c,0xf0,0x1c]
33andnq 485498096, %r15, %r15
34
35// CHECK: andnq 64(%rdx), %r15, %r15
36// CHECK: encoding: [0xc4,0x62,0x80,0xf2,0x7a,0x40]
37andnq 64(%rdx), %r15, %r15
38
39// CHECK: andnq 64(%rdx,%rax,4), %r15, %r15
40// CHECK: encoding: [0xc4,0x62,0x80,0xf2,0x7c,0x82,0x40]
41andnq 64(%rdx,%rax,4), %r15, %r15
42
43// CHECK: andnq -64(%rdx,%rax,4), %r15, %r15
44// CHECK: encoding: [0xc4,0x62,0x80,0xf2,0x7c,0x82,0xc0]
45andnq -64(%rdx,%rax,4), %r15, %r15
46
47// CHECK: andnq 64(%rdx,%rax), %r15, %r15
48// CHECK: encoding: [0xc4,0x62,0x80,0xf2,0x7c,0x02,0x40]
49andnq 64(%rdx,%rax), %r15, %r15
50
51// CHECK: andnq %r15, %r15, %r15
52// CHECK: encoding: [0xc4,0x42,0x80,0xf2,0xff]
53andnq %r15, %r15, %r15
54
55// CHECK: andnq (%rdx), %r15, %r15
56// CHECK: encoding: [0xc4,0x62,0x80,0xf2,0x3a]
57andnq (%rdx), %r15, %r15
58
59// CHECK: bextrl %r13d, 485498096, %r13d
60// CHECK: encoding: [0xc4,0x62,0x10,0xf7,0x2c,0x25,0xf0,0x1c,0xf0,0x1c]
61bextrl %r13d, 485498096, %r13d
62
63// CHECK: bextrl %r13d, 64(%rdx), %r13d
64// CHECK: encoding: [0xc4,0x62,0x10,0xf7,0x6a,0x40]
65bextrl %r13d, 64(%rdx), %r13d
66
67// CHECK: bextrl %r13d, 64(%rdx,%rax,4), %r13d
68// CHECK: encoding: [0xc4,0x62,0x10,0xf7,0x6c,0x82,0x40]
69bextrl %r13d, 64(%rdx,%rax,4), %r13d
70
71// CHECK: bextrl %r13d, -64(%rdx,%rax,4), %r13d
72// CHECK: encoding: [0xc4,0x62,0x10,0xf7,0x6c,0x82,0xc0]
73bextrl %r13d, -64(%rdx,%rax,4), %r13d
74
75// CHECK: bextrl %r13d, 64(%rdx,%rax), %r13d
76// CHECK: encoding: [0xc4,0x62,0x10,0xf7,0x6c,0x02,0x40]
77bextrl %r13d, 64(%rdx,%rax), %r13d
78
79// CHECK: bextrl %r13d, %r13d, %r13d
80// CHECK: encoding: [0xc4,0x42,0x10,0xf7,0xed]
81bextrl %r13d, %r13d, %r13d
82
83// CHECK: bextrl %r13d, (%rdx), %r13d
84// CHECK: encoding: [0xc4,0x62,0x10,0xf7,0x2a]
85bextrl %r13d, (%rdx), %r13d
86
87// CHECK: bextrq %r15, 485498096, %r15
88// CHECK: encoding: [0xc4,0x62,0x80,0xf7,0x3c,0x25,0xf0,0x1c,0xf0,0x1c]
89bextrq %r15, 485498096, %r15
90
91// CHECK: bextrq %r15, 64(%rdx), %r15
92// CHECK: encoding: [0xc4,0x62,0x80,0xf7,0x7a,0x40]
93bextrq %r15, 64(%rdx), %r15
94
95// CHECK: bextrq %r15, 64(%rdx,%rax,4), %r15
96// CHECK: encoding: [0xc4,0x62,0x80,0xf7,0x7c,0x82,0x40]
97bextrq %r15, 64(%rdx,%rax,4), %r15
98
99// CHECK: bextrq %r15, -64(%rdx,%rax,4), %r15
100// CHECK: encoding: [0xc4,0x62,0x80,0xf7,0x7c,0x82,0xc0]
101bextrq %r15, -64(%rdx,%rax,4), %r15
102
103// CHECK: bextrq %r15, 64(%rdx,%rax), %r15
104// CHECK: encoding: [0xc4,0x62,0x80,0xf7,0x7c,0x02,0x40]
105bextrq %r15, 64(%rdx,%rax), %r15
106
107// CHECK: bextrq %r15, %r15, %r15
108// CHECK: encoding: [0xc4,0x42,0x80,0xf7,0xff]
109bextrq %r15, %r15, %r15
110
111// CHECK: bextrq %r15, (%rdx), %r15
112// CHECK: encoding: [0xc4,0x62,0x80,0xf7,0x3a]
113bextrq %r15, (%rdx), %r15
114
115// CHECK: blsil 485498096, %r13d
116// CHECK: encoding: [0xc4,0xe2,0x10,0xf3,0x1c,0x25,0xf0,0x1c,0xf0,0x1c]
117blsil 485498096, %r13d
118
119// CHECK: blsil 64(%rdx), %r13d
120// CHECK: encoding: [0xc4,0xe2,0x10,0xf3,0x5a,0x40]
121blsil 64(%rdx), %r13d
122
123// CHECK: blsil 64(%rdx,%rax,4), %r13d
124// CHECK: encoding: [0xc4,0xe2,0x10,0xf3,0x5c,0x82,0x40]
125blsil 64(%rdx,%rax,4), %r13d
126
127// CHECK: blsil -64(%rdx,%rax,4), %r13d
128// CHECK: encoding: [0xc4,0xe2,0x10,0xf3,0x5c,0x82,0xc0]
129blsil -64(%rdx,%rax,4), %r13d
130
131// CHECK: blsil 64(%rdx,%rax), %r13d
132// CHECK: encoding: [0xc4,0xe2,0x10,0xf3,0x5c,0x02,0x40]
133blsil 64(%rdx,%rax), %r13d
134
135// CHECK: blsil %r13d, %r13d
136// CHECK: encoding: [0xc4,0xc2,0x10,0xf3,0xdd]
137blsil %r13d, %r13d
138
139// CHECK: blsil (%rdx), %r13d
140// CHECK: encoding: [0xc4,0xe2,0x10,0xf3,0x1a]
141blsil (%rdx), %r13d
142
143// CHECK: blsiq 485498096, %r15
144// CHECK: encoding: [0xc4,0xe2,0x80,0xf3,0x1c,0x25,0xf0,0x1c,0xf0,0x1c]
145blsiq 485498096, %r15
146
147// CHECK: blsiq 64(%rdx), %r15
148// CHECK: encoding: [0xc4,0xe2,0x80,0xf3,0x5a,0x40]
149blsiq 64(%rdx), %r15
150
151// CHECK: blsiq 64(%rdx,%rax,4), %r15
152// CHECK: encoding: [0xc4,0xe2,0x80,0xf3,0x5c,0x82,0x40]
153blsiq 64(%rdx,%rax,4), %r15
154
155// CHECK: blsiq -64(%rdx,%rax,4), %r15
156// CHECK: encoding: [0xc4,0xe2,0x80,0xf3,0x5c,0x82,0xc0]
157blsiq -64(%rdx,%rax,4), %r15
158
159// CHECK: blsiq 64(%rdx,%rax), %r15
160// CHECK: encoding: [0xc4,0xe2,0x80,0xf3,0x5c,0x02,0x40]
161blsiq 64(%rdx,%rax), %r15
162
163// CHECK: blsiq %r15, %r15
164// CHECK: encoding: [0xc4,0xc2,0x80,0xf3,0xdf]
165blsiq %r15, %r15
166
167// CHECK: blsiq (%rdx), %r15
168// CHECK: encoding: [0xc4,0xe2,0x80,0xf3,0x1a]
169blsiq (%rdx), %r15
170
171// CHECK: blsmskl 485498096, %r13d
172// CHECK: encoding: [0xc4,0xe2,0x10,0xf3,0x14,0x25,0xf0,0x1c,0xf0,0x1c]
173blsmskl 485498096, %r13d
174
175// CHECK: blsmskl 64(%rdx), %r13d
176// CHECK: encoding: [0xc4,0xe2,0x10,0xf3,0x52,0x40]
177blsmskl 64(%rdx), %r13d
178
179// CHECK: blsmskl 64(%rdx,%rax,4), %r13d
180// CHECK: encoding: [0xc4,0xe2,0x10,0xf3,0x54,0x82,0x40]
181blsmskl 64(%rdx,%rax,4), %r13d
182
183// CHECK: blsmskl -64(%rdx,%rax,4), %r13d
184// CHECK: encoding: [0xc4,0xe2,0x10,0xf3,0x54,0x82,0xc0]
185blsmskl -64(%rdx,%rax,4), %r13d
186
187// CHECK: blsmskl 64(%rdx,%rax), %r13d
188// CHECK: encoding: [0xc4,0xe2,0x10,0xf3,0x54,0x02,0x40]
189blsmskl 64(%rdx,%rax), %r13d
190
191// CHECK: blsmskl %r13d, %r13d
192// CHECK: encoding: [0xc4,0xc2,0x10,0xf3,0xd5]
193blsmskl %r13d, %r13d
194
195// CHECK: blsmskl (%rdx), %r13d
196// CHECK: encoding: [0xc4,0xe2,0x10,0xf3,0x12]
197blsmskl (%rdx), %r13d
198
199// CHECK: blsmskq 485498096, %r15
200// CHECK: encoding: [0xc4,0xe2,0x80,0xf3,0x14,0x25,0xf0,0x1c,0xf0,0x1c]
201blsmskq 485498096, %r15
202
203// CHECK: blsmskq 64(%rdx), %r15
204// CHECK: encoding: [0xc4,0xe2,0x80,0xf3,0x52,0x40]
205blsmskq 64(%rdx), %r15
206
207// CHECK: blsmskq 64(%rdx,%rax,4), %r15
208// CHECK: encoding: [0xc4,0xe2,0x80,0xf3,0x54,0x82,0x40]
209blsmskq 64(%rdx,%rax,4), %r15
210
211// CHECK: blsmskq -64(%rdx,%rax,4), %r15
212// CHECK: encoding: [0xc4,0xe2,0x80,0xf3,0x54,0x82,0xc0]
213blsmskq -64(%rdx,%rax,4), %r15
214
215// CHECK: blsmskq 64(%rdx,%rax), %r15
216// CHECK: encoding: [0xc4,0xe2,0x80,0xf3,0x54,0x02,0x40]
217blsmskq 64(%rdx,%rax), %r15
218
219// CHECK: blsmskq %r15, %r15
220// CHECK: encoding: [0xc4,0xc2,0x80,0xf3,0xd7]
221blsmskq %r15, %r15
222
223// CHECK: blsmskq (%rdx), %r15
224// CHECK: encoding: [0xc4,0xe2,0x80,0xf3,0x12]
225blsmskq (%rdx), %r15
226
227// CHECK: blsrl 485498096, %r13d
228// CHECK: encoding: [0xc4,0xe2,0x10,0xf3,0x0c,0x25,0xf0,0x1c,0xf0,0x1c]
229blsrl 485498096, %r13d
230
231// CHECK: blsrl 64(%rdx), %r13d
232// CHECK: encoding: [0xc4,0xe2,0x10,0xf3,0x4a,0x40]
233blsrl 64(%rdx), %r13d
234
235// CHECK: blsrl 64(%rdx,%rax,4), %r13d
236// CHECK: encoding: [0xc4,0xe2,0x10,0xf3,0x4c,0x82,0x40]
237blsrl 64(%rdx,%rax,4), %r13d
238
239// CHECK: blsrl -64(%rdx,%rax,4), %r13d
240// CHECK: encoding: [0xc4,0xe2,0x10,0xf3,0x4c,0x82,0xc0]
241blsrl -64(%rdx,%rax,4), %r13d
242
243// CHECK: blsrl 64(%rdx,%rax), %r13d
244// CHECK: encoding: [0xc4,0xe2,0x10,0xf3,0x4c,0x02,0x40]
245blsrl 64(%rdx,%rax), %r13d
246
247// CHECK: blsrl %r13d, %r13d
248// CHECK: encoding: [0xc4,0xc2,0x10,0xf3,0xcd]
249blsrl %r13d, %r13d
250
251// CHECK: blsrl (%rdx), %r13d
252// CHECK: encoding: [0xc4,0xe2,0x10,0xf3,0x0a]
253blsrl (%rdx), %r13d
254
255// CHECK: blsrq 485498096, %r15
256// CHECK: encoding: [0xc4,0xe2,0x80,0xf3,0x0c,0x25,0xf0,0x1c,0xf0,0x1c]
257blsrq 485498096, %r15
258
259// CHECK: blsrq 64(%rdx), %r15
260// CHECK: encoding: [0xc4,0xe2,0x80,0xf3,0x4a,0x40]
261blsrq 64(%rdx), %r15
262
263// CHECK: blsrq 64(%rdx,%rax,4), %r15
264// CHECK: encoding: [0xc4,0xe2,0x80,0xf3,0x4c,0x82,0x40]
265blsrq 64(%rdx,%rax,4), %r15
266
267// CHECK: blsrq -64(%rdx,%rax,4), %r15
268// CHECK: encoding: [0xc4,0xe2,0x80,0xf3,0x4c,0x82,0xc0]
269blsrq -64(%rdx,%rax,4), %r15
270
271// CHECK: blsrq 64(%rdx,%rax), %r15
272// CHECK: encoding: [0xc4,0xe2,0x80,0xf3,0x4c,0x02,0x40]
273blsrq 64(%rdx,%rax), %r15
274
275// CHECK: blsrq %r15, %r15
276// CHECK: encoding: [0xc4,0xc2,0x80,0xf3,0xcf]
277blsrq %r15, %r15
278
279// CHECK: blsrq (%rdx), %r15
280// CHECK: encoding: [0xc4,0xe2,0x80,0xf3,0x0a]
281blsrq (%rdx), %r15
282
283// CHECK: tzcntl %r13d, %r13d
284// CHECK: encoding: [0xf3,0x45,0x0f,0xbc,0xed]
285tzcntl %r13d, %r13d
286
287