Lines Matching refs:xmm1
16 ; SSE2-NEXT: movaps %xmm1, %xmm2
17 ; SSE2-NEXT: shufps {{.*#+}} xmm2 = xmm2[1,1],xmm1[1,1]
18 ; SSE2-NEXT: mulss %xmm1, %xmm2
24 ; SSE41-NEXT: movshdup {{.*#+}} xmm2 = xmm1[1,1,3,3]
25 ; SSE41-NEXT: mulss %xmm1, %xmm2
31 ; AVX-NEXT: vmovshdup {{.*#+}} xmm2 = xmm1[1,1,3,3]
32 ; AVX-NEXT: vmulss %xmm2, %xmm1, %xmm1
33 ; AVX-NEXT: vmulss %xmm1, %xmm0, %xmm0
38 ; AVX512-NEXT: vmovshdup {{.*#+}} xmm2 = xmm1[1,1,3,3]
39 ; AVX512-NEXT: vmulss %xmm2, %xmm1, %xmm1
40 ; AVX512-NEXT: vmulss %xmm1, %xmm0, %xmm0
49 ; SSE2-NEXT: movaps %xmm1, %xmm2
50 ; SSE2-NEXT: unpckhpd {{.*#+}} xmm2 = xmm2[1],xmm1[1]
51 ; SSE2-NEXT: mulps %xmm1, %xmm2
52 ; SSE2-NEXT: movaps %xmm2, %xmm1
53 ; SSE2-NEXT: shufps {{.*#+}} xmm1 = xmm1[1,1],xmm2[1,1]
54 ; SSE2-NEXT: mulss %xmm2, %xmm1
55 ; SSE2-NEXT: mulss %xmm1, %xmm0
60 ; SSE41-NEXT: movaps %xmm1, %xmm2
61 ; SSE41-NEXT: unpckhpd {{.*#+}} xmm2 = xmm2[1],xmm1[1]
62 ; SSE41-NEXT: mulps %xmm1, %xmm2
63 ; SSE41-NEXT: movshdup {{.*#+}} xmm1 = xmm2[1,1,3,3]
64 ; SSE41-NEXT: mulss %xmm2, %xmm1
65 ; SSE41-NEXT: mulss %xmm1, %xmm0
70 ; AVX-NEXT: vpermilpd {{.*#+}} xmm2 = xmm1[1,0]
71 ; AVX-NEXT: vmulps %xmm2, %xmm1, %xmm1
72 ; AVX-NEXT: vmovshdup {{.*#+}} xmm2 = xmm1[1,1,3,3]
73 ; AVX-NEXT: vmulss %xmm2, %xmm1, %xmm1
74 ; AVX-NEXT: vmulss %xmm1, %xmm0, %xmm0
79 ; AVX512-NEXT: vpermilpd {{.*#+}} xmm2 = xmm1[1,0]
80 ; AVX512-NEXT: vmulps %xmm2, %xmm1, %xmm1
81 ; AVX512-NEXT: vmovshdup {{.*#+}} xmm2 = xmm1[1,1,3,3]
82 ; AVX512-NEXT: vmulss %xmm2, %xmm1, %xmm1
83 ; AVX512-NEXT: vmulss %xmm1, %xmm0, %xmm0
92 ; SSE2-NEXT: mulps %xmm2, %xmm1
93 ; SSE2-NEXT: movaps %xmm1, %xmm2
94 ; SSE2-NEXT: unpckhpd {{.*#+}} xmm2 = xmm2[1],xmm1[1]
95 ; SSE2-NEXT: mulps %xmm1, %xmm2
96 ; SSE2-NEXT: movaps %xmm2, %xmm1
97 ; SSE2-NEXT: shufps {{.*#+}} xmm1 = xmm1[1,1],xmm2[1,1]
98 ; SSE2-NEXT: mulss %xmm2, %xmm1
99 ; SSE2-NEXT: mulss %xmm1, %xmm0
104 ; SSE41-NEXT: mulps %xmm2, %xmm1
105 ; SSE41-NEXT: movaps %xmm1, %xmm2
106 ; SSE41-NEXT: unpckhpd {{.*#+}} xmm2 = xmm2[1],xmm1[1]
107 ; SSE41-NEXT: mulps %xmm1, %xmm2
108 ; SSE41-NEXT: movshdup {{.*#+}} xmm1 = xmm2[1,1,3,3]
109 ; SSE41-NEXT: mulss %xmm2, %xmm1
110 ; SSE41-NEXT: mulss %xmm1, %xmm0
116 ; AVX-NEXT: vmulps %xmm2, %xmm1, %xmm1
117 ; AVX-NEXT: vpermilpd {{.*#+}} xmm2 = xmm1[1,0]
118 ; AVX-NEXT: vmulps %xmm2, %xmm1, %xmm1
119 ; AVX-NEXT: vmovshdup {{.*#+}} xmm2 = xmm1[1,1,3,3]
120 ; AVX-NEXT: vmulss %xmm2, %xmm1, %xmm1
121 ; AVX-NEXT: vmulss %xmm1, %xmm0, %xmm0
128 ; AVX512-NEXT: vmulps %xmm2, %xmm1, %xmm1
129 ; AVX512-NEXT: vpermilpd {{.*#+}} xmm2 = xmm1[1,0]
130 ; AVX512-NEXT: vmulps %xmm2, %xmm1, %xmm1
131 ; AVX512-NEXT: vmovshdup {{.*#+}} xmm2 = xmm1[1,1,3,3]
132 ; AVX512-NEXT: vmulss %xmm2, %xmm1, %xmm1
133 ; AVX512-NEXT: vmulss %xmm1, %xmm0, %xmm0
144 ; SSE2-NEXT: mulps %xmm3, %xmm1
145 ; SSE2-NEXT: mulps %xmm2, %xmm1
146 ; SSE2-NEXT: movaps %xmm1, %xmm2
147 ; SSE2-NEXT: unpckhpd {{.*#+}} xmm2 = xmm2[1],xmm1[1]
148 ; SSE2-NEXT: mulps %xmm1, %xmm2
149 ; SSE2-NEXT: movaps %xmm2, %xmm1
150 ; SSE2-NEXT: shufps {{.*#+}} xmm1 = xmm1[1,1],xmm2[1,1]
151 ; SSE2-NEXT: mulss %xmm2, %xmm1
152 ; SSE2-NEXT: mulss %xmm1, %xmm0
158 ; SSE41-NEXT: mulps %xmm3, %xmm1
159 ; SSE41-NEXT: mulps %xmm2, %xmm1
160 ; SSE41-NEXT: movaps %xmm1, %xmm2
161 ; SSE41-NEXT: unpckhpd {{.*#+}} xmm2 = xmm2[1],xmm1[1]
162 ; SSE41-NEXT: mulps %xmm1, %xmm2
163 ; SSE41-NEXT: movshdup {{.*#+}} xmm1 = xmm2[1,1,3,3]
164 ; SSE41-NEXT: mulss %xmm2, %xmm1
165 ; SSE41-NEXT: mulss %xmm1, %xmm0
172 ; AVX-NEXT: vmulps %xmm2, %xmm1, %xmm1
173 ; AVX-NEXT: vpermilpd {{.*#+}} xmm2 = xmm1[1,0]
174 ; AVX-NEXT: vmulps %xmm2, %xmm1, %xmm1
175 ; AVX-NEXT: vmovshdup {{.*#+}} xmm2 = xmm1[1,1,3,3]
176 ; AVX-NEXT: vmulss %xmm2, %xmm1, %xmm1
177 ; AVX-NEXT: vmulss %xmm1, %xmm0, %xmm0
186 ; AVX512-NEXT: vmulps %xmm2, %xmm1, %xmm1
187 ; AVX512-NEXT: vpermilpd {{.*#+}} xmm2 = xmm1[1,0]
188 ; AVX512-NEXT: vmulps %xmm2, %xmm1, %xmm1
189 ; AVX512-NEXT: vmovshdup {{.*#+}} xmm2 = xmm1[1,1,3,3]
190 ; AVX512-NEXT: vmulss %xmm2, %xmm1, %xmm1
191 ; AVX512-NEXT: vmulss %xmm1, %xmm0, %xmm0
205 ; SSE2-NEXT: movaps %xmm0, %xmm1
206 ; SSE2-NEXT: shufps {{.*#+}} xmm1 = xmm1[1,1],xmm0[1,1]
207 ; SSE2-NEXT: mulss %xmm0, %xmm1
208 ; SSE2-NEXT: movaps %xmm1, %xmm0
213 ; SSE41-NEXT: movshdup {{.*#+}} xmm1 = xmm0[1,1,3,3]
214 ; SSE41-NEXT: mulss %xmm1, %xmm0
219 ; AVX-NEXT: vmovshdup {{.*#+}} xmm1 = xmm0[1,1,3,3]
220 ; AVX-NEXT: vmulss %xmm1, %xmm0, %xmm0
225 ; AVX512-NEXT: vmovshdup {{.*#+}} xmm1 = xmm0[1,1,3,3]
226 ; AVX512-NEXT: vmulss %xmm1, %xmm0, %xmm0
235 ; SSE2-NEXT: movaps %xmm0, %xmm1
236 ; SSE2-NEXT: unpckhpd {{.*#+}} xmm1 = xmm1[1],xmm0[1]
237 ; SSE2-NEXT: mulps %xmm0, %xmm1
238 ; SSE2-NEXT: movaps %xmm1, %xmm0
239 ; SSE2-NEXT: shufps {{.*#+}} xmm0 = xmm0[1,1],xmm1[1,1]
240 ; SSE2-NEXT: mulss %xmm1, %xmm0
245 ; SSE41-NEXT: movaps %xmm0, %xmm1
246 ; SSE41-NEXT: unpckhpd {{.*#+}} xmm1 = xmm1[1],xmm0[1]
247 ; SSE41-NEXT: mulps %xmm0, %xmm1
248 ; SSE41-NEXT: movshdup {{.*#+}} xmm0 = xmm1[1,1,3,3]
249 ; SSE41-NEXT: mulss %xmm0, %xmm1
250 ; SSE41-NEXT: movaps %xmm1, %xmm0
255 ; AVX-NEXT: vpermilpd {{.*#+}} xmm1 = xmm0[1,0]
256 ; AVX-NEXT: vmulps %xmm1, %xmm0, %xmm0
257 ; AVX-NEXT: vmovshdup {{.*#+}} xmm1 = xmm0[1,1,3,3]
258 ; AVX-NEXT: vmulss %xmm1, %xmm0, %xmm0
263 ; AVX512-NEXT: vpermilpd {{.*#+}} xmm1 = xmm0[1,0]
264 ; AVX512-NEXT: vmulps %xmm1, %xmm0, %xmm0
265 ; AVX512-NEXT: vmovshdup {{.*#+}} xmm1 = xmm0[1,1,3,3]
266 ; AVX512-NEXT: vmulss %xmm1, %xmm0, %xmm0
275 ; SSE2-NEXT: mulps %xmm1, %xmm0
276 ; SSE2-NEXT: movaps %xmm0, %xmm1
277 ; SSE2-NEXT: unpckhpd {{.*#+}} xmm1 = xmm1[1],xmm0[1]
278 ; SSE2-NEXT: mulps %xmm0, %xmm1
279 ; SSE2-NEXT: movaps %xmm1, %xmm0
280 ; SSE2-NEXT: shufps {{.*#+}} xmm0 = xmm0[1,1],xmm1[1,1]
281 ; SSE2-NEXT: mulss %xmm1, %xmm0
286 ; SSE41-NEXT: mulps %xmm1, %xmm0
287 ; SSE41-NEXT: movaps %xmm0, %xmm1
288 ; SSE41-NEXT: unpckhpd {{.*#+}} xmm1 = xmm1[1],xmm0[1]
289 ; SSE41-NEXT: mulps %xmm0, %xmm1
290 ; SSE41-NEXT: movshdup {{.*#+}} xmm0 = xmm1[1,1,3,3]
291 ; SSE41-NEXT: mulss %xmm0, %xmm1
292 ; SSE41-NEXT: movaps %xmm1, %xmm0
297 ; AVX-NEXT: vextractf128 $1, %ymm0, %xmm1
298 ; AVX-NEXT: vmulps %xmm1, %xmm0, %xmm0
299 ; AVX-NEXT: vpermilpd {{.*#+}} xmm1 = xmm0[1,0]
300 ; AVX-NEXT: vmulps %xmm1, %xmm0, %xmm0
301 ; AVX-NEXT: vmovshdup {{.*#+}} xmm1 = xmm0[1,1,3,3]
302 ; AVX-NEXT: vmulss %xmm1, %xmm0, %xmm0
308 ; AVX512-NEXT: vextractf128 $1, %ymm0, %xmm1
309 ; AVX512-NEXT: vmulps %xmm1, %xmm0, %xmm0
310 ; AVX512-NEXT: vpermilpd {{.*#+}} xmm1 = xmm0[1,0]
311 ; AVX512-NEXT: vmulps %xmm1, %xmm0, %xmm0
312 ; AVX512-NEXT: vmovshdup {{.*#+}} xmm1 = xmm0[1,1,3,3]
313 ; AVX512-NEXT: vmulss %xmm1, %xmm0, %xmm0
323 ; SSE2-NEXT: mulps %xmm3, %xmm1
325 ; SSE2-NEXT: mulps %xmm1, %xmm0
326 ; SSE2-NEXT: movaps %xmm0, %xmm1
327 ; SSE2-NEXT: unpckhpd {{.*#+}} xmm1 = xmm1[1],xmm0[1]
328 ; SSE2-NEXT: mulps %xmm0, %xmm1
329 ; SSE2-NEXT: movaps %xmm1, %xmm0
330 ; SSE2-NEXT: shufps {{.*#+}} xmm0 = xmm0[1,1],xmm1[1,1]
331 ; SSE2-NEXT: mulss %xmm1, %xmm0
336 ; SSE41-NEXT: mulps %xmm3, %xmm1
338 ; SSE41-NEXT: mulps %xmm1, %xmm0
339 ; SSE41-NEXT: movaps %xmm0, %xmm1
340 ; SSE41-NEXT: unpckhpd {{.*#+}} xmm1 = xmm1[1],xmm0[1]
341 ; SSE41-NEXT: mulps %xmm0, %xmm1
342 ; SSE41-NEXT: movshdup {{.*#+}} xmm0 = xmm1[1,1,3,3]
343 ; SSE41-NEXT: mulss %xmm0, %xmm1
344 ; SSE41-NEXT: movaps %xmm1, %xmm0
350 ; AVX-NEXT: vextractf128 $1, %ymm0, %xmm1
351 ; AVX-NEXT: vmulps %xmm1, %xmm0, %xmm0
352 ; AVX-NEXT: vpermilpd {{.*#+}} xmm1 = xmm0[1,0]
353 ; AVX-NEXT: vmulps %xmm1, %xmm0, %xmm0
354 ; AVX-NEXT: vmovshdup {{.*#+}} xmm1 = xmm0[1,1,3,3]
355 ; AVX-NEXT: vmulss %xmm1, %xmm0, %xmm0
363 ; AVX512-NEXT: vextractf128 $1, %ymm0, %xmm1
364 ; AVX512-NEXT: vmulps %xmm1, %xmm0, %xmm0
365 ; AVX512-NEXT: vpermilpd {{.*#+}} xmm1 = xmm0[1,0]
366 ; AVX512-NEXT: vmulps %xmm1, %xmm0, %xmm0
367 ; AVX512-NEXT: vmovshdup {{.*#+}} xmm1 = xmm0[1,1,3,3]
368 ; AVX512-NEXT: vmulss %xmm1, %xmm0, %xmm0
382 ; SSE2-NEXT: movaps %xmm0, %xmm1
383 ; SSE2-NEXT: shufps {{.*#+}} xmm1 = xmm1[1,1],xmm0[1,1]
384 ; SSE2-NEXT: mulss %xmm0, %xmm1
385 ; SSE2-NEXT: movaps %xmm1, %xmm0
390 ; SSE41-NEXT: movshdup {{.*#+}} xmm1 = xmm0[1,1,3,3]
391 ; SSE41-NEXT: mulss %xmm1, %xmm0
396 ; AVX-NEXT: vmovshdup {{.*#+}} xmm1 = xmm0[1,1,3,3]
397 ; AVX-NEXT: vmulss %xmm1, %xmm0, %xmm0
402 ; AVX512-NEXT: vmovshdup {{.*#+}} xmm1 = xmm0[1,1,3,3]
403 ; AVX512-NEXT: vmulss %xmm1, %xmm0, %xmm0
412 ; SSE2-NEXT: movaps %xmm0, %xmm1
413 ; SSE2-NEXT: unpckhpd {{.*#+}} xmm1 = xmm1[1],xmm0[1]
414 ; SSE2-NEXT: mulps %xmm0, %xmm1
415 ; SSE2-NEXT: movaps %xmm1, %xmm0
416 ; SSE2-NEXT: shufps {{.*#+}} xmm0 = xmm0[1,1],xmm1[1,1]
417 ; SSE2-NEXT: mulss %xmm1, %xmm0
422 ; SSE41-NEXT: movaps %xmm0, %xmm1
423 ; SSE41-NEXT: unpckhpd {{.*#+}} xmm1 = xmm1[1],xmm0[1]
424 ; SSE41-NEXT: mulps %xmm0, %xmm1
425 ; SSE41-NEXT: movshdup {{.*#+}} xmm0 = xmm1[1,1,3,3]
426 ; SSE41-NEXT: mulss %xmm0, %xmm1
427 ; SSE41-NEXT: movaps %xmm1, %xmm0
432 ; AVX-NEXT: vpermilpd {{.*#+}} xmm1 = xmm0[1,0]
433 ; AVX-NEXT: vmulps %xmm1, %xmm0, %xmm0
434 ; AVX-NEXT: vmovshdup {{.*#+}} xmm1 = xmm0[1,1,3,3]
435 ; AVX-NEXT: vmulss %xmm1, %xmm0, %xmm0
440 ; AVX512-NEXT: vpermilpd {{.*#+}} xmm1 = xmm0[1,0]
441 ; AVX512-NEXT: vmulps %xmm1, %xmm0, %xmm0
442 ; AVX512-NEXT: vmovshdup {{.*#+}} xmm1 = xmm0[1,1,3,3]
443 ; AVX512-NEXT: vmulss %xmm1, %xmm0, %xmm0
452 ; SSE2-NEXT: mulps %xmm1, %xmm0
453 ; SSE2-NEXT: movaps %xmm0, %xmm1
454 ; SSE2-NEXT: unpckhpd {{.*#+}} xmm1 = xmm1[1],xmm0[1]
455 ; SSE2-NEXT: mulps %xmm0, %xmm1
456 ; SSE2-NEXT: movaps %xmm1, %xmm0
457 ; SSE2-NEXT: shufps {{.*#+}} xmm0 = xmm0[1,1],xmm1[1,1]
458 ; SSE2-NEXT: mulss %xmm1, %xmm0
463 ; SSE41-NEXT: mulps %xmm1, %xmm0
464 ; SSE41-NEXT: movaps %xmm0, %xmm1
465 ; SSE41-NEXT: unpckhpd {{.*#+}} xmm1 = xmm1[1],xmm0[1]
466 ; SSE41-NEXT: mulps %xmm0, %xmm1
467 ; SSE41-NEXT: movshdup {{.*#+}} xmm0 = xmm1[1,1,3,3]
468 ; SSE41-NEXT: mulss %xmm0, %xmm1
469 ; SSE41-NEXT: movaps %xmm1, %xmm0
474 ; AVX-NEXT: vextractf128 $1, %ymm0, %xmm1
475 ; AVX-NEXT: vmulps %xmm1, %xmm0, %xmm0
476 ; AVX-NEXT: vpermilpd {{.*#+}} xmm1 = xmm0[1,0]
477 ; AVX-NEXT: vmulps %xmm1, %xmm0, %xmm0
478 ; AVX-NEXT: vmovshdup {{.*#+}} xmm1 = xmm0[1,1,3,3]
479 ; AVX-NEXT: vmulss %xmm1, %xmm0, %xmm0
485 ; AVX512-NEXT: vextractf128 $1, %ymm0, %xmm1
486 ; AVX512-NEXT: vmulps %xmm1, %xmm0, %xmm0
487 ; AVX512-NEXT: vpermilpd {{.*#+}} xmm1 = xmm0[1,0]
488 ; AVX512-NEXT: vmulps %xmm1, %xmm0, %xmm0
489 ; AVX512-NEXT: vmovshdup {{.*#+}} xmm1 = xmm0[1,1,3,3]
490 ; AVX512-NEXT: vmulss %xmm1, %xmm0, %xmm0
500 ; SSE2-NEXT: mulps %xmm3, %xmm1
502 ; SSE2-NEXT: mulps %xmm1, %xmm0
503 ; SSE2-NEXT: movaps %xmm0, %xmm1
504 ; SSE2-NEXT: unpckhpd {{.*#+}} xmm1 = xmm1[1],xmm0[1]
505 ; SSE2-NEXT: mulps %xmm0, %xmm1
506 ; SSE2-NEXT: movaps %xmm1, %xmm0
507 ; SSE2-NEXT: shufps {{.*#+}} xmm0 = xmm0[1,1],xmm1[1,1]
508 ; SSE2-NEXT: mulss %xmm1, %xmm0
513 ; SSE41-NEXT: mulps %xmm3, %xmm1
515 ; SSE41-NEXT: mulps %xmm1, %xmm0
516 ; SSE41-NEXT: movaps %xmm0, %xmm1
517 ; SSE41-NEXT: unpckhpd {{.*#+}} xmm1 = xmm1[1],xmm0[1]
518 ; SSE41-NEXT: mulps %xmm0, %xmm1
519 ; SSE41-NEXT: movshdup {{.*#+}} xmm0 = xmm1[1,1,3,3]
520 ; SSE41-NEXT: mulss %xmm0, %xmm1
521 ; SSE41-NEXT: movaps %xmm1, %xmm0
527 ; AVX-NEXT: vextractf128 $1, %ymm0, %xmm1
528 ; AVX-NEXT: vmulps %xmm1, %xmm0, %xmm0
529 ; AVX-NEXT: vpermilpd {{.*#+}} xmm1 = xmm0[1,0]
530 ; AVX-NEXT: vmulps %xmm1, %xmm0, %xmm0
531 ; AVX-NEXT: vmovshdup {{.*#+}} xmm1 = xmm0[1,1,3,3]
532 ; AVX-NEXT: vmulss %xmm1, %xmm0, %xmm0
540 ; AVX512-NEXT: vextractf128 $1, %ymm0, %xmm1
541 ; AVX512-NEXT: vmulps %xmm1, %xmm0, %xmm0
542 ; AVX512-NEXT: vpermilpd {{.*#+}} xmm1 = xmm0[1,0]
543 ; AVX512-NEXT: vmulps %xmm1, %xmm0, %xmm0
544 ; AVX512-NEXT: vmovshdup {{.*#+}} xmm1 = xmm0[1,1,3,3]
545 ; AVX512-NEXT: vmulss %xmm1, %xmm0, %xmm0
559 ; SSE-NEXT: movapd %xmm1, %xmm2
560 ; SSE-NEXT: unpckhpd {{.*#+}} xmm2 = xmm2[1],xmm1[1]
561 ; SSE-NEXT: mulsd %xmm1, %xmm2
567 ; AVX-NEXT: vpermilpd {{.*#+}} xmm2 = xmm1[1,0]
568 ; AVX-NEXT: vmulsd %xmm2, %xmm1, %xmm1
569 ; AVX-NEXT: vmulsd %xmm1, %xmm0, %xmm0
574 ; AVX512-NEXT: vpermilpd {{.*#+}} xmm2 = xmm1[1,0]
575 ; AVX512-NEXT: vmulsd %xmm2, %xmm1, %xmm1
576 ; AVX512-NEXT: vmulsd %xmm1, %xmm0, %xmm0
585 ; SSE-NEXT: mulpd %xmm2, %xmm1
586 ; SSE-NEXT: movapd %xmm1, %xmm2
587 ; SSE-NEXT: unpckhpd {{.*#+}} xmm2 = xmm2[1],xmm1[1]
588 ; SSE-NEXT: mulsd %xmm1, %xmm2
595 ; AVX-NEXT: vmulpd %xmm2, %xmm1, %xmm1
596 ; AVX-NEXT: vpermilpd {{.*#+}} xmm2 = xmm1[1,0]
597 ; AVX-NEXT: vmulsd %xmm2, %xmm1, %xmm1
598 ; AVX-NEXT: vmulsd %xmm1, %xmm0, %xmm0
605 ; AVX512-NEXT: vmulpd %xmm2, %xmm1, %xmm1
606 ; AVX512-NEXT: vpermilpd {{.*#+}} xmm2 = xmm1[1,0]
607 ; AVX512-NEXT: vmulsd %xmm2, %xmm1, %xmm1
608 ; AVX512-NEXT: vmulsd %xmm1, %xmm0, %xmm0
619 ; SSE-NEXT: mulpd %xmm3, %xmm1
620 ; SSE-NEXT: mulpd %xmm2, %xmm1
621 ; SSE-NEXT: movapd %xmm1, %xmm2
622 ; SSE-NEXT: unpckhpd {{.*#+}} xmm2 = xmm2[1],xmm1[1]
623 ; SSE-NEXT: mulsd %xmm1, %xmm2
631 ; AVX-NEXT: vmulpd %xmm2, %xmm1, %xmm1
632 ; AVX-NEXT: vpermilpd {{.*#+}} xmm2 = xmm1[1,0]
633 ; AVX-NEXT: vmulsd %xmm2, %xmm1, %xmm1
634 ; AVX-NEXT: vmulsd %xmm1, %xmm0, %xmm0
643 ; AVX512-NEXT: vmulpd %xmm2, %xmm1, %xmm1
644 ; AVX512-NEXT: vpermilpd {{.*#+}} xmm2 = xmm1[1,0]
645 ; AVX512-NEXT: vmulsd %xmm2, %xmm1, %xmm1
646 ; AVX512-NEXT: vmulsd %xmm1, %xmm0, %xmm0
658 ; SSE-NEXT: mulpd %xmm5, %xmm1
659 ; SSE-NEXT: mulpd %xmm3, %xmm1
662 ; SSE-NEXT: mulpd %xmm1, %xmm4
663 ; SSE-NEXT: movapd %xmm4, %xmm1
664 ; SSE-NEXT: unpckhpd {{.*#+}} xmm1 = xmm1[1],xmm4[1]
665 ; SSE-NEXT: mulsd %xmm4, %xmm1
666 ; SSE-NEXT: mulsd %xmm1, %xmm0
675 ; AVX-NEXT: vmulpd %xmm2, %xmm1, %xmm1
676 ; AVX-NEXT: vpermilpd {{.*#+}} xmm2 = xmm1[1,0]
677 ; AVX-NEXT: vmulsd %xmm2, %xmm1, %xmm1
678 ; AVX-NEXT: vmulsd %xmm1, %xmm0, %xmm0
688 ; AVX512-NEXT: vmulpd %xmm2, %xmm1, %xmm1
689 ; AVX512-NEXT: vpermilpd {{.*#+}} xmm2 = xmm1[1,0]
690 ; AVX512-NEXT: vmulsd %xmm2, %xmm1, %xmm1
691 ; AVX512-NEXT: vmulsd %xmm1, %xmm0, %xmm0
705 ; SSE-NEXT: movapd %xmm0, %xmm1
706 ; SSE-NEXT: unpckhpd {{.*#+}} xmm1 = xmm1[1],xmm0[1]
707 ; SSE-NEXT: mulsd %xmm0, %xmm1
708 ; SSE-NEXT: movapd %xmm1, %xmm0
713 ; AVX-NEXT: vpermilpd {{.*#+}} xmm1 = xmm0[1,0]
714 ; AVX-NEXT: vmulsd %xmm1, %xmm0, %xmm0
719 ; AVX512-NEXT: vpermilpd {{.*#+}} xmm1 = xmm0[1,0]
720 ; AVX512-NEXT: vmulsd %xmm1, %xmm0, %xmm0
729 ; SSE-NEXT: mulpd %xmm1, %xmm0
730 ; SSE-NEXT: movapd %xmm0, %xmm1
731 ; SSE-NEXT: unpckhpd {{.*#+}} xmm1 = xmm1[1],xmm0[1]
732 ; SSE-NEXT: mulsd %xmm0, %xmm1
733 ; SSE-NEXT: movapd %xmm1, %xmm0
738 ; AVX-NEXT: vextractf128 $1, %ymm0, %xmm1
739 ; AVX-NEXT: vmulpd %xmm1, %xmm0, %xmm0
740 ; AVX-NEXT: vpermilpd {{.*#+}} xmm1 = xmm0[1,0]
741 ; AVX-NEXT: vmulsd %xmm1, %xmm0, %xmm0
747 ; AVX512-NEXT: vextractf128 $1, %ymm0, %xmm1
748 ; AVX512-NEXT: vmulpd %xmm1, %xmm0, %xmm0
749 ; AVX512-NEXT: vpermilpd {{.*#+}} xmm1 = xmm0[1,0]
750 ; AVX512-NEXT: vmulsd %xmm1, %xmm0, %xmm0
760 ; SSE-NEXT: mulpd %xmm3, %xmm1
762 ; SSE-NEXT: mulpd %xmm1, %xmm0
763 ; SSE-NEXT: movapd %xmm0, %xmm1
764 ; SSE-NEXT: unpckhpd {{.*#+}} xmm1 = xmm1[1],xmm0[1]
765 ; SSE-NEXT: mulsd %xmm0, %xmm1
766 ; SSE-NEXT: movapd %xmm1, %xmm0
772 ; AVX-NEXT: vextractf128 $1, %ymm0, %xmm1
773 ; AVX-NEXT: vmulpd %xmm1, %xmm0, %xmm0
774 ; AVX-NEXT: vpermilpd {{.*#+}} xmm1 = xmm0[1,0]
775 ; AVX-NEXT: vmulsd %xmm1, %xmm0, %xmm0
783 ; AVX512-NEXT: vextractf128 $1, %ymm0, %xmm1
784 ; AVX512-NEXT: vmulpd %xmm1, %xmm0, %xmm0
785 ; AVX512-NEXT: vpermilpd {{.*#+}} xmm1 = xmm0[1,0]
786 ; AVX512-NEXT: vmulsd %xmm1, %xmm0, %xmm0
800 ; SSE-NEXT: mulpd %xmm5, %xmm1
801 ; SSE-NEXT: mulpd %xmm3, %xmm1
802 ; SSE-NEXT: mulpd %xmm0, %xmm1
803 ; SSE-NEXT: movapd %xmm1, %xmm0
804 ; SSE-NEXT: unpckhpd {{.*#+}} xmm0 = xmm0[1],xmm1[1]
805 ; SSE-NEXT: mulsd %xmm1, %xmm0
813 ; AVX-NEXT: vextractf128 $1, %ymm0, %xmm1
814 ; AVX-NEXT: vmulpd %xmm1, %xmm0, %xmm0
815 ; AVX-NEXT: vpermilpd {{.*#+}} xmm1 = xmm0[1,0]
816 ; AVX-NEXT: vmulsd %xmm1, %xmm0, %xmm0
825 ; AVX512-NEXT: vextractf128 $1, %ymm0, %xmm1
826 ; AVX512-NEXT: vmulpd %xmm1, %xmm0, %xmm0
827 ; AVX512-NEXT: vpermilpd {{.*#+}} xmm1 = xmm0[1,0]
828 ; AVX512-NEXT: vmulsd %xmm1, %xmm0, %xmm0
842 ; SSE-NEXT: movapd %xmm0, %xmm1
843 ; SSE-NEXT: unpckhpd {{.*#+}} xmm1 = xmm1[1],xmm0[1]
844 ; SSE-NEXT: mulsd %xmm0, %xmm1
845 ; SSE-NEXT: movapd %xmm1, %xmm0
850 ; AVX-NEXT: vpermilpd {{.*#+}} xmm1 = xmm0[1,0]
851 ; AVX-NEXT: vmulsd %xmm1, %xmm0, %xmm0
856 ; AVX512-NEXT: vpermilpd {{.*#+}} xmm1 = xmm0[1,0]
857 ; AVX512-NEXT: vmulsd %xmm1, %xmm0, %xmm0
866 ; SSE-NEXT: mulpd %xmm1, %xmm0
867 ; SSE-NEXT: movapd %xmm0, %xmm1
868 ; SSE-NEXT: unpckhpd {{.*#+}} xmm1 = xmm1[1],xmm0[1]
869 ; SSE-NEXT: mulsd %xmm0, %xmm1
870 ; SSE-NEXT: movapd %xmm1, %xmm0
875 ; AVX-NEXT: vextractf128 $1, %ymm0, %xmm1
876 ; AVX-NEXT: vmulpd %xmm1, %xmm0, %xmm0
877 ; AVX-NEXT: vpermilpd {{.*#+}} xmm1 = xmm0[1,0]
878 ; AVX-NEXT: vmulsd %xmm1, %xmm0, %xmm0
884 ; AVX512-NEXT: vextractf128 $1, %ymm0, %xmm1
885 ; AVX512-NEXT: vmulpd %xmm1, %xmm0, %xmm0
886 ; AVX512-NEXT: vpermilpd {{.*#+}} xmm1 = xmm0[1,0]
887 ; AVX512-NEXT: vmulsd %xmm1, %xmm0, %xmm0
897 ; SSE-NEXT: mulpd %xmm3, %xmm1
899 ; SSE-NEXT: mulpd %xmm1, %xmm0
900 ; SSE-NEXT: movapd %xmm0, %xmm1
901 ; SSE-NEXT: unpckhpd {{.*#+}} xmm1 = xmm1[1],xmm0[1]
902 ; SSE-NEXT: mulsd %xmm0, %xmm1
903 ; SSE-NEXT: movapd %xmm1, %xmm0
909 ; AVX-NEXT: vextractf128 $1, %ymm0, %xmm1
910 ; AVX-NEXT: vmulpd %xmm1, %xmm0, %xmm0
911 ; AVX-NEXT: vpermilpd {{.*#+}} xmm1 = xmm0[1,0]
912 ; AVX-NEXT: vmulsd %xmm1, %xmm0, %xmm0
920 ; AVX512-NEXT: vextractf128 $1, %ymm0, %xmm1
921 ; AVX512-NEXT: vmulpd %xmm1, %xmm0, %xmm0
922 ; AVX512-NEXT: vpermilpd {{.*#+}} xmm1 = xmm0[1,0]
923 ; AVX512-NEXT: vmulsd %xmm1, %xmm0, %xmm0
937 ; SSE-NEXT: mulpd %xmm5, %xmm1
938 ; SSE-NEXT: mulpd %xmm3, %xmm1
939 ; SSE-NEXT: mulpd %xmm0, %xmm1
940 ; SSE-NEXT: movapd %xmm1, %xmm0
941 ; SSE-NEXT: unpckhpd {{.*#+}} xmm0 = xmm0[1],xmm1[1]
942 ; SSE-NEXT: mulsd %xmm1, %xmm0
950 ; AVX-NEXT: vextractf128 $1, %ymm0, %xmm1
951 ; AVX-NEXT: vmulpd %xmm1, %xmm0, %xmm0
952 ; AVX-NEXT: vpermilpd {{.*#+}} xmm1 = xmm0[1,0]
953 ; AVX-NEXT: vmulsd %xmm1, %xmm0, %xmm0
962 ; AVX512-NEXT: vextractf128 $1, %ymm0, %xmm1
963 ; AVX512-NEXT: vmulpd %xmm1, %xmm0, %xmm0
964 ; AVX512-NEXT: vpermilpd {{.*#+}} xmm1 = xmm0[1,0]
965 ; AVX512-NEXT: vmulsd %xmm1, %xmm0, %xmm0