Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / llvm / test / tools / llvm-mca / X86 / Generic / resources-avx512vbmi2.s
blobd777d31cdfa16c78a252525600d580c07b4847a3
1 # NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
2 # RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=x86-64 -instruction-tables < %s | FileCheck %s
4 vpcompressb %zmm16, %zmm19
5 vpcompressb %zmm16, (%rax)
6 vpcompressb %zmm16, %zmm19 {k1}
7 vpcompressb %zmm16, (%rax) {k1}
8 vpcompressb %zmm16, %zmm19 {k1}{z}
10 vpcompressw %zmm16, %zmm19
11 vpcompressw %zmm16, (%rax)
12 vpcompressw %zmm16, %zmm19 {k1}
13 vpcompressw %zmm16, (%rax) {k1}
14 vpcompressw %zmm16, %zmm19 {k1}{z}
16 vpexpandb %zmm16, %zmm19
17 vpexpandb (%rax), %zmm19
18 vpexpandb %zmm16, %zmm19 {k1}
19 vpexpandb (%rax), %zmm19 {k1}
20 vpexpandb %zmm16, %zmm19 {k1}{z}
22 vpexpandw %zmm16, %zmm19
23 vpexpandw (%rax), %zmm19
24 vpexpandw %zmm16, %zmm19 {k1}
25 vpexpandw (%rax), %zmm19 {k1}
26 vpexpandw %zmm16, %zmm19 {k1}{z}
28 vpshldd $1, %zmm16, %zmm17, %zmm19
29 vpshldd $1, (%rax), %zmm17, %zmm19
30 vpshldd $1, (%rax){1to16}, %zmm17, %zmm19
31 vpshldd $1, %zmm16, %zmm17, %zmm19 {k1}
32 vpshldd $1, (%rax), %zmm17, %zmm19 {k1}
33 vpshldd $1, (%rax){1to16}, %zmm17, %zmm19 {k1}
34 vpshldd $1, %zmm16, %zmm17, %zmm19 {k1}{z}
35 vpshldd $1, (%rax), %zmm17, %zmm19 {k1}{z}
36 vpshldd $1, (%rax){1to16}, %zmm17, %zmm19 {k1}{z}
38 vpshldq $1, %zmm16, %zmm17, %zmm19
39 vpshldq $1, (%rax), %zmm17, %zmm19
40 vpshldq $1, (%rax){1to8}, %zmm17, %zmm19
41 vpshldq $1, %zmm16, %zmm17, %zmm19 {k1}
42 vpshldq $1, (%rax), %zmm17, %zmm19 {k1}
43 vpshldq $1, (%rax){1to8}, %zmm17, %zmm19 {k1}
44 vpshldq $1, %zmm16, %zmm17, %zmm19 {k1}{z}
45 vpshldq $1, (%rax), %zmm17, %zmm19 {k1}{z}
46 vpshldq $1, (%rax){1to8}, %zmm17, %zmm19 {k1}{z}
48 vpshldvd %zmm16, %zmm17, %zmm19
49 vpshldvd (%rax), %zmm17, %zmm19
50 vpshldvd (%rax){1to16}, %zmm17, %zmm19
51 vpshldvd %zmm16, %zmm17, %zmm19 {k1}
52 vpshldvd (%rax), %zmm17, %zmm19 {k1}
53 vpshldvd (%rax){1to16}, %zmm17, %zmm19 {k1}
54 vpshldvd %zmm16, %zmm17, %zmm19 {k1}{z}
55 vpshldvd (%rax), %zmm17, %zmm19 {k1}{z}
56 vpshldvd (%rax){1to16}, %zmm17, %zmm19 {k1}{z}
58 vpshldvq %zmm16, %zmm17, %zmm19
59 vpshldvq (%rax), %zmm17, %zmm19
60 vpshldvq (%rax){1to8}, %zmm17, %zmm19
61 vpshldvq %zmm16, %zmm17, %zmm19 {k1}
62 vpshldvq (%rax), %zmm17, %zmm19 {k1}
63 vpshldvq (%rax){1to8}, %zmm17, %zmm19 {k1}
64 vpshldvq %zmm16, %zmm17, %zmm19 {k1}{z}
65 vpshldvq (%rax), %zmm17, %zmm19 {k1}{z}
66 vpshldvq (%rax){1to8}, %zmm17, %zmm19 {k1}{z}
68 vpshldvw %zmm16, %zmm17, %zmm19
69 vpshldvw (%rax), %zmm17, %zmm19
70 vpshldvw %zmm16, %zmm17, %zmm19 {k1}
71 vpshldvw (%rax), %zmm17, %zmm19 {k1}
72 vpshldvw %zmm16, %zmm17, %zmm19 {k1}{z}
73 vpshldvw (%rax), %zmm17, %zmm19 {k1}{z}
75 vpshldw $1, %zmm16, %zmm17, %zmm19
76 vpshldw $1, (%rax), %zmm17, %zmm19
77 vpshldw $1, %zmm16, %zmm17, %zmm19 {k1}
78 vpshldw $1, (%rax), %zmm17, %zmm19 {k1}
79 vpshldw $1, %zmm16, %zmm17, %zmm19 {k1}{z}
80 vpshldw $1, (%rax), %zmm17, %zmm19 {k1}{z}
82 vpshrdd $1, %zmm16, %zmm17, %zmm19
83 vpshrdd $1, (%rax), %zmm17, %zmm19
84 vpshrdd $1, (%rax){1to16}, %zmm17, %zmm19
85 vpshrdd $1, %zmm16, %zmm17, %zmm19 {k1}
86 vpshrdd $1, (%rax), %zmm17, %zmm19 {k1}
87 vpshrdd $1, (%rax){1to16}, %zmm17, %zmm19 {k1}
88 vpshrdd $1, %zmm16, %zmm17, %zmm19 {k1}{z}
89 vpshrdd $1, (%rax), %zmm17, %zmm19 {k1}{z}
90 vpshrdd $1, (%rax){1to16}, %zmm17, %zmm19 {k1}{z}
92 vpshrdq $1, %zmm16, %zmm17, %zmm19
93 vpshrdq $1, (%rax), %zmm17, %zmm19
94 vpshrdq $1, (%rax){1to8}, %zmm17, %zmm19
95 vpshrdq $1, %zmm16, %zmm17, %zmm19 {k1}
96 vpshrdq $1, (%rax), %zmm17, %zmm19 {k1}
97 vpshrdq $1, (%rax){1to8}, %zmm17, %zmm19 {k1}
98 vpshrdq $1, %zmm16, %zmm17, %zmm19 {k1}{z}
99 vpshrdq $1, (%rax), %zmm17, %zmm19 {k1}{z}
100 vpshrdq $1, (%rax){1to8}, %zmm17, %zmm19 {k1}{z}
102 vpshrdvd %zmm16, %zmm17, %zmm19
103 vpshrdvd (%rax), %zmm17, %zmm19
104 vpshrdvd (%rax){1to16}, %zmm17, %zmm19
105 vpshrdvd %zmm16, %zmm17, %zmm19 {k1}
106 vpshrdvd (%rax), %zmm17, %zmm19 {k1}
107 vpshrdvd (%rax){1to16}, %zmm17, %zmm19 {k1}
108 vpshrdvd %zmm16, %zmm17, %zmm19 {k1}{z}
109 vpshrdvd (%rax), %zmm17, %zmm19 {k1}{z}
110 vpshrdvd (%rax){1to16}, %zmm17, %zmm19 {k1}{z}
112 vpshrdvq %zmm16, %zmm17, %zmm19
113 vpshrdvq (%rax), %zmm17, %zmm19
114 vpshrdvq (%rax){1to8}, %zmm17, %zmm19
115 vpshrdvq %zmm16, %zmm17, %zmm19 {k1}
116 vpshrdvq (%rax), %zmm17, %zmm19 {k1}
117 vpshrdvq (%rax){1to8}, %zmm17, %zmm19 {k1}
118 vpshrdvq %zmm16, %zmm17, %zmm19 {k1}{z}
119 vpshrdvq (%rax), %zmm17, %zmm19 {k1}{z}
120 vpshrdvq (%rax){1to8}, %zmm17, %zmm19 {k1}{z}
122 vpshrdvw %zmm16, %zmm17, %zmm19
123 vpshrdvw (%rax), %zmm17, %zmm19
124 vpshrdvw %zmm16, %zmm17, %zmm19 {k1}
125 vpshrdvw (%rax), %zmm17, %zmm19 {k1}
126 vpshrdvw %zmm16, %zmm17, %zmm19 {k1}{z}
127 vpshrdvw (%rax), %zmm17, %zmm19 {k1}{z}
129 vpshrdw $1, %zmm16, %zmm17, %zmm19
130 vpshrdw $1, (%rax), %zmm17, %zmm19
131 vpshrdw $1, %zmm16, %zmm17, %zmm19 {k1}
132 vpshrdw $1, (%rax), %zmm17, %zmm19 {k1}
133 vpshrdw $1, %zmm16, %zmm17, %zmm19 {k1}{z}
134 vpshrdw $1, (%rax), %zmm17, %zmm19 {k1}{z}
136 # CHECK: Instruction Info:
137 # CHECK-NEXT: [1]: #uOps
138 # CHECK-NEXT: [2]: Latency
139 # CHECK-NEXT: [3]: RThroughput
140 # CHECK-NEXT: [4]: MayLoad
141 # CHECK-NEXT: [5]: MayStore
142 # CHECK-NEXT: [6]: HasSideEffects (U)
144 # CHECK: [1] [2] [3] [4] [5] [6] Instructions:
145 # CHECK-NEXT: 1 1 1.00 U vpcompressb %zmm16, %zmm19
146 # CHECK-NEXT: 2 8 1.00 * vpcompressb %zmm16, (%rax)
147 # CHECK-NEXT: 1 1 1.00 vpcompressb %zmm16, %zmm19 {%k1}
148 # CHECK-NEXT: 2 8 1.00 * vpcompressb %zmm16, (%rax) {%k1}
149 # CHECK-NEXT: 1 1 1.00 vpcompressb %zmm16, %zmm19 {%k1} {z}
150 # CHECK-NEXT: 1 1 1.00 U vpcompressw %zmm16, %zmm19
151 # CHECK-NEXT: 2 8 1.00 * vpcompressw %zmm16, (%rax)
152 # CHECK-NEXT: 1 1 1.00 vpcompressw %zmm16, %zmm19 {%k1}
153 # CHECK-NEXT: 2 8 1.00 * vpcompressw %zmm16, (%rax) {%k1}
154 # CHECK-NEXT: 1 1 1.00 vpcompressw %zmm16, %zmm19 {%k1} {z}
155 # CHECK-NEXT: 1 1 1.00 U vpexpandb %zmm16, %zmm19
156 # CHECK-NEXT: 2 8 1.00 U vpexpandb (%rax), %zmm19
157 # CHECK-NEXT: 1 1 1.00 vpexpandb %zmm16, %zmm19 {%k1}
158 # CHECK-NEXT: 2 8 1.00 * vpexpandb (%rax), %zmm19 {%k1}
159 # CHECK-NEXT: 1 1 1.00 vpexpandb %zmm16, %zmm19 {%k1} {z}
160 # CHECK-NEXT: 1 1 1.00 U vpexpandw %zmm16, %zmm19
161 # CHECK-NEXT: 2 8 1.00 U vpexpandw (%rax), %zmm19
162 # CHECK-NEXT: 1 1 1.00 vpexpandw %zmm16, %zmm19 {%k1}
163 # CHECK-NEXT: 2 8 1.00 * vpexpandw (%rax), %zmm19 {%k1}
164 # CHECK-NEXT: 1 1 1.00 vpexpandw %zmm16, %zmm19 {%k1} {z}
165 # CHECK-NEXT: 1 5 1.00 vpshldd $1, %zmm16, %zmm17, %zmm19
166 # CHECK-NEXT: 2 12 1.00 * vpshldd $1, (%rax), %zmm17, %zmm19
167 # CHECK-NEXT: 2 12 1.00 * vpshldd $1, (%rax){1to16}, %zmm17, %zmm19
168 # CHECK-NEXT: 1 5 1.00 vpshldd $1, %zmm16, %zmm17, %zmm19 {%k1}
169 # CHECK-NEXT: 2 12 1.00 * vpshldd $1, (%rax), %zmm17, %zmm19 {%k1}
170 # CHECK-NEXT: 2 12 1.00 * vpshldd $1, (%rax){1to16}, %zmm17, %zmm19 {%k1}
171 # CHECK-NEXT: 1 5 1.00 vpshldd $1, %zmm16, %zmm17, %zmm19 {%k1} {z}
172 # CHECK-NEXT: 2 12 1.00 * vpshldd $1, (%rax), %zmm17, %zmm19 {%k1} {z}
173 # CHECK-NEXT: 2 12 1.00 * vpshldd $1, (%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
174 # CHECK-NEXT: 1 5 1.00 vpshldq $1, %zmm16, %zmm17, %zmm19
175 # CHECK-NEXT: 2 12 1.00 * vpshldq $1, (%rax), %zmm17, %zmm19
176 # CHECK-NEXT: 2 12 1.00 * vpshldq $1, (%rax){1to8}, %zmm17, %zmm19
177 # CHECK-NEXT: 1 5 1.00 vpshldq $1, %zmm16, %zmm17, %zmm19 {%k1}
178 # CHECK-NEXT: 2 12 1.00 * vpshldq $1, (%rax), %zmm17, %zmm19 {%k1}
179 # CHECK-NEXT: 2 12 1.00 * vpshldq $1, (%rax){1to8}, %zmm17, %zmm19 {%k1}
180 # CHECK-NEXT: 1 5 1.00 vpshldq $1, %zmm16, %zmm17, %zmm19 {%k1} {z}
181 # CHECK-NEXT: 2 12 1.00 * vpshldq $1, (%rax), %zmm17, %zmm19 {%k1} {z}
182 # CHECK-NEXT: 2 12 1.00 * vpshldq $1, (%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
183 # CHECK-NEXT: 1 5 1.00 vpshldvd %zmm16, %zmm17, %zmm19
184 # CHECK-NEXT: 2 12 1.00 * vpshldvd (%rax), %zmm17, %zmm19
185 # CHECK-NEXT: 2 12 1.00 * vpshldvd (%rax){1to16}, %zmm17, %zmm19
186 # CHECK-NEXT: 1 5 1.00 vpshldvd %zmm16, %zmm17, %zmm19 {%k1}
187 # CHECK-NEXT: 2 12 1.00 * vpshldvd (%rax), %zmm17, %zmm19 {%k1}
188 # CHECK-NEXT: 2 12 1.00 * vpshldvd (%rax){1to16}, %zmm17, %zmm19 {%k1}
189 # CHECK-NEXT: 1 5 1.00 vpshldvd %zmm16, %zmm17, %zmm19 {%k1} {z}
190 # CHECK-NEXT: 2 12 1.00 * vpshldvd (%rax), %zmm17, %zmm19 {%k1} {z}
191 # CHECK-NEXT: 2 12 1.00 * vpshldvd (%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
192 # CHECK-NEXT: 1 5 1.00 vpshldvq %zmm16, %zmm17, %zmm19
193 # CHECK-NEXT: 2 12 1.00 * vpshldvq (%rax), %zmm17, %zmm19
194 # CHECK-NEXT: 2 12 1.00 * vpshldvq (%rax){1to8}, %zmm17, %zmm19
195 # CHECK-NEXT: 1 5 1.00 vpshldvq %zmm16, %zmm17, %zmm19 {%k1}
196 # CHECK-NEXT: 2 12 1.00 * vpshldvq (%rax), %zmm17, %zmm19 {%k1}
197 # CHECK-NEXT: 2 12 1.00 * vpshldvq (%rax){1to8}, %zmm17, %zmm19 {%k1}
198 # CHECK-NEXT: 1 5 1.00 vpshldvq %zmm16, %zmm17, %zmm19 {%k1} {z}
199 # CHECK-NEXT: 2 12 1.00 * vpshldvq (%rax), %zmm17, %zmm19 {%k1} {z}
200 # CHECK-NEXT: 2 12 1.00 * vpshldvq (%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
201 # CHECK-NEXT: 1 5 1.00 vpshldvw %zmm16, %zmm17, %zmm19
202 # CHECK-NEXT: 2 12 1.00 * vpshldvw (%rax), %zmm17, %zmm19
203 # CHECK-NEXT: 1 5 1.00 vpshldvw %zmm16, %zmm17, %zmm19 {%k1}
204 # CHECK-NEXT: 2 12 1.00 * vpshldvw (%rax), %zmm17, %zmm19 {%k1}
205 # CHECK-NEXT: 1 5 1.00 vpshldvw %zmm16, %zmm17, %zmm19 {%k1} {z}
206 # CHECK-NEXT: 2 12 1.00 * vpshldvw (%rax), %zmm17, %zmm19 {%k1} {z}
207 # CHECK-NEXT: 1 5 1.00 vpshldw $1, %zmm16, %zmm17, %zmm19
208 # CHECK-NEXT: 2 12 1.00 * vpshldw $1, (%rax), %zmm17, %zmm19
209 # CHECK-NEXT: 1 5 1.00 vpshldw $1, %zmm16, %zmm17, %zmm19 {%k1}
210 # CHECK-NEXT: 2 12 1.00 * vpshldw $1, (%rax), %zmm17, %zmm19 {%k1}
211 # CHECK-NEXT: 1 5 1.00 vpshldw $1, %zmm16, %zmm17, %zmm19 {%k1} {z}
212 # CHECK-NEXT: 2 12 1.00 * vpshldw $1, (%rax), %zmm17, %zmm19 {%k1} {z}
213 # CHECK-NEXT: 1 5 1.00 vpshrdd $1, %zmm16, %zmm17, %zmm19
214 # CHECK-NEXT: 2 12 1.00 * vpshrdd $1, (%rax), %zmm17, %zmm19
215 # CHECK-NEXT: 2 12 1.00 * vpshrdd $1, (%rax){1to16}, %zmm17, %zmm19
216 # CHECK-NEXT: 1 5 1.00 vpshrdd $1, %zmm16, %zmm17, %zmm19 {%k1}
217 # CHECK-NEXT: 2 12 1.00 * vpshrdd $1, (%rax), %zmm17, %zmm19 {%k1}
218 # CHECK-NEXT: 2 12 1.00 * vpshrdd $1, (%rax){1to16}, %zmm17, %zmm19 {%k1}
219 # CHECK-NEXT: 1 5 1.00 vpshrdd $1, %zmm16, %zmm17, %zmm19 {%k1} {z}
220 # CHECK-NEXT: 2 12 1.00 * vpshrdd $1, (%rax), %zmm17, %zmm19 {%k1} {z}
221 # CHECK-NEXT: 2 12 1.00 * vpshrdd $1, (%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
222 # CHECK-NEXT: 1 5 1.00 vpshrdq $1, %zmm16, %zmm17, %zmm19
223 # CHECK-NEXT: 2 12 1.00 * vpshrdq $1, (%rax), %zmm17, %zmm19
224 # CHECK-NEXT: 2 12 1.00 * vpshrdq $1, (%rax){1to8}, %zmm17, %zmm19
225 # CHECK-NEXT: 1 5 1.00 vpshrdq $1, %zmm16, %zmm17, %zmm19 {%k1}
226 # CHECK-NEXT: 2 12 1.00 * vpshrdq $1, (%rax), %zmm17, %zmm19 {%k1}
227 # CHECK-NEXT: 2 12 1.00 * vpshrdq $1, (%rax){1to8}, %zmm17, %zmm19 {%k1}
228 # CHECK-NEXT: 1 5 1.00 vpshrdq $1, %zmm16, %zmm17, %zmm19 {%k1} {z}
229 # CHECK-NEXT: 2 12 1.00 * vpshrdq $1, (%rax), %zmm17, %zmm19 {%k1} {z}
230 # CHECK-NEXT: 2 12 1.00 * vpshrdq $1, (%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
231 # CHECK-NEXT: 1 5 1.00 vpshrdvd %zmm16, %zmm17, %zmm19
232 # CHECK-NEXT: 2 12 1.00 * vpshrdvd (%rax), %zmm17, %zmm19
233 # CHECK-NEXT: 2 12 1.00 * vpshrdvd (%rax){1to16}, %zmm17, %zmm19
234 # CHECK-NEXT: 1 5 1.00 vpshrdvd %zmm16, %zmm17, %zmm19 {%k1}
235 # CHECK-NEXT: 2 12 1.00 * vpshrdvd (%rax), %zmm17, %zmm19 {%k1}
236 # CHECK-NEXT: 2 12 1.00 * vpshrdvd (%rax){1to16}, %zmm17, %zmm19 {%k1}
237 # CHECK-NEXT: 1 5 1.00 vpshrdvd %zmm16, %zmm17, %zmm19 {%k1} {z}
238 # CHECK-NEXT: 2 12 1.00 * vpshrdvd (%rax), %zmm17, %zmm19 {%k1} {z}
239 # CHECK-NEXT: 2 12 1.00 * vpshrdvd (%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
240 # CHECK-NEXT: 1 5 1.00 vpshrdvq %zmm16, %zmm17, %zmm19
241 # CHECK-NEXT: 2 12 1.00 * vpshrdvq (%rax), %zmm17, %zmm19
242 # CHECK-NEXT: 2 12 1.00 * vpshrdvq (%rax){1to8}, %zmm17, %zmm19
243 # CHECK-NEXT: 1 5 1.00 vpshrdvq %zmm16, %zmm17, %zmm19 {%k1}
244 # CHECK-NEXT: 2 12 1.00 * vpshrdvq (%rax), %zmm17, %zmm19 {%k1}
245 # CHECK-NEXT: 2 12 1.00 * vpshrdvq (%rax){1to8}, %zmm17, %zmm19 {%k1}
246 # CHECK-NEXT: 1 5 1.00 vpshrdvq %zmm16, %zmm17, %zmm19 {%k1} {z}
247 # CHECK-NEXT: 2 12 1.00 * vpshrdvq (%rax), %zmm17, %zmm19 {%k1} {z}
248 # CHECK-NEXT: 2 12 1.00 * vpshrdvq (%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
249 # CHECK-NEXT: 1 5 1.00 vpshrdvw %zmm16, %zmm17, %zmm19
250 # CHECK-NEXT: 2 12 1.00 * vpshrdvw (%rax), %zmm17, %zmm19
251 # CHECK-NEXT: 1 5 1.00 vpshrdvw %zmm16, %zmm17, %zmm19 {%k1}
252 # CHECK-NEXT: 2 12 1.00 * vpshrdvw (%rax), %zmm17, %zmm19 {%k1}
253 # CHECK-NEXT: 1 5 1.00 vpshrdvw %zmm16, %zmm17, %zmm19 {%k1} {z}
254 # CHECK-NEXT: 2 12 1.00 * vpshrdvw (%rax), %zmm17, %zmm19 {%k1} {z}
255 # CHECK-NEXT: 1 5 1.00 vpshrdw $1, %zmm16, %zmm17, %zmm19
256 # CHECK-NEXT: 2 12 1.00 * vpshrdw $1, (%rax), %zmm17, %zmm19
257 # CHECK-NEXT: 1 5 1.00 vpshrdw $1, %zmm16, %zmm17, %zmm19 {%k1}
258 # CHECK-NEXT: 2 12 1.00 * vpshrdw $1, (%rax), %zmm17, %zmm19 {%k1}
259 # CHECK-NEXT: 1 5 1.00 vpshrdw $1, %zmm16, %zmm17, %zmm19 {%k1} {z}
260 # CHECK-NEXT: 2 12 1.00 * vpshrdw $1, (%rax), %zmm17, %zmm19 {%k1} {z}
262 # CHECK: Resources:
263 # CHECK-NEXT: [0] - SBDivider
264 # CHECK-NEXT: [1] - SBFPDivider
265 # CHECK-NEXT: [2] - SBPort0
266 # CHECK-NEXT: [3] - SBPort1
267 # CHECK-NEXT: [4] - SBPort4
268 # CHECK-NEXT: [5] - SBPort5
269 # CHECK-NEXT: [6.0] - SBPort23
270 # CHECK-NEXT: [6.1] - SBPort23
272 # CHECK: Resource pressure per iteration:
273 # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1]
274 # CHECK-NEXT: - - 96.00 - - 20.00 34.00 34.00
276 # CHECK: Resource pressure by instruction:
277 # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions:
278 # CHECK-NEXT: - - - - - 1.00 - - vpcompressb %zmm16, %zmm19
279 # CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpcompressb %zmm16, (%rax)
280 # CHECK-NEXT: - - - - - 1.00 - - vpcompressb %zmm16, %zmm19 {%k1}
281 # CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpcompressb %zmm16, (%rax) {%k1}
282 # CHECK-NEXT: - - - - - 1.00 - - vpcompressb %zmm16, %zmm19 {%k1} {z}
283 # CHECK-NEXT: - - - - - 1.00 - - vpcompressw %zmm16, %zmm19
284 # CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpcompressw %zmm16, (%rax)
285 # CHECK-NEXT: - - - - - 1.00 - - vpcompressw %zmm16, %zmm19 {%k1}
286 # CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpcompressw %zmm16, (%rax) {%k1}
287 # CHECK-NEXT: - - - - - 1.00 - - vpcompressw %zmm16, %zmm19 {%k1} {z}
288 # CHECK-NEXT: - - - - - 1.00 - - vpexpandb %zmm16, %zmm19
289 # CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpexpandb (%rax), %zmm19
290 # CHECK-NEXT: - - - - - 1.00 - - vpexpandb %zmm16, %zmm19 {%k1}
291 # CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpexpandb (%rax), %zmm19 {%k1}
292 # CHECK-NEXT: - - - - - 1.00 - - vpexpandb %zmm16, %zmm19 {%k1} {z}
293 # CHECK-NEXT: - - - - - 1.00 - - vpexpandw %zmm16, %zmm19
294 # CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpexpandw (%rax), %zmm19
295 # CHECK-NEXT: - - - - - 1.00 - - vpexpandw %zmm16, %zmm19 {%k1}
296 # CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpexpandw (%rax), %zmm19 {%k1}
297 # CHECK-NEXT: - - - - - 1.00 - - vpexpandw %zmm16, %zmm19 {%k1} {z}
298 # CHECK-NEXT: - - 1.00 - - - - - vpshldd $1, %zmm16, %zmm17, %zmm19
299 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldd $1, (%rax), %zmm17, %zmm19
300 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldd $1, (%rax){1to16}, %zmm17, %zmm19
301 # CHECK-NEXT: - - 1.00 - - - - - vpshldd $1, %zmm16, %zmm17, %zmm19 {%k1}
302 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldd $1, (%rax), %zmm17, %zmm19 {%k1}
303 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldd $1, (%rax){1to16}, %zmm17, %zmm19 {%k1}
304 # CHECK-NEXT: - - 1.00 - - - - - vpshldd $1, %zmm16, %zmm17, %zmm19 {%k1} {z}
305 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldd $1, (%rax), %zmm17, %zmm19 {%k1} {z}
306 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldd $1, (%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
307 # CHECK-NEXT: - - 1.00 - - - - - vpshldq $1, %zmm16, %zmm17, %zmm19
308 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldq $1, (%rax), %zmm17, %zmm19
309 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldq $1, (%rax){1to8}, %zmm17, %zmm19
310 # CHECK-NEXT: - - 1.00 - - - - - vpshldq $1, %zmm16, %zmm17, %zmm19 {%k1}
311 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldq $1, (%rax), %zmm17, %zmm19 {%k1}
312 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldq $1, (%rax){1to8}, %zmm17, %zmm19 {%k1}
313 # CHECK-NEXT: - - 1.00 - - - - - vpshldq $1, %zmm16, %zmm17, %zmm19 {%k1} {z}
314 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldq $1, (%rax), %zmm17, %zmm19 {%k1} {z}
315 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldq $1, (%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
316 # CHECK-NEXT: - - 1.00 - - - - - vpshldvd %zmm16, %zmm17, %zmm19
317 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldvd (%rax), %zmm17, %zmm19
318 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldvd (%rax){1to16}, %zmm17, %zmm19
319 # CHECK-NEXT: - - 1.00 - - - - - vpshldvd %zmm16, %zmm17, %zmm19 {%k1}
320 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldvd (%rax), %zmm17, %zmm19 {%k1}
321 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldvd (%rax){1to16}, %zmm17, %zmm19 {%k1}
322 # CHECK-NEXT: - - 1.00 - - - - - vpshldvd %zmm16, %zmm17, %zmm19 {%k1} {z}
323 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldvd (%rax), %zmm17, %zmm19 {%k1} {z}
324 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldvd (%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
325 # CHECK-NEXT: - - 1.00 - - - - - vpshldvq %zmm16, %zmm17, %zmm19
326 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldvq (%rax), %zmm17, %zmm19
327 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldvq (%rax){1to8}, %zmm17, %zmm19
328 # CHECK-NEXT: - - 1.00 - - - - - vpshldvq %zmm16, %zmm17, %zmm19 {%k1}
329 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldvq (%rax), %zmm17, %zmm19 {%k1}
330 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldvq (%rax){1to8}, %zmm17, %zmm19 {%k1}
331 # CHECK-NEXT: - - 1.00 - - - - - vpshldvq %zmm16, %zmm17, %zmm19 {%k1} {z}
332 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldvq (%rax), %zmm17, %zmm19 {%k1} {z}
333 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldvq (%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
334 # CHECK-NEXT: - - 1.00 - - - - - vpshldvw %zmm16, %zmm17, %zmm19
335 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldvw (%rax), %zmm17, %zmm19
336 # CHECK-NEXT: - - 1.00 - - - - - vpshldvw %zmm16, %zmm17, %zmm19 {%k1}
337 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldvw (%rax), %zmm17, %zmm19 {%k1}
338 # CHECK-NEXT: - - 1.00 - - - - - vpshldvw %zmm16, %zmm17, %zmm19 {%k1} {z}
339 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldvw (%rax), %zmm17, %zmm19 {%k1} {z}
340 # CHECK-NEXT: - - 1.00 - - - - - vpshldw $1, %zmm16, %zmm17, %zmm19
341 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldw $1, (%rax), %zmm17, %zmm19
342 # CHECK-NEXT: - - 1.00 - - - - - vpshldw $1, %zmm16, %zmm17, %zmm19 {%k1}
343 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldw $1, (%rax), %zmm17, %zmm19 {%k1}
344 # CHECK-NEXT: - - 1.00 - - - - - vpshldw $1, %zmm16, %zmm17, %zmm19 {%k1} {z}
345 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshldw $1, (%rax), %zmm17, %zmm19 {%k1} {z}
346 # CHECK-NEXT: - - 1.00 - - - - - vpshrdd $1, %zmm16, %zmm17, %zmm19
347 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdd $1, (%rax), %zmm17, %zmm19
348 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdd $1, (%rax){1to16}, %zmm17, %zmm19
349 # CHECK-NEXT: - - 1.00 - - - - - vpshrdd $1, %zmm16, %zmm17, %zmm19 {%k1}
350 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdd $1, (%rax), %zmm17, %zmm19 {%k1}
351 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdd $1, (%rax){1to16}, %zmm17, %zmm19 {%k1}
352 # CHECK-NEXT: - - 1.00 - - - - - vpshrdd $1, %zmm16, %zmm17, %zmm19 {%k1} {z}
353 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdd $1, (%rax), %zmm17, %zmm19 {%k1} {z}
354 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdd $1, (%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
355 # CHECK-NEXT: - - 1.00 - - - - - vpshrdq $1, %zmm16, %zmm17, %zmm19
356 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdq $1, (%rax), %zmm17, %zmm19
357 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdq $1, (%rax){1to8}, %zmm17, %zmm19
358 # CHECK-NEXT: - - 1.00 - - - - - vpshrdq $1, %zmm16, %zmm17, %zmm19 {%k1}
359 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdq $1, (%rax), %zmm17, %zmm19 {%k1}
360 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdq $1, (%rax){1to8}, %zmm17, %zmm19 {%k1}
361 # CHECK-NEXT: - - 1.00 - - - - - vpshrdq $1, %zmm16, %zmm17, %zmm19 {%k1} {z}
362 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdq $1, (%rax), %zmm17, %zmm19 {%k1} {z}
363 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdq $1, (%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
364 # CHECK-NEXT: - - 1.00 - - - - - vpshrdvd %zmm16, %zmm17, %zmm19
365 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdvd (%rax), %zmm17, %zmm19
366 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdvd (%rax){1to16}, %zmm17, %zmm19
367 # CHECK-NEXT: - - 1.00 - - - - - vpshrdvd %zmm16, %zmm17, %zmm19 {%k1}
368 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdvd (%rax), %zmm17, %zmm19 {%k1}
369 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdvd (%rax){1to16}, %zmm17, %zmm19 {%k1}
370 # CHECK-NEXT: - - 1.00 - - - - - vpshrdvd %zmm16, %zmm17, %zmm19 {%k1} {z}
371 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdvd (%rax), %zmm17, %zmm19 {%k1} {z}
372 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdvd (%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
373 # CHECK-NEXT: - - 1.00 - - - - - vpshrdvq %zmm16, %zmm17, %zmm19
374 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdvq (%rax), %zmm17, %zmm19
375 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdvq (%rax){1to8}, %zmm17, %zmm19
376 # CHECK-NEXT: - - 1.00 - - - - - vpshrdvq %zmm16, %zmm17, %zmm19 {%k1}
377 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdvq (%rax), %zmm17, %zmm19 {%k1}
378 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdvq (%rax){1to8}, %zmm17, %zmm19 {%k1}
379 # CHECK-NEXT: - - 1.00 - - - - - vpshrdvq %zmm16, %zmm17, %zmm19 {%k1} {z}
380 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdvq (%rax), %zmm17, %zmm19 {%k1} {z}
381 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdvq (%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
382 # CHECK-NEXT: - - 1.00 - - - - - vpshrdvw %zmm16, %zmm17, %zmm19
383 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdvw (%rax), %zmm17, %zmm19
384 # CHECK-NEXT: - - 1.00 - - - - - vpshrdvw %zmm16, %zmm17, %zmm19 {%k1}
385 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdvw (%rax), %zmm17, %zmm19 {%k1}
386 # CHECK-NEXT: - - 1.00 - - - - - vpshrdvw %zmm16, %zmm17, %zmm19 {%k1} {z}
387 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdvw (%rax), %zmm17, %zmm19 {%k1} {z}
388 # CHECK-NEXT: - - 1.00 - - - - - vpshrdw $1, %zmm16, %zmm17, %zmm19
389 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdw $1, (%rax), %zmm17, %zmm19
390 # CHECK-NEXT: - - 1.00 - - - - - vpshrdw $1, %zmm16, %zmm17, %zmm19 {%k1}
391 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdw $1, (%rax), %zmm17, %zmm19 {%k1}
392 # CHECK-NEXT: - - 1.00 - - - - - vpshrdw $1, %zmm16, %zmm17, %zmm19 {%k1} {z}
393 # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vpshrdw $1, (%rax), %zmm17, %zmm19 {%k1} {z}