[InstCombine] Signed saturation patterns
[llvm-core.git] / test / tools / llvm-mca / X86 / Broadwell / resources-sse41.s
bloba2899b43711cf0ab89049009e2772439a9f81560
1 # NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
2 # RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=broadwell -instruction-tables < %s | FileCheck %s
4 blendpd $11, %xmm0, %xmm2
5 blendpd $11, (%rax), %xmm2
7 blendps $11, %xmm0, %xmm2
8 blendps $11, (%rax), %xmm2
10 blendvpd %xmm0, %xmm2
11 blendvpd (%rax), %xmm2
13 blendvps %xmm0, %xmm2
14 blendvps (%rax), %xmm2
16 dppd $22, %xmm0, %xmm2
17 dppd $22, (%rax), %xmm2
19 dpps $22, %xmm0, %xmm2
20 dpps $22, (%rax), %xmm2
22 extractps $1, %xmm0, %rcx
23 extractps $1, %xmm0, (%rax)
25 insertps $1, %xmm0, %xmm2
26 insertps $1, (%rax), %xmm2
28 movntdqa (%rax), %xmm2
30 mpsadbw $1, %xmm0, %xmm2
31 mpsadbw $1, (%rax), %xmm2
33 packusdw %xmm0, %xmm2
34 packusdw (%rax), %xmm2
36 pblendvb %xmm0, %xmm2
37 pblendvb (%rax), %xmm2
39 pblendw $11, %xmm0, %xmm2
40 pblendw $11, (%rax), %xmm2
42 pcmpeqq %xmm0, %xmm2
43 pcmpeqq (%rax), %xmm2
45 pextrb $1, %xmm0, %ecx
46 pextrb $1, %xmm0, (%rax)
48 pextrd $1, %xmm0, %ecx
49 pextrd $1, %xmm0, (%rax)
51 pextrq $1, %xmm0, %rcx
52 pextrq $1, %xmm0, (%rax)
54 pextrw $1, %xmm0, (%rax)
56 phminposuw %xmm0, %xmm2
57 phminposuw (%rax), %xmm2
59 pinsrb $1, %eax, %xmm1
60 pinsrb $1, (%rax), %xmm1
62 pinsrd $1, %eax, %xmm1
63 pinsrd $1, (%rax), %xmm1
65 pinsrq $1, %rax, %xmm1
66 pinsrq $1, (%rax), %xmm1
68 pmaxsb %xmm0, %xmm2
69 pmaxsb (%rax), %xmm2
71 pmaxsd %xmm0, %xmm2
72 pmaxsd (%rax), %xmm2
74 pmaxud %xmm0, %xmm2
75 pmaxud (%rax), %xmm2
77 pmaxuw %xmm0, %xmm2
78 pmaxuw (%rax), %xmm2
80 pminsb %xmm0, %xmm2
81 pminsb (%rax), %xmm2
83 pminsd %xmm0, %xmm2
84 pminsd (%rax), %xmm2
86 pminud %xmm0, %xmm2
87 pminud (%rax), %xmm2
89 pminuw %xmm0, %xmm2
90 pminuw (%rax), %xmm2
92 pmovsxbd %xmm0, %xmm2
93 pmovsxbd (%rax), %xmm2
95 pmovsxbq %xmm0, %xmm2
96 pmovsxbq (%rax), %xmm2
98 pmovsxbw %xmm0, %xmm2
99 pmovsxbw (%rax), %xmm2
101 pmovsxdq %xmm0, %xmm2
102 pmovsxdq (%rax), %xmm2
104 pmovsxwd %xmm0, %xmm2
105 pmovsxwd (%rax), %xmm2
107 pmovsxwq %xmm0, %xmm2
108 pmovsxwq (%rax), %xmm2
110 pmovzxbd %xmm0, %xmm2
111 pmovzxbd (%rax), %xmm2
113 pmovzxbq %xmm0, %xmm2
114 pmovzxbq (%rax), %xmm2
116 pmovzxbw %xmm0, %xmm2
117 pmovzxbw (%rax), %xmm2
119 pmovzxdq %xmm0, %xmm2
120 pmovzxdq (%rax), %xmm2
122 pmovzxwd %xmm0, %xmm2
123 pmovzxwd (%rax), %xmm2
125 pmovzxwq %xmm0, %xmm2
126 pmovzxwq (%rax), %xmm2
128 pmuldq %xmm0, %xmm2
129 pmuldq (%rax), %xmm2
131 pmulld %xmm0, %xmm2
132 pmulld (%rax), %xmm2
134 ptest %xmm0, %xmm1
135 ptest (%rax), %xmm1
137 roundpd $1, %xmm0, %xmm2
138 roundpd $1, (%rax), %xmm2
140 roundps $1, %xmm0, %xmm2
141 roundps $1, (%rax), %xmm2
143 roundsd $1, %xmm0, %xmm2
144 roundsd $1, (%rax), %xmm2
146 roundss $1, %xmm0, %xmm2
147 roundss $1, (%rax), %xmm2
149 # CHECK: Instruction Info:
150 # CHECK-NEXT: [1]: #uOps
151 # CHECK-NEXT: [2]: Latency
152 # CHECK-NEXT: [3]: RThroughput
153 # CHECK-NEXT: [4]: MayLoad
154 # CHECK-NEXT: [5]: MayStore
155 # CHECK-NEXT: [6]: HasSideEffects (U)
157 # CHECK: [1] [2] [3] [4] [5] [6] Instructions:
158 # CHECK-NEXT: 1 1 0.33 blendpd $11, %xmm0, %xmm2
159 # CHECK-NEXT: 2 6 0.50 * blendpd $11, (%rax), %xmm2
160 # CHECK-NEXT: 1 1 0.33 blendps $11, %xmm0, %xmm2
161 # CHECK-NEXT: 2 6 0.50 * blendps $11, (%rax), %xmm2
162 # CHECK-NEXT: 2 2 2.00 blendvpd %xmm0, %xmm0, %xmm2
163 # CHECK-NEXT: 3 7 2.00 * blendvpd %xmm0, (%rax), %xmm2
164 # CHECK-NEXT: 2 2 2.00 blendvps %xmm0, %xmm0, %xmm2
165 # CHECK-NEXT: 3 7 2.00 * blendvps %xmm0, (%rax), %xmm2
166 # CHECK-NEXT: 3 9 1.00 dppd $22, %xmm0, %xmm2
167 # CHECK-NEXT: 4 14 1.00 * dppd $22, (%rax), %xmm2
168 # CHECK-NEXT: 4 14 2.00 dpps $22, %xmm0, %xmm2
169 # CHECK-NEXT: 5 19 2.00 * dpps $22, (%rax), %xmm2
170 # CHECK-NEXT: 2 2 1.00 extractps $1, %xmm0, %ecx
171 # CHECK-NEXT: 3 2 1.00 * extractps $1, %xmm0, (%rax)
172 # CHECK-NEXT: 1 1 1.00 insertps $1, %xmm0, %xmm2
173 # CHECK-NEXT: 2 6 1.00 * insertps $1, (%rax), %xmm2
174 # CHECK-NEXT: 1 5 0.50 * movntdqa (%rax), %xmm2
175 # CHECK-NEXT: 3 7 2.00 mpsadbw $1, %xmm0, %xmm2
176 # CHECK-NEXT: 4 12 2.00 * mpsadbw $1, (%rax), %xmm2
177 # CHECK-NEXT: 1 1 1.00 packusdw %xmm0, %xmm2
178 # CHECK-NEXT: 2 6 1.00 * packusdw (%rax), %xmm2
179 # CHECK-NEXT: 2 2 2.00 pblendvb %xmm0, %xmm0, %xmm2
180 # CHECK-NEXT: 3 7 2.00 * pblendvb %xmm0, (%rax), %xmm2
181 # CHECK-NEXT: 1 1 1.00 pblendw $11, %xmm0, %xmm2
182 # CHECK-NEXT: 2 6 1.00 * pblendw $11, (%rax), %xmm2
183 # CHECK-NEXT: 1 1 0.50 pcmpeqq %xmm0, %xmm2
184 # CHECK-NEXT: 2 6 0.50 * pcmpeqq (%rax), %xmm2
185 # CHECK-NEXT: 2 2 1.00 pextrb $1, %xmm0, %ecx
186 # CHECK-NEXT: 3 2 1.00 * pextrb $1, %xmm0, (%rax)
187 # CHECK-NEXT: 2 2 1.00 pextrd $1, %xmm0, %ecx
188 # CHECK-NEXT: 3 2 1.00 * pextrd $1, %xmm0, (%rax)
189 # CHECK-NEXT: 2 2 1.00 pextrq $1, %xmm0, %rcx
190 # CHECK-NEXT: 3 2 1.00 * pextrq $1, %xmm0, (%rax)
191 # CHECK-NEXT: 3 2 1.00 * pextrw $1, %xmm0, (%rax)
192 # CHECK-NEXT: 1 5 1.00 phminposuw %xmm0, %xmm2
193 # CHECK-NEXT: 2 10 1.00 * phminposuw (%rax), %xmm2
194 # CHECK-NEXT: 2 2 2.00 pinsrb $1, %eax, %xmm1
195 # CHECK-NEXT: 2 6 1.00 * pinsrb $1, (%rax), %xmm1
196 # CHECK-NEXT: 2 2 2.00 pinsrd $1, %eax, %xmm1
197 # CHECK-NEXT: 2 6 1.00 * pinsrd $1, (%rax), %xmm1
198 # CHECK-NEXT: 2 2 2.00 pinsrq $1, %rax, %xmm1
199 # CHECK-NEXT: 2 6 1.00 * pinsrq $1, (%rax), %xmm1
200 # CHECK-NEXT: 1 1 0.50 pmaxsb %xmm0, %xmm2
201 # CHECK-NEXT: 2 6 0.50 * pmaxsb (%rax), %xmm2
202 # CHECK-NEXT: 1 1 0.50 pmaxsd %xmm0, %xmm2
203 # CHECK-NEXT: 2 6 0.50 * pmaxsd (%rax), %xmm2
204 # CHECK-NEXT: 1 1 0.50 pmaxud %xmm0, %xmm2
205 # CHECK-NEXT: 2 6 0.50 * pmaxud (%rax), %xmm2
206 # CHECK-NEXT: 1 1 0.50 pmaxuw %xmm0, %xmm2
207 # CHECK-NEXT: 2 6 0.50 * pmaxuw (%rax), %xmm2
208 # CHECK-NEXT: 1 1 0.50 pminsb %xmm0, %xmm2
209 # CHECK-NEXT: 2 6 0.50 * pminsb (%rax), %xmm2
210 # CHECK-NEXT: 1 1 0.50 pminsd %xmm0, %xmm2
211 # CHECK-NEXT: 2 6 0.50 * pminsd (%rax), %xmm2
212 # CHECK-NEXT: 1 1 0.50 pminud %xmm0, %xmm2
213 # CHECK-NEXT: 2 6 0.50 * pminud (%rax), %xmm2
214 # CHECK-NEXT: 1 1 0.50 pminuw %xmm0, %xmm2
215 # CHECK-NEXT: 2 6 0.50 * pminuw (%rax), %xmm2
216 # CHECK-NEXT: 1 1 1.00 pmovsxbd %xmm0, %xmm2
217 # CHECK-NEXT: 2 6 1.00 * pmovsxbd (%rax), %xmm2
218 # CHECK-NEXT: 1 1 1.00 pmovsxbq %xmm0, %xmm2
219 # CHECK-NEXT: 2 6 1.00 * pmovsxbq (%rax), %xmm2
220 # CHECK-NEXT: 1 1 1.00 pmovsxbw %xmm0, %xmm2
221 # CHECK-NEXT: 2 6 1.00 * pmovsxbw (%rax), %xmm2
222 # CHECK-NEXT: 1 1 1.00 pmovsxdq %xmm0, %xmm2
223 # CHECK-NEXT: 2 6 1.00 * pmovsxdq (%rax), %xmm2
224 # CHECK-NEXT: 1 1 1.00 pmovsxwd %xmm0, %xmm2
225 # CHECK-NEXT: 2 6 1.00 * pmovsxwd (%rax), %xmm2
226 # CHECK-NEXT: 1 1 1.00 pmovsxwq %xmm0, %xmm2
227 # CHECK-NEXT: 2 6 1.00 * pmovsxwq (%rax), %xmm2
228 # CHECK-NEXT: 1 1 1.00 pmovzxbd %xmm0, %xmm2
229 # CHECK-NEXT: 2 6 1.00 * pmovzxbd (%rax), %xmm2
230 # CHECK-NEXT: 1 1 1.00 pmovzxbq %xmm0, %xmm2
231 # CHECK-NEXT: 2 6 1.00 * pmovzxbq (%rax), %xmm2
232 # CHECK-NEXT: 1 1 1.00 pmovzxbw %xmm0, %xmm2
233 # CHECK-NEXT: 2 6 1.00 * pmovzxbw (%rax), %xmm2
234 # CHECK-NEXT: 1 1 1.00 pmovzxdq %xmm0, %xmm2
235 # CHECK-NEXT: 2 6 1.00 * pmovzxdq (%rax), %xmm2
236 # CHECK-NEXT: 1 1 1.00 pmovzxwd %xmm0, %xmm2
237 # CHECK-NEXT: 2 6 1.00 * pmovzxwd (%rax), %xmm2
238 # CHECK-NEXT: 1 1 1.00 pmovzxwq %xmm0, %xmm2
239 # CHECK-NEXT: 2 6 1.00 * pmovzxwq (%rax), %xmm2
240 # CHECK-NEXT: 1 5 1.00 pmuldq %xmm0, %xmm2
241 # CHECK-NEXT: 2 10 1.00 * pmuldq (%rax), %xmm2
242 # CHECK-NEXT: 2 10 2.00 pmulld %xmm0, %xmm2
243 # CHECK-NEXT: 3 15 2.00 * pmulld (%rax), %xmm2
244 # CHECK-NEXT: 2 2 1.00 ptest %xmm0, %xmm1
245 # CHECK-NEXT: 3 7 1.00 * ptest (%rax), %xmm1
246 # CHECK-NEXT: 1 6 0.50 roundpd $1, %xmm0, %xmm2
247 # CHECK-NEXT: 3 11 2.00 * roundpd $1, (%rax), %xmm2
248 # CHECK-NEXT: 1 6 0.50 roundps $1, %xmm0, %xmm2
249 # CHECK-NEXT: 3 11 2.00 * roundps $1, (%rax), %xmm2
250 # CHECK-NEXT: 1 6 0.50 roundsd $1, %xmm0, %xmm2
251 # CHECK-NEXT: 3 11 2.00 * roundsd $1, (%rax), %xmm2
252 # CHECK-NEXT: 1 6 0.50 roundss $1, %xmm0, %xmm2
253 # CHECK-NEXT: 3 11 2.00 * roundss $1, (%rax), %xmm2
255 # CHECK: Resources:
256 # CHECK-NEXT: [0] - BWDivider
257 # CHECK-NEXT: [1] - BWFPDivider
258 # CHECK-NEXT: [2] - BWPort0
259 # CHECK-NEXT: [3] - BWPort1
260 # CHECK-NEXT: [4] - BWPort2
261 # CHECK-NEXT: [5] - BWPort3
262 # CHECK-NEXT: [6] - BWPort4
263 # CHECK-NEXT: [7] - BWPort5
264 # CHECK-NEXT: [8] - BWPort6
265 # CHECK-NEXT: [9] - BWPort7
267 # CHECK: Resource pressure per iteration:
268 # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9]
269 # CHECK-NEXT: - - 23.33 22.33 25.67 25.67 5.00 80.33 - 1.67
271 # CHECK: Resource pressure by instruction:
272 # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions:
273 # CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - blendpd $11, %xmm0, %xmm2
274 # CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - blendpd $11, (%rax), %xmm2
275 # CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - blendps $11, %xmm0, %xmm2
276 # CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - blendps $11, (%rax), %xmm2
277 # CHECK-NEXT: - - - - - - - 2.00 - - blendvpd %xmm0, %xmm0, %xmm2
278 # CHECK-NEXT: - - - - 0.50 0.50 - 2.00 - - blendvpd %xmm0, (%rax), %xmm2
279 # CHECK-NEXT: - - - - - - - 2.00 - - blendvps %xmm0, %xmm0, %xmm2
280 # CHECK-NEXT: - - - - 0.50 0.50 - 2.00 - - blendvps %xmm0, (%rax), %xmm2
281 # CHECK-NEXT: - - 1.00 1.00 - - - 1.00 - - dppd $22, %xmm0, %xmm2
282 # CHECK-NEXT: - - 1.00 1.00 0.50 0.50 - 1.00 - - dppd $22, (%rax), %xmm2
283 # CHECK-NEXT: - - 2.00 1.00 - - - 1.00 - - dpps $22, %xmm0, %xmm2
284 # CHECK-NEXT: - - 2.00 1.00 0.50 0.50 - 1.00 - - dpps $22, (%rax), %xmm2
285 # CHECK-NEXT: - - 1.00 - - - - 1.00 - - extractps $1, %xmm0, %ecx
286 # CHECK-NEXT: - - - - 0.33 0.33 1.00 1.00 - 0.33 extractps $1, %xmm0, (%rax)
287 # CHECK-NEXT: - - - - - - - 1.00 - - insertps $1, %xmm0, %xmm2
288 # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - insertps $1, (%rax), %xmm2
289 # CHECK-NEXT: - - - - 0.50 0.50 - - - - movntdqa (%rax), %xmm2
290 # CHECK-NEXT: - - 1.00 - - - - 2.00 - - mpsadbw $1, %xmm0, %xmm2
291 # CHECK-NEXT: - - 1.00 - 0.50 0.50 - 2.00 - - mpsadbw $1, (%rax), %xmm2
292 # CHECK-NEXT: - - - - - - - 1.00 - - packusdw %xmm0, %xmm2
293 # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - packusdw (%rax), %xmm2
294 # CHECK-NEXT: - - - - - - - 2.00 - - pblendvb %xmm0, %xmm0, %xmm2
295 # CHECK-NEXT: - - - - 0.50 0.50 - 2.00 - - pblendvb %xmm0, (%rax), %xmm2
296 # CHECK-NEXT: - - - - - - - 1.00 - - pblendw $11, %xmm0, %xmm2
297 # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - pblendw $11, (%rax), %xmm2
298 # CHECK-NEXT: - - - 0.50 - - - 0.50 - - pcmpeqq %xmm0, %xmm2
299 # CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - pcmpeqq (%rax), %xmm2
300 # CHECK-NEXT: - - 1.00 - - - - 1.00 - - pextrb $1, %xmm0, %ecx
301 # CHECK-NEXT: - - - - 0.33 0.33 1.00 1.00 - 0.33 pextrb $1, %xmm0, (%rax)
302 # CHECK-NEXT: - - 1.00 - - - - 1.00 - - pextrd $1, %xmm0, %ecx
303 # CHECK-NEXT: - - - - 0.33 0.33 1.00 1.00 - 0.33 pextrd $1, %xmm0, (%rax)
304 # CHECK-NEXT: - - 1.00 - - - - 1.00 - - pextrq $1, %xmm0, %rcx
305 # CHECK-NEXT: - - - - 0.33 0.33 1.00 1.00 - 0.33 pextrq $1, %xmm0, (%rax)
306 # CHECK-NEXT: - - - - 0.33 0.33 1.00 1.00 - 0.33 pextrw $1, %xmm0, (%rax)
307 # CHECK-NEXT: - - 1.00 - - - - - - - phminposuw %xmm0, %xmm2
308 # CHECK-NEXT: - - 1.00 - 0.50 0.50 - - - - phminposuw (%rax), %xmm2
309 # CHECK-NEXT: - - - - - - - 2.00 - - pinsrb $1, %eax, %xmm1
310 # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - pinsrb $1, (%rax), %xmm1
311 # CHECK-NEXT: - - - - - - - 2.00 - - pinsrd $1, %eax, %xmm1
312 # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - pinsrd $1, (%rax), %xmm1
313 # CHECK-NEXT: - - - - - - - 2.00 - - pinsrq $1, %rax, %xmm1
314 # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - pinsrq $1, (%rax), %xmm1
315 # CHECK-NEXT: - - - 0.50 - - - 0.50 - - pmaxsb %xmm0, %xmm2
316 # CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - pmaxsb (%rax), %xmm2
317 # CHECK-NEXT: - - - 0.50 - - - 0.50 - - pmaxsd %xmm0, %xmm2
318 # CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - pmaxsd (%rax), %xmm2
319 # CHECK-NEXT: - - - 0.50 - - - 0.50 - - pmaxud %xmm0, %xmm2
320 # CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - pmaxud (%rax), %xmm2
321 # CHECK-NEXT: - - - 0.50 - - - 0.50 - - pmaxuw %xmm0, %xmm2
322 # CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - pmaxuw (%rax), %xmm2
323 # CHECK-NEXT: - - - 0.50 - - - 0.50 - - pminsb %xmm0, %xmm2
324 # CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - pminsb (%rax), %xmm2
325 # CHECK-NEXT: - - - 0.50 - - - 0.50 - - pminsd %xmm0, %xmm2
326 # CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - pminsd (%rax), %xmm2
327 # CHECK-NEXT: - - - 0.50 - - - 0.50 - - pminud %xmm0, %xmm2
328 # CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - pminud (%rax), %xmm2
329 # CHECK-NEXT: - - - 0.50 - - - 0.50 - - pminuw %xmm0, %xmm2
330 # CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - pminuw (%rax), %xmm2
331 # CHECK-NEXT: - - - - - - - 1.00 - - pmovsxbd %xmm0, %xmm2
332 # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - pmovsxbd (%rax), %xmm2
333 # CHECK-NEXT: - - - - - - - 1.00 - - pmovsxbq %xmm0, %xmm2
334 # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - pmovsxbq (%rax), %xmm2
335 # CHECK-NEXT: - - - - - - - 1.00 - - pmovsxbw %xmm0, %xmm2
336 # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - pmovsxbw (%rax), %xmm2
337 # CHECK-NEXT: - - - - - - - 1.00 - - pmovsxdq %xmm0, %xmm2
338 # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - pmovsxdq (%rax), %xmm2
339 # CHECK-NEXT: - - - - - - - 1.00 - - pmovsxwd %xmm0, %xmm2
340 # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - pmovsxwd (%rax), %xmm2
341 # CHECK-NEXT: - - - - - - - 1.00 - - pmovsxwq %xmm0, %xmm2
342 # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - pmovsxwq (%rax), %xmm2
343 # CHECK-NEXT: - - - - - - - 1.00 - - pmovzxbd %xmm0, %xmm2
344 # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - pmovzxbd (%rax), %xmm2
345 # CHECK-NEXT: - - - - - - - 1.00 - - pmovzxbq %xmm0, %xmm2
346 # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - pmovzxbq (%rax), %xmm2
347 # CHECK-NEXT: - - - - - - - 1.00 - - pmovzxbw %xmm0, %xmm2
348 # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - pmovzxbw (%rax), %xmm2
349 # CHECK-NEXT: - - - - - - - 1.00 - - pmovzxdq %xmm0, %xmm2
350 # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - pmovzxdq (%rax), %xmm2
351 # CHECK-NEXT: - - - - - - - 1.00 - - pmovzxwd %xmm0, %xmm2
352 # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - pmovzxwd (%rax), %xmm2
353 # CHECK-NEXT: - - - - - - - 1.00 - - pmovzxwq %xmm0, %xmm2
354 # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - pmovzxwq (%rax), %xmm2
355 # CHECK-NEXT: - - 1.00 - - - - - - - pmuldq %xmm0, %xmm2
356 # CHECK-NEXT: - - 1.00 - 0.50 0.50 - - - - pmuldq (%rax), %xmm2
357 # CHECK-NEXT: - - 2.00 - - - - - - - pmulld %xmm0, %xmm2
358 # CHECK-NEXT: - - 2.00 - 0.50 0.50 - - - - pmulld (%rax), %xmm2
359 # CHECK-NEXT: - - 1.00 - - - - 1.00 - - ptest %xmm0, %xmm1
360 # CHECK-NEXT: - - 1.00 - 0.50 0.50 - 1.00 - - ptest (%rax), %xmm1
361 # CHECK-NEXT: - - - - 0.50 0.50 - - - - roundpd $1, %xmm0, %xmm2
362 # CHECK-NEXT: - - - 2.00 0.50 0.50 - - - - roundpd $1, (%rax), %xmm2
363 # CHECK-NEXT: - - - - 0.50 0.50 - - - - roundps $1, %xmm0, %xmm2
364 # CHECK-NEXT: - - - 2.00 0.50 0.50 - - - - roundps $1, (%rax), %xmm2
365 # CHECK-NEXT: - - - - 0.50 0.50 - - - - roundsd $1, %xmm0, %xmm2
366 # CHECK-NEXT: - - - 2.00 0.50 0.50 - - - - roundsd $1, (%rax), %xmm2
367 # CHECK-NEXT: - - - - 0.50 0.50 - - - - roundss $1, %xmm0, %xmm2
368 # CHECK-NEXT: - - - 2.00 0.50 0.50 - - - - roundss $1, (%rax), %xmm2