1 // RUN
: llvm-mc
-triple x86_64-unknown-unknown
--show-encoding
< %s | FileCheck
%s
3 // CHECK
: vpopcntb
%zmm23
, %zmm21
4 // CHECK
: encoding
: [0x62,0xa2,0x7d,0x48,0x54,0xef]
5 vpopcntb
%zmm23
, %zmm21
7 // CHECK
: vpopcntw
%zmm23
, %zmm21
8 // CHECK
: encoding
: [0x62,0xa2,0xfd,0x48,0x54,0xef]
9 vpopcntw
%zmm23
, %zmm21
11 // CHECK
: vpopcntb
%zmm3
, %zmm1
{%k2
}
12 // CHECK
: encoding
: [0x62,0xf2,0x7d,0x4a,0x54,0xcb]
13 vpopcntb
%zmm3
, %zmm1
{%k2
}
15 // CHECK
: vpopcntw
%zmm3
, %zmm1
{%k2
}
16 // CHECK
: encoding
: [0x62,0xf2,0xfd,0x4a,0x54,0xcb]
17 vpopcntw
%zmm3
, %zmm1
{%k2
}
19 // CHECK
: vpopcntb
(%rcx
), %zmm1
20 // CHECK
: encoding
: [0x62,0xf2,0x7d,0x48,0x54,0x09]
21 vpopcntb
(%rcx
), %zmm1
23 // CHECK
: vpopcntb
-256(%rsp
), %zmm1
24 // CHECK
: encoding
: [0x62,0xf2,0x7d,0x48,0x54,0x4c,0x24,0xfc]
25 vpopcntb
-256(%rsp
), %zmm1
27 // CHECK
: vpopcntb
256(%rsp
), %zmm1
28 // CHECK
: encoding
: [0x62,0xf2,0x7d,0x48,0x54,0x4c,0x24,0x04]
29 vpopcntb
256(%rsp
), %zmm1
31 // CHECK
: vpopcntb
268435456(%rcx
,%r14,8), %zmm1
32 // CHECK
: encoding
: [0x62,0xb2,0x7d,0x48,0x54,0x8c,0xf1,0x00,0x00,0x00,0x10]
33 vpopcntb
268435456(%rcx
,%r14,8), %zmm1
35 // CHECK
: vpopcntb
-536870912(%rcx
,%r14,8), %zmm1
36 // CHECK
: encoding
: [0x62,0xb2,0x7d,0x48,0x54,0x8c,0xf1,0x00,0x00,0x00,0xe0]
37 vpopcntb
-536870912(%rcx
,%r14,8), %zmm1
39 // CHECK
: vpopcntb
-536870910(%rcx
,%r14,8), %zmm1
40 // CHECK
: encoding
: [0x62,0xb2,0x7d,0x48,0x54,0x8c,0xf1,0x02,0x00,0x00,0xe0]
41 vpopcntb
-536870910(%rcx
,%r14,8), %zmm1
43 // CHECK
: vpopcntw
(%rcx
), %zmm1
44 // CHECK
: encoding
: [0x62,0xf2,0xfd,0x48,0x54,0x09]
45 vpopcntw
(%rcx
), %zmm1
47 // CHECK
: vpopcntw
-256(%rsp
), %zmm1
48 // CHECK
: encoding
: [0x62,0xf2,0xfd,0x48,0x54,0x4c,0x24,0xfc]
49 vpopcntw
-256(%rsp
), %zmm1
51 // CHECK
: vpopcntw
256(%rsp
), %zmm1
52 // CHECK
: encoding
: [0x62,0xf2,0xfd,0x48,0x54,0x4c,0x24,0x04]
53 vpopcntw
256(%rsp
), %zmm1
55 // CHECK
: vpopcntw
268435456(%rcx
,%r14,8), %zmm1
56 // CHECK
: encoding
: [0x62,0xb2,0xfd,0x48,0x54,0x8c,0xf1,0x00,0x00,0x00,0x10]
57 vpopcntw
268435456(%rcx
,%r14,8), %zmm1
59 // CHECK
: vpopcntw
-536870912(%rcx
,%r14,8), %zmm1
60 // CHECK
: encoding
: [0x62,0xb2,0xfd,0x48,0x54,0x8c,0xf1,0x00,0x00,0x00,0xe0]
61 vpopcntw
-536870912(%rcx
,%r14,8), %zmm1
63 // CHECK
: vpopcntw
-536870910(%rcx
,%r14,8), %zmm1
64 // CHECK
: encoding
: [0x62,0xb2,0xfd,0x48,0x54,0x8c,0xf1,0x02,0x00,0x00,0xe0]
65 vpopcntw
-536870910(%rcx
,%r14,8), %zmm1
67 // CHECK
: vpopcntb
(%rcx
), %zmm21
{%k2
}
68 // CHECK
: encoding
: [0x62,0xe2,0x7d,0x4a,0x54,0x29]
69 vpopcntb
(%rcx
), %zmm21
{%k2
}
71 // CHECK
: vpopcntb
-256(%rsp
), %zmm21
{%k2
}
72 // CHECK
: encoding
: [0x62,0xe2,0x7d,0x4a,0x54,0x6c,0x24,0xfc]
73 vpopcntb
-256(%rsp
), %zmm21
{%k2
}
75 // CHECK
: vpopcntb
256(%rsp
), %zmm21
{%k2
}
76 // CHECK
: encoding
: [0x62,0xe2,0x7d,0x4a,0x54,0x6c,0x24,0x04]
77 vpopcntb
256(%rsp
), %zmm21
{%k2
}
79 // CHECK
: vpopcntb
268435456(%rcx
,%r14,8), %zmm21
{%k2
}
80 // CHECK
: encoding
: [0x62,0xa2,0x7d,0x4a,0x54,0xac,0xf1,0x00,0x00,0x00,0x10]
81 vpopcntb
268435456(%rcx
,%r14,8), %zmm21
{%k2
}
83 // CHECK
: vpopcntb
-536870912(%rcx
,%r14,8), %zmm21
{%k2
}
84 // CHECK
: encoding
: [0x62,0xa2,0x7d,0x4a,0x54,0xac,0xf1,0x00,0x00,0x00,0xe0]
85 vpopcntb
-536870912(%rcx
,%r14,8), %zmm21
{%k2
}
87 // CHECK
: vpopcntb
-536870910(%rcx
,%r14,8), %zmm21
{%k2
}
88 // CHECK
: encoding
: [0x62,0xa2,0x7d,0x4a,0x54,0xac,0xf1,0x02,0x00,0x00,0xe0]
89 vpopcntb
-536870910(%rcx
,%r14,8), %zmm21
{%k2
}
91 // CHECK
: vpopcntw
(%rcx
), %zmm21
{%k2
}
92 // CHECK
: encoding
: [0x62,0xe2,0xfd,0x4a,0x54,0x29]
93 vpopcntw
(%rcx
), %zmm21
{%k2
}
95 // CHECK
: vpopcntw
-256(%rsp
), %zmm21
{%k2
}
96 // CHECK
: encoding
: [0x62,0xe2,0xfd,0x4a,0x54,0x6c,0x24,0xfc]
97 vpopcntw
-256(%rsp
), %zmm21
{%k2
}
99 // CHECK
: vpopcntw
256(%rsp
), %zmm21
{%k2
}
100 // CHECK
: encoding
: [0x62,0xe2,0xfd,0x4a,0x54,0x6c,0x24,0x04]
101 vpopcntw
256(%rsp
), %zmm21
{%k2
}
103 // CHECK
: vpopcntw
268435456(%rcx
,%r14,8), %zmm21
{%k2
}
104 // CHECK
: encoding
: [0x62,0xa2,0xfd,0x4a,0x54,0xac,0xf1,0x00,0x00,0x00,0x10]
105 vpopcntw
268435456(%rcx
,%r14,8), %zmm21
{%k2
}
107 // CHECK
: vpopcntw
-536870912(%rcx
,%r14,8), %zmm21
{%k2
}
108 // CHECK
: encoding
: [0x62,0xa2,0xfd,0x4a,0x54,0xac,0xf1,0x00,0x00,0x00,0xe0]
109 vpopcntw
-536870912(%rcx
,%r14,8), %zmm21
{%k2
}
111 // CHECK
: vpopcntw
-536870910(%rcx
,%r14,8), %zmm21
{%k2
}
112 // CHECK
: encoding
: [0x62,0xa2,0xfd,0x4a,0x54,0xac,0xf1,0x02,0x00,0x00,0xe0]
113 vpopcntw
-536870910(%rcx
,%r14,8), %zmm21
{%k2
}
115 // CHECK
: vpshufbitqmb
%zmm2
, %zmm23
, %k1
116 // CHECK
: encoding
: [0x62,0xf2,0x45,0x40,0x8f,0xca]
117 vpshufbitqmb
%zmm2
, %zmm23
, %k1
119 // CHECK
: vpshufbitqmb
%zmm2
, %zmm23
, %k1
{%k2
}
120 // CHECK
: encoding
: [0x62,0xf2,0x45,0x42,0x8f,0xca]
121 vpshufbitqmb
%zmm2
, %zmm23
, %k1
{%k2
}
123 // CHECK
: vpshufbitqmb
(%rcx
), %zmm23
, %k1
124 // CHECK
: encoding
: [0x62,0xf2,0x45,0x40,0x8f,0x09]
125 vpshufbitqmb
(%rcx
), %zmm23
, %k1
127 // CHECK
: vpshufbitqmb
-256(%rsp
), %zmm23
, %k1
128 // CHECK
: encoding
: [0x62,0xf2,0x45,0x40,0x8f,0x4c,0x24,0xfc]
129 vpshufbitqmb
-256(%rsp
), %zmm23
, %k1
131 // CHECK
: vpshufbitqmb
256(%rsp
), %zmm23
, %k1
132 // CHECK
: encoding
: [0x62,0xf2,0x45,0x40,0x8f,0x4c,0x24,0x04]
133 vpshufbitqmb
256(%rsp
), %zmm23
, %k1
135 // CHECK
: vpshufbitqmb
268435456(%rcx
,%r14,8), %zmm23
, %k1
136 // CHECK
: encoding
: [0x62,0xb2,0x45,0x40,0x8f,0x8c,0xf1,0x00,0x00,0x00,0x10]
137 vpshufbitqmb
268435456(%rcx
,%r14,8), %zmm23
, %k1
139 // CHECK
: vpshufbitqmb
-536870912(%rcx
,%r14,8), %zmm23
, %k1
140 // CHECK
: encoding
: [0x62,0xb2,0x45,0x40,0x8f,0x8c,0xf1,0x00,0x00,0x00,0xe0]
141 vpshufbitqmb
-536870912(%rcx
,%r14,8), %zmm23
, %k1
143 // CHECK
: vpshufbitqmb
-536870910(%rcx
,%r14,8), %zmm23
, %k1
144 // CHECK
: encoding
: [0x62,0xb2,0x45,0x40,0x8f,0x8c,0xf1,0x02,0x00,0x00,0xe0]
145 vpshufbitqmb
-536870910(%rcx
,%r14,8), %zmm23
, %k1
147 // CHECK
: vpshufbitqmb
(%rcx
), %zmm23
, %k1
{%k2
}
148 // CHECK
: encoding
: [0x62,0xf2,0x45,0x42,0x8f,0x09]
149 vpshufbitqmb
(%rcx
), %zmm23
, %k1
{%k2
}
151 // CHECK
: vpshufbitqmb
-256(%rsp
), %zmm23
, %k1
{%k2
}
152 // CHECK
: encoding
: [0x62,0xf2,0x45,0x42,0x8f,0x4c,0x24,0xfc]
153 vpshufbitqmb
-256(%rsp
), %zmm23
, %k1
{%k2
}
155 // CHECK
: vpshufbitqmb
256(%rsp
), %zmm23
, %k1
{%k2
}
156 // CHECK
: encoding
: [0x62,0xf2,0x45,0x42,0x8f,0x4c,0x24,0x04]
157 vpshufbitqmb
256(%rsp
), %zmm23
, %k1
{%k2
}
159 // CHECK
: vpshufbitqmb
268435456(%rcx
,%r14,8), %zmm23
, %k1
{%k2
}
160 // CHECK
: encoding
: [0x62,0xb2,0x45,0x42,0x8f,0x8c,0xf1,0x00,0x00,0x00,0x10]
161 vpshufbitqmb
268435456(%rcx
,%r14,8), %zmm23
, %k1
{%k2
}
163 // CHECK
: vpshufbitqmb
-536870912(%rcx
,%r14,8), %zmm23
, %k1
{%k2
}
164 // CHECK
: encoding
: [0x62,0xb2,0x45,0x42,0x8f,0x8c,0xf1,0x00,0x00,0x00,0xe0]
165 vpshufbitqmb
-536870912(%rcx
,%r14,8), %zmm23
, %k1
{%k2
}
167 // CHECK
: vpshufbitqmb
-536870910(%rcx
,%r14,8), %zmm23
, %k1
{%k2
}
168 // CHECK
: encoding
: [0x62,0xb2,0x45,0x42,0x8f,0x8c,0xf1,0x02,0x00,0x00,0xe0]
169 vpshufbitqmb
-536870910(%rcx
,%r14,8), %zmm23
, %k1
{%k2
}