[ARM] Better OR's for MVE compares
[llvm-core.git] / test / MC / X86 / avx512bitalg-encoding.s
blobf8b507adfc0912684b512dc97ce8d316eaf0a703
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}