• Home
  • Raw
  • Download

Lines Matching refs:SSE42

3 …triple=x86_64-unknown-unknown -mattr=+sse4.2 | FileCheck %s --check-prefix=SSE --check-prefix=SSE42
58 ; SSE42-LABEL: test_cmp_v2i64:
59 ; SSE42: # BB#0:
60 ; SSE42-NEXT: pcmpgtq %xmm1, %xmm0
61 ; SSE42-NEXT: retq
127 ; SSE42-LABEL: test_cmp_v4f64:
128 ; SSE42: # BB#0:
129 ; SSE42-NEXT: cmpltpd %xmm1, %xmm3
130 ; SSE42-NEXT: pshufd {{.*#+}} xmm1 = xmm3[0,1,0,2]
131 ; SSE42-NEXT: cmpltpd %xmm0, %xmm2
132 ; SSE42-NEXT: pshufd {{.*#+}} xmm0 = xmm2[0,2,2,3]
133 ; SSE42-NEXT: pblendw {{.*#+}} xmm0 = xmm0[0,1,2,3],xmm1[4,5,6,7]
134 ; SSE42-NEXT: retq
178 ; SSE42-LABEL: test_cmp_v8f32:
179 ; SSE42: # BB#0:
180 ; SSE42-NEXT: cmpltps %xmm1, %xmm3
181 ; SSE42-NEXT: movdqa {{.*#+}} xmm1 = [0,1,4,5,8,9,12,13,8,9,12,13,12,13,14,15]
182 ; SSE42-NEXT: pshufb %xmm1, %xmm3
183 ; SSE42-NEXT: cmpltps %xmm0, %xmm2
184 ; SSE42-NEXT: pshufb %xmm1, %xmm2
185 ; SSE42-NEXT: punpcklqdq {{.*#+}} xmm2 = xmm2[0],xmm3[0]
186 ; SSE42-NEXT: movdqa %xmm2, %xmm0
187 ; SSE42-NEXT: retq
248 ; SSE42-LABEL: test_cmp_v4i64:
249 ; SSE42: # BB#0:
250 ; SSE42-NEXT: pcmpgtq %xmm3, %xmm1
251 ; SSE42-NEXT: pshufd {{.*#+}} xmm1 = xmm1[0,1,0,2]
252 ; SSE42-NEXT: pcmpgtq %xmm2, %xmm0
253 ; SSE42-NEXT: pshufd {{.*#+}} xmm0 = xmm0[0,2,2,3]
254 ; SSE42-NEXT: pblendw {{.*#+}} xmm0 = xmm0[0,1,2,3],xmm1[4,5,6,7]
255 ; SSE42-NEXT: retq
300 ; SSE42-LABEL: test_cmp_v8i32:
301 ; SSE42: # BB#0:
302 ; SSE42-NEXT: pcmpgtd %xmm3, %xmm1
303 ; SSE42-NEXT: movdqa {{.*#+}} xmm3 = [0,1,4,5,8,9,12,13,8,9,12,13,12,13,14,15]
304 ; SSE42-NEXT: pshufb %xmm3, %xmm1
305 ; SSE42-NEXT: pcmpgtd %xmm2, %xmm0
306 ; SSE42-NEXT: pshufb %xmm3, %xmm0
307 ; SSE42-NEXT: punpcklqdq {{.*#+}} xmm0 = xmm0[0],xmm1[0]
308 ; SSE42-NEXT: retq
353 ; SSE42-LABEL: test_cmp_v16i16:
354 ; SSE42: # BB#0:
355 ; SSE42-NEXT: pcmpgtw %xmm3, %xmm1
356 ; SSE42-NEXT: movdqa {{.*#+}} xmm3 = <0,2,4,6,8,10,12,14,u,u,u,u,u,u,u,u>
357 ; SSE42-NEXT: pshufb %xmm3, %xmm1
358 ; SSE42-NEXT: pcmpgtw %xmm2, %xmm0
359 ; SSE42-NEXT: pshufb %xmm3, %xmm0
360 ; SSE42-NEXT: punpcklqdq {{.*#+}} xmm0 = xmm0[0],xmm1[0]
361 ; SSE42-NEXT: retq
503 ; SSE42-LABEL: test_cmp_v32i8:
504 ; SSE42: # BB#0:
505 ; SSE42-NEXT: pcmpgtb %xmm2, %xmm0
506 ; SSE42-NEXT: pcmpgtb %xmm3, %xmm1
507 ; SSE42-NEXT: pextrb $15, %xmm1, %eax
508 ; SSE42-NEXT: andb $1, %al
509 ; SSE42-NEXT: movb %al, 2(%rdi)
510 ; SSE42-NEXT: pextrb $14, %xmm1, %eax
511 ; SSE42-NEXT: andb $1, %al
512 ; SSE42-NEXT: movb %al, 2(%rdi)
513 ; SSE42-NEXT: pextrb $13, %xmm1, %eax
514 ; SSE42-NEXT: andb $1, %al
515 ; SSE42-NEXT: movb %al, 2(%rdi)
516 ; SSE42-NEXT: pextrb $12, %xmm1, %eax
517 ; SSE42-NEXT: andb $1, %al
518 ; SSE42-NEXT: movb %al, 2(%rdi)
519 ; SSE42-NEXT: pextrb $11, %xmm1, %eax
520 ; SSE42-NEXT: andb $1, %al
521 ; SSE42-NEXT: movb %al, 2(%rdi)
522 ; SSE42-NEXT: pextrb $10, %xmm1, %eax
523 ; SSE42-NEXT: andb $1, %al
524 ; SSE42-NEXT: movb %al, 2(%rdi)
525 ; SSE42-NEXT: pextrb $9, %xmm1, %eax
526 ; SSE42-NEXT: andb $1, %al
527 ; SSE42-NEXT: movb %al, 2(%rdi)
528 ; SSE42-NEXT: pextrb $8, %xmm1, %eax
529 ; SSE42-NEXT: andb $1, %al
530 ; SSE42-NEXT: movb %al, 2(%rdi)
531 ; SSE42-NEXT: pextrb $7, %xmm1, %eax
532 ; SSE42-NEXT: andb $1, %al
533 ; SSE42-NEXT: movb %al, 2(%rdi)
534 ; SSE42-NEXT: pextrb $6, %xmm1, %eax
535 ; SSE42-NEXT: andb $1, %al
536 ; SSE42-NEXT: movb %al, 2(%rdi)
537 ; SSE42-NEXT: pextrb $5, %xmm1, %eax
538 ; SSE42-NEXT: andb $1, %al
539 ; SSE42-NEXT: movb %al, 2(%rdi)
540 ; SSE42-NEXT: pextrb $4, %xmm1, %eax
541 ; SSE42-NEXT: andb $1, %al
542 ; SSE42-NEXT: movb %al, 2(%rdi)
543 ; SSE42-NEXT: pextrb $3, %xmm1, %eax
544 ; SSE42-NEXT: andb $1, %al
545 ; SSE42-NEXT: movb %al, 2(%rdi)
546 ; SSE42-NEXT: pextrb $2, %xmm1, %eax
547 ; SSE42-NEXT: andb $1, %al
548 ; SSE42-NEXT: movb %al, 2(%rdi)
549 ; SSE42-NEXT: pextrb $1, %xmm1, %eax
550 ; SSE42-NEXT: andb $1, %al
551 ; SSE42-NEXT: movb %al, 2(%rdi)
552 ; SSE42-NEXT: pextrb $0, %xmm1, %eax
553 ; SSE42-NEXT: andb $1, %al
554 ; SSE42-NEXT: movb %al, 2(%rdi)
555 ; SSE42-NEXT: pextrb $15, %xmm0, %eax
556 ; SSE42-NEXT: andb $1, %al
557 ; SSE42-NEXT: movb %al, (%rdi)
558 ; SSE42-NEXT: pextrb $14, %xmm0, %eax
559 ; SSE42-NEXT: andb $1, %al
560 ; SSE42-NEXT: movb %al, (%rdi)
561 ; SSE42-NEXT: pextrb $13, %xmm0, %eax
562 ; SSE42-NEXT: andb $1, %al
563 ; SSE42-NEXT: movb %al, (%rdi)
564 ; SSE42-NEXT: pextrb $12, %xmm0, %eax
565 ; SSE42-NEXT: andb $1, %al
566 ; SSE42-NEXT: movb %al, (%rdi)
567 ; SSE42-NEXT: pextrb $11, %xmm0, %eax
568 ; SSE42-NEXT: andb $1, %al
569 ; SSE42-NEXT: movb %al, (%rdi)
570 ; SSE42-NEXT: pextrb $10, %xmm0, %eax
571 ; SSE42-NEXT: andb $1, %al
572 ; SSE42-NEXT: movb %al, (%rdi)
573 ; SSE42-NEXT: pextrb $9, %xmm0, %eax
574 ; SSE42-NEXT: andb $1, %al
575 ; SSE42-NEXT: movb %al, (%rdi)
576 ; SSE42-NEXT: pextrb $8, %xmm0, %eax
577 ; SSE42-NEXT: andb $1, %al
578 ; SSE42-NEXT: movb %al, (%rdi)
579 ; SSE42-NEXT: pextrb $7, %xmm0, %eax
580 ; SSE42-NEXT: andb $1, %al
581 ; SSE42-NEXT: movb %al, (%rdi)
582 ; SSE42-NEXT: pextrb $6, %xmm0, %eax
583 ; SSE42-NEXT: andb $1, %al
584 ; SSE42-NEXT: movb %al, (%rdi)
585 ; SSE42-NEXT: pextrb $5, %xmm0, %eax
586 ; SSE42-NEXT: andb $1, %al
587 ; SSE42-NEXT: movb %al, (%rdi)
588 ; SSE42-NEXT: pextrb $4, %xmm0, %eax
589 ; SSE42-NEXT: andb $1, %al
590 ; SSE42-NEXT: movb %al, (%rdi)
591 ; SSE42-NEXT: pextrb $3, %xmm0, %eax
592 ; SSE42-NEXT: andb $1, %al
593 ; SSE42-NEXT: movb %al, (%rdi)
594 ; SSE42-NEXT: pextrb $2, %xmm0, %eax
595 ; SSE42-NEXT: andb $1, %al
596 ; SSE42-NEXT: movb %al, (%rdi)
597 ; SSE42-NEXT: pextrb $1, %xmm0, %eax
598 ; SSE42-NEXT: andb $1, %al
599 ; SSE42-NEXT: movb %al, (%rdi)
600 ; SSE42-NEXT: pextrb $0, %xmm0, %eax
601 ; SSE42-NEXT: andb $1, %al
602 ; SSE42-NEXT: movb %al, (%rdi)
603 ; SSE42-NEXT: movq %rdi, %rax
604 ; SSE42-NEXT: retq
657 ; SSE42-LABEL: test_cmp_v8f64:
658 ; SSE42: # BB#0:
659 ; SSE42-NEXT: cmpltpd %xmm3, %xmm7
660 ; SSE42-NEXT: xorpd %xmm3, %xmm3
661 ; SSE42-NEXT: pblendw {{.*#+}} xmm7 = xmm7[0],xmm3[1,2,3],xmm7[4],xmm3[5,6,7]
662 ; SSE42-NEXT: cmpltpd %xmm2, %xmm6
663 ; SSE42-NEXT: pblendw {{.*#+}} xmm6 = xmm6[0],xmm3[1,2,3],xmm6[4],xmm3[5,6,7]
664 ; SSE42-NEXT: packusdw %xmm7, %xmm6
665 ; SSE42-NEXT: cmpltpd %xmm1, %xmm5
666 ; SSE42-NEXT: pblendw {{.*#+}} xmm5 = xmm5[0],xmm3[1,2,3],xmm5[4],xmm3[5,6,7]
667 ; SSE42-NEXT: cmpltpd %xmm0, %xmm4
668 ; SSE42-NEXT: pblendw {{.*#+}} xmm3 = xmm4[0],xmm3[1,2,3],xmm4[4],xmm3[5,6,7]
669 ; SSE42-NEXT: packusdw %xmm5, %xmm3
670 ; SSE42-NEXT: packusdw %xmm6, %xmm3
671 ; SSE42-NEXT: movdqa %xmm3, %xmm0
672 ; SSE42-NEXT: retq
840 ; SSE42-LABEL: test_cmp_v8i64:
841 ; SSE42: # BB#0:
842 ; SSE42-NEXT: pcmpgtq %xmm7, %xmm3
843 ; SSE42-NEXT: pxor %xmm7, %xmm7
844 ; SSE42-NEXT: pblendw {{.*#+}} xmm3 = xmm3[0],xmm7[1,2,3],xmm3[4],xmm7[5,6,7]
845 ; SSE42-NEXT: pcmpgtq %xmm6, %xmm2
846 ; SSE42-NEXT: pblendw {{.*#+}} xmm2 = xmm2[0],xmm7[1,2,3],xmm2[4],xmm7[5,6,7]
847 ; SSE42-NEXT: packusdw %xmm3, %xmm2
848 ; SSE42-NEXT: pcmpgtq %xmm5, %xmm1
849 ; SSE42-NEXT: pblendw {{.*#+}} xmm1 = xmm1[0],xmm7[1,2,3],xmm1[4],xmm7[5,6,7]
850 ; SSE42-NEXT: pcmpgtq %xmm4, %xmm0
851 ; SSE42-NEXT: pblendw {{.*#+}} xmm0 = xmm0[0],xmm7[1,2,3],xmm0[4],xmm7[5,6,7]
852 ; SSE42-NEXT: packusdw %xmm1, %xmm0
853 ; SSE42-NEXT: packusdw %xmm2, %xmm0
854 ; SSE42-NEXT: retq
1083 ; SSE42-LABEL: test_cmp_v32i16:
1084 ; SSE42: # BB#0:
1085 ; SSE42-NEXT: pcmpgtw %xmm5, %xmm1
1086 ; SSE42-NEXT: movdqa {{.*#+}} xmm5 = <0,2,4,6,8,10,12,14,u,u,u,u,u,u,u,u>
1087 ; SSE42-NEXT: pshufb %xmm5, %xmm1
1088 ; SSE42-NEXT: pcmpgtw %xmm4, %xmm0
1089 ; SSE42-NEXT: pshufb %xmm5, %xmm0
1090 ; SSE42-NEXT: punpcklqdq {{.*#+}} xmm0 = xmm0[0],xmm1[0]
1091 ; SSE42-NEXT: pcmpgtw %xmm7, %xmm3
1092 ; SSE42-NEXT: pshufb %xmm5, %xmm3
1093 ; SSE42-NEXT: pcmpgtw %xmm6, %xmm2
1094 ; SSE42-NEXT: pshufb %xmm5, %xmm2
1095 ; SSE42-NEXT: punpcklqdq {{.*#+}} xmm2 = xmm2[0],xmm3[0]
1096 ; SSE42-NEXT: pextrb $15, %xmm2, %eax
1097 ; SSE42-NEXT: andb $1, %al
1098 ; SSE42-NEXT: movb %al, 2(%rdi)
1099 ; SSE42-NEXT: pextrb $14, %xmm2, %eax
1100 ; SSE42-NEXT: andb $1, %al
1101 ; SSE42-NEXT: movb %al, 2(%rdi)
1102 ; SSE42-NEXT: pextrb $13, %xmm2, %eax
1103 ; SSE42-NEXT: andb $1, %al
1104 ; SSE42-NEXT: movb %al, 2(%rdi)
1105 ; SSE42-NEXT: pextrb $12, %xmm2, %eax
1106 ; SSE42-NEXT: andb $1, %al
1107 ; SSE42-NEXT: movb %al, 2(%rdi)
1108 ; SSE42-NEXT: pextrb $11, %xmm2, %eax
1109 ; SSE42-NEXT: andb $1, %al
1110 ; SSE42-NEXT: movb %al, 2(%rdi)
1111 ; SSE42-NEXT: pextrb $10, %xmm2, %eax
1112 ; SSE42-NEXT: andb $1, %al
1113 ; SSE42-NEXT: movb %al, 2(%rdi)
1114 ; SSE42-NEXT: pextrb $9, %xmm2, %eax
1115 ; SSE42-NEXT: andb $1, %al
1116 ; SSE42-NEXT: movb %al, 2(%rdi)
1117 ; SSE42-NEXT: pextrb $8, %xmm2, %eax
1118 ; SSE42-NEXT: andb $1, %al
1119 ; SSE42-NEXT: movb %al, 2(%rdi)
1120 ; SSE42-NEXT: pextrb $7, %xmm2, %eax
1121 ; SSE42-NEXT: andb $1, %al
1122 ; SSE42-NEXT: movb %al, 2(%rdi)
1123 ; SSE42-NEXT: pextrb $6, %xmm2, %eax
1124 ; SSE42-NEXT: andb $1, %al
1125 ; SSE42-NEXT: movb %al, 2(%rdi)
1126 ; SSE42-NEXT: pextrb $5, %xmm2, %eax
1127 ; SSE42-NEXT: andb $1, %al
1128 ; SSE42-NEXT: movb %al, 2(%rdi)
1129 ; SSE42-NEXT: pextrb $4, %xmm2, %eax
1130 ; SSE42-NEXT: andb $1, %al
1131 ; SSE42-NEXT: movb %al, 2(%rdi)
1132 ; SSE42-NEXT: pextrb $3, %xmm2, %eax
1133 ; SSE42-NEXT: andb $1, %al
1134 ; SSE42-NEXT: movb %al, 2(%rdi)
1135 ; SSE42-NEXT: pextrb $2, %xmm2, %eax
1136 ; SSE42-NEXT: andb $1, %al
1137 ; SSE42-NEXT: movb %al, 2(%rdi)
1138 ; SSE42-NEXT: pextrb $1, %xmm2, %eax
1139 ; SSE42-NEXT: andb $1, %al
1140 ; SSE42-NEXT: movb %al, 2(%rdi)
1141 ; SSE42-NEXT: pextrb $0, %xmm2, %eax
1142 ; SSE42-NEXT: andb $1, %al
1143 ; SSE42-NEXT: movb %al, 2(%rdi)
1144 ; SSE42-NEXT: pextrb $15, %xmm0, %eax
1145 ; SSE42-NEXT: andb $1, %al
1146 ; SSE42-NEXT: movb %al, (%rdi)
1147 ; SSE42-NEXT: pextrb $14, %xmm0, %eax
1148 ; SSE42-NEXT: andb $1, %al
1149 ; SSE42-NEXT: movb %al, (%rdi)
1150 ; SSE42-NEXT: pextrb $13, %xmm0, %eax
1151 ; SSE42-NEXT: andb $1, %al
1152 ; SSE42-NEXT: movb %al, (%rdi)
1153 ; SSE42-NEXT: pextrb $12, %xmm0, %eax
1154 ; SSE42-NEXT: andb $1, %al
1155 ; SSE42-NEXT: movb %al, (%rdi)
1156 ; SSE42-NEXT: pextrb $11, %xmm0, %eax
1157 ; SSE42-NEXT: andb $1, %al
1158 ; SSE42-NEXT: movb %al, (%rdi)
1159 ; SSE42-NEXT: pextrb $10, %xmm0, %eax
1160 ; SSE42-NEXT: andb $1, %al
1161 ; SSE42-NEXT: movb %al, (%rdi)
1162 ; SSE42-NEXT: pextrb $9, %xmm0, %eax
1163 ; SSE42-NEXT: andb $1, %al
1164 ; SSE42-NEXT: movb %al, (%rdi)
1165 ; SSE42-NEXT: pextrb $8, %xmm0, %eax
1166 ; SSE42-NEXT: andb $1, %al
1167 ; SSE42-NEXT: movb %al, (%rdi)
1168 ; SSE42-NEXT: pextrb $7, %xmm0, %eax
1169 ; SSE42-NEXT: andb $1, %al
1170 ; SSE42-NEXT: movb %al, (%rdi)
1171 ; SSE42-NEXT: pextrb $6, %xmm0, %eax
1172 ; SSE42-NEXT: andb $1, %al
1173 ; SSE42-NEXT: movb %al, (%rdi)
1174 ; SSE42-NEXT: pextrb $5, %xmm0, %eax
1175 ; SSE42-NEXT: andb $1, %al
1176 ; SSE42-NEXT: movb %al, (%rdi)
1177 ; SSE42-NEXT: pextrb $4, %xmm0, %eax
1178 ; SSE42-NEXT: andb $1, %al
1179 ; SSE42-NEXT: movb %al, (%rdi)
1180 ; SSE42-NEXT: pextrb $3, %xmm0, %eax
1181 ; SSE42-NEXT: andb $1, %al
1182 ; SSE42-NEXT: movb %al, (%rdi)
1183 ; SSE42-NEXT: pextrb $2, %xmm0, %eax
1184 ; SSE42-NEXT: andb $1, %al
1185 ; SSE42-NEXT: movb %al, (%rdi)
1186 ; SSE42-NEXT: pextrb $1, %xmm0, %eax
1187 ; SSE42-NEXT: andb $1, %al
1188 ; SSE42-NEXT: movb %al, (%rdi)
1189 ; SSE42-NEXT: pextrb $0, %xmm0, %eax
1190 ; SSE42-NEXT: andb $1, %al
1191 ; SSE42-NEXT: movb %al, (%rdi)
1192 ; SSE42-NEXT: movq %rdi, %rax
1193 ; SSE42-NEXT: retq
1451 ; SSE42-LABEL: test_cmp_v64i8:
1452 ; SSE42: # BB#0:
1453 ; SSE42-NEXT: pcmpgtb %xmm4, %xmm0
1454 ; SSE42-NEXT: pcmpgtb %xmm5, %xmm1
1455 ; SSE42-NEXT: pcmpgtb %xmm6, %xmm2
1456 ; SSE42-NEXT: pcmpgtb %xmm7, %xmm3
1457 ; SSE42-NEXT: pextrb $15, %xmm3, %eax
1458 ; SSE42-NEXT: andb $1, %al
1459 ; SSE42-NEXT: movb %al, 6(%rdi)
1460 ; SSE42-NEXT: pextrb $14, %xmm3, %eax
1461 ; SSE42-NEXT: andb $1, %al
1462 ; SSE42-NEXT: movb %al, 6(%rdi)
1463 ; SSE42-NEXT: pextrb $13, %xmm3, %eax
1464 ; SSE42-NEXT: andb $1, %al
1465 ; SSE42-NEXT: movb %al, 6(%rdi)
1466 ; SSE42-NEXT: pextrb $12, %xmm3, %eax
1467 ; SSE42-NEXT: andb $1, %al
1468 ; SSE42-NEXT: movb %al, 6(%rdi)
1469 ; SSE42-NEXT: pextrb $11, %xmm3, %eax
1470 ; SSE42-NEXT: andb $1, %al
1471 ; SSE42-NEXT: movb %al, 6(%rdi)
1472 ; SSE42-NEXT: pextrb $10, %xmm3, %eax
1473 ; SSE42-NEXT: andb $1, %al
1474 ; SSE42-NEXT: movb %al, 6(%rdi)
1475 ; SSE42-NEXT: pextrb $9, %xmm3, %eax
1476 ; SSE42-NEXT: andb $1, %al
1477 ; SSE42-NEXT: movb %al, 6(%rdi)
1478 ; SSE42-NEXT: pextrb $8, %xmm3, %eax
1479 ; SSE42-NEXT: andb $1, %al
1480 ; SSE42-NEXT: movb %al, 6(%rdi)
1481 ; SSE42-NEXT: pextrb $7, %xmm3, %eax
1482 ; SSE42-NEXT: andb $1, %al
1483 ; SSE42-NEXT: movb %al, 6(%rdi)
1484 ; SSE42-NEXT: pextrb $6, %xmm3, %eax
1485 ; SSE42-NEXT: andb $1, %al
1486 ; SSE42-NEXT: movb %al, 6(%rdi)
1487 ; SSE42-NEXT: pextrb $5, %xmm3, %eax
1488 ; SSE42-NEXT: andb $1, %al
1489 ; SSE42-NEXT: movb %al, 6(%rdi)
1490 ; SSE42-NEXT: pextrb $4, %xmm3, %eax
1491 ; SSE42-NEXT: andb $1, %al
1492 ; SSE42-NEXT: movb %al, 6(%rdi)
1493 ; SSE42-NEXT: pextrb $3, %xmm3, %eax
1494 ; SSE42-NEXT: andb $1, %al
1495 ; SSE42-NEXT: movb %al, 6(%rdi)
1496 ; SSE42-NEXT: pextrb $2, %xmm3, %eax
1497 ; SSE42-NEXT: andb $1, %al
1498 ; SSE42-NEXT: movb %al, 6(%rdi)
1499 ; SSE42-NEXT: pextrb $1, %xmm3, %eax
1500 ; SSE42-NEXT: andb $1, %al
1501 ; SSE42-NEXT: movb %al, 6(%rdi)
1502 ; SSE42-NEXT: pextrb $0, %xmm3, %eax
1503 ; SSE42-NEXT: andb $1, %al
1504 ; SSE42-NEXT: movb %al, 6(%rdi)
1505 ; SSE42-NEXT: pextrb $15, %xmm2, %eax
1506 ; SSE42-NEXT: andb $1, %al
1507 ; SSE42-NEXT: movb %al, 4(%rdi)
1508 ; SSE42-NEXT: pextrb $14, %xmm2, %eax
1509 ; SSE42-NEXT: andb $1, %al
1510 ; SSE42-NEXT: movb %al, 4(%rdi)
1511 ; SSE42-NEXT: pextrb $13, %xmm2, %eax
1512 ; SSE42-NEXT: andb $1, %al
1513 ; SSE42-NEXT: movb %al, 4(%rdi)
1514 ; SSE42-NEXT: pextrb $12, %xmm2, %eax
1515 ; SSE42-NEXT: andb $1, %al
1516 ; SSE42-NEXT: movb %al, 4(%rdi)
1517 ; SSE42-NEXT: pextrb $11, %xmm2, %eax
1518 ; SSE42-NEXT: andb $1, %al
1519 ; SSE42-NEXT: movb %al, 4(%rdi)
1520 ; SSE42-NEXT: pextrb $10, %xmm2, %eax
1521 ; SSE42-NEXT: andb $1, %al
1522 ; SSE42-NEXT: movb %al, 4(%rdi)
1523 ; SSE42-NEXT: pextrb $9, %xmm2, %eax
1524 ; SSE42-NEXT: andb $1, %al
1525 ; SSE42-NEXT: movb %al, 4(%rdi)
1526 ; SSE42-NEXT: pextrb $8, %xmm2, %eax
1527 ; SSE42-NEXT: andb $1, %al
1528 ; SSE42-NEXT: movb %al, 4(%rdi)
1529 ; SSE42-NEXT: pextrb $7, %xmm2, %eax
1530 ; SSE42-NEXT: andb $1, %al
1531 ; SSE42-NEXT: movb %al, 4(%rdi)
1532 ; SSE42-NEXT: pextrb $6, %xmm2, %eax
1533 ; SSE42-NEXT: andb $1, %al
1534 ; SSE42-NEXT: movb %al, 4(%rdi)
1535 ; SSE42-NEXT: pextrb $5, %xmm2, %eax
1536 ; SSE42-NEXT: andb $1, %al
1537 ; SSE42-NEXT: movb %al, 4(%rdi)
1538 ; SSE42-NEXT: pextrb $4, %xmm2, %eax
1539 ; SSE42-NEXT: andb $1, %al
1540 ; SSE42-NEXT: movb %al, 4(%rdi)
1541 ; SSE42-NEXT: pextrb $3, %xmm2, %eax
1542 ; SSE42-NEXT: andb $1, %al
1543 ; SSE42-NEXT: movb %al, 4(%rdi)
1544 ; SSE42-NEXT: pextrb $2, %xmm2, %eax
1545 ; SSE42-NEXT: andb $1, %al
1546 ; SSE42-NEXT: movb %al, 4(%rdi)
1547 ; SSE42-NEXT: pextrb $1, %xmm2, %eax
1548 ; SSE42-NEXT: andb $1, %al
1549 ; SSE42-NEXT: movb %al, 4(%rdi)
1550 ; SSE42-NEXT: pextrb $0, %xmm2, %eax
1551 ; SSE42-NEXT: andb $1, %al
1552 ; SSE42-NEXT: movb %al, 4(%rdi)
1553 ; SSE42-NEXT: pextrb $15, %xmm1, %eax
1554 ; SSE42-NEXT: andb $1, %al
1555 ; SSE42-NEXT: movb %al, 2(%rdi)
1556 ; SSE42-NEXT: pextrb $14, %xmm1, %eax
1557 ; SSE42-NEXT: andb $1, %al
1558 ; SSE42-NEXT: movb %al, 2(%rdi)
1559 ; SSE42-NEXT: pextrb $13, %xmm1, %eax
1560 ; SSE42-NEXT: andb $1, %al
1561 ; SSE42-NEXT: movb %al, 2(%rdi)
1562 ; SSE42-NEXT: pextrb $12, %xmm1, %eax
1563 ; SSE42-NEXT: andb $1, %al
1564 ; SSE42-NEXT: movb %al, 2(%rdi)
1565 ; SSE42-NEXT: pextrb $11, %xmm1, %eax
1566 ; SSE42-NEXT: andb $1, %al
1567 ; SSE42-NEXT: movb %al, 2(%rdi)
1568 ; SSE42-NEXT: pextrb $10, %xmm1, %eax
1569 ; SSE42-NEXT: andb $1, %al
1570 ; SSE42-NEXT: movb %al, 2(%rdi)
1571 ; SSE42-NEXT: pextrb $9, %xmm1, %eax
1572 ; SSE42-NEXT: andb $1, %al
1573 ; SSE42-NEXT: movb %al, 2(%rdi)
1574 ; SSE42-NEXT: pextrb $8, %xmm1, %eax
1575 ; SSE42-NEXT: andb $1, %al
1576 ; SSE42-NEXT: movb %al, 2(%rdi)
1577 ; SSE42-NEXT: pextrb $7, %xmm1, %eax
1578 ; SSE42-NEXT: andb $1, %al
1579 ; SSE42-NEXT: movb %al, 2(%rdi)
1580 ; SSE42-NEXT: pextrb $6, %xmm1, %eax
1581 ; SSE42-NEXT: andb $1, %al
1582 ; SSE42-NEXT: movb %al, 2(%rdi)
1583 ; SSE42-NEXT: pextrb $5, %xmm1, %eax
1584 ; SSE42-NEXT: andb $1, %al
1585 ; SSE42-NEXT: movb %al, 2(%rdi)
1586 ; SSE42-NEXT: pextrb $4, %xmm1, %eax
1587 ; SSE42-NEXT: andb $1, %al
1588 ; SSE42-NEXT: movb %al, 2(%rdi)
1589 ; SSE42-NEXT: pextrb $3, %xmm1, %eax
1590 ; SSE42-NEXT: andb $1, %al
1591 ; SSE42-NEXT: movb %al, 2(%rdi)
1592 ; SSE42-NEXT: pextrb $2, %xmm1, %eax
1593 ; SSE42-NEXT: andb $1, %al
1594 ; SSE42-NEXT: movb %al, 2(%rdi)
1595 ; SSE42-NEXT: pextrb $1, %xmm1, %eax
1596 ; SSE42-NEXT: andb $1, %al
1597 ; SSE42-NEXT: movb %al, 2(%rdi)
1598 ; SSE42-NEXT: pextrb $0, %xmm1, %eax
1599 ; SSE42-NEXT: andb $1, %al
1600 ; SSE42-NEXT: movb %al, 2(%rdi)
1601 ; SSE42-NEXT: pextrb $15, %xmm0, %eax
1602 ; SSE42-NEXT: andb $1, %al
1603 ; SSE42-NEXT: movb %al, (%rdi)
1604 ; SSE42-NEXT: pextrb $14, %xmm0, %eax
1605 ; SSE42-NEXT: andb $1, %al
1606 ; SSE42-NEXT: movb %al, (%rdi)
1607 ; SSE42-NEXT: pextrb $13, %xmm0, %eax
1608 ; SSE42-NEXT: andb $1, %al
1609 ; SSE42-NEXT: movb %al, (%rdi)
1610 ; SSE42-NEXT: pextrb $12, %xmm0, %eax
1611 ; SSE42-NEXT: andb $1, %al
1612 ; SSE42-NEXT: movb %al, (%rdi)
1613 ; SSE42-NEXT: pextrb $11, %xmm0, %eax
1614 ; SSE42-NEXT: andb $1, %al
1615 ; SSE42-NEXT: movb %al, (%rdi)
1616 ; SSE42-NEXT: pextrb $10, %xmm0, %eax
1617 ; SSE42-NEXT: andb $1, %al
1618 ; SSE42-NEXT: movb %al, (%rdi)
1619 ; SSE42-NEXT: pextrb $9, %xmm0, %eax
1620 ; SSE42-NEXT: andb $1, %al
1621 ; SSE42-NEXT: movb %al, (%rdi)
1622 ; SSE42-NEXT: pextrb $8, %xmm0, %eax
1623 ; SSE42-NEXT: andb $1, %al
1624 ; SSE42-NEXT: movb %al, (%rdi)
1625 ; SSE42-NEXT: pextrb $7, %xmm0, %eax
1626 ; SSE42-NEXT: andb $1, %al
1627 ; SSE42-NEXT: movb %al, (%rdi)
1628 ; SSE42-NEXT: pextrb $6, %xmm0, %eax
1629 ; SSE42-NEXT: andb $1, %al
1630 ; SSE42-NEXT: movb %al, (%rdi)
1631 ; SSE42-NEXT: pextrb $5, %xmm0, %eax
1632 ; SSE42-NEXT: andb $1, %al
1633 ; SSE42-NEXT: movb %al, (%rdi)
1634 ; SSE42-NEXT: pextrb $4, %xmm0, %eax
1635 ; SSE42-NEXT: andb $1, %al
1636 ; SSE42-NEXT: movb %al, (%rdi)
1637 ; SSE42-NEXT: pextrb $3, %xmm0, %eax
1638 ; SSE42-NEXT: andb $1, %al
1639 ; SSE42-NEXT: movb %al, (%rdi)
1640 ; SSE42-NEXT: pextrb $2, %xmm0, %eax
1641 ; SSE42-NEXT: andb $1, %al
1642 ; SSE42-NEXT: movb %al, (%rdi)
1643 ; SSE42-NEXT: pextrb $1, %xmm0, %eax
1644 ; SSE42-NEXT: andb $1, %al
1645 ; SSE42-NEXT: movb %al, (%rdi)
1646 ; SSE42-NEXT: pextrb $0, %xmm0, %eax
1647 ; SSE42-NEXT: andb $1, %al
1648 ; SSE42-NEXT: movb %al, (%rdi)
1649 ; SSE42-NEXT: movq %rdi, %rax
1650 ; SSE42-NEXT: retq
2465 ; SSE42-LABEL: test_cmp_v32f32:
2466 ; SSE42: # BB#0:
2467 ; SSE42-NEXT: movaps {{[0-9]+}}(%rsp), %xmm9
2468 ; SSE42-NEXT: movaps {{[0-9]+}}(%rsp), %xmm11
2469 ; SSE42-NEXT: movaps {{[0-9]+}}(%rsp), %xmm10
2470 ; SSE42-NEXT: movaps {{[0-9]+}}(%rsp), %xmm12
2471 ; SSE42-NEXT: movaps {{[0-9]+}}(%rsp), %xmm8
2472 ; SSE42-NEXT: movaps {{[0-9]+}}(%rsp), %xmm14
2473 ; SSE42-NEXT: movaps {{[0-9]+}}(%rsp), %xmm13
2474 ; SSE42-NEXT: movaps {{[0-9]+}}(%rsp), %xmm15
2475 ; SSE42-NEXT: cmpltps %xmm3, %xmm15
2476 ; SSE42-NEXT: movdqa {{.*#+}} xmm3 = [0,1,4,5,8,9,12,13,8,9,12,13,12,13,14,15]
2477 ; SSE42-NEXT: pshufb %xmm3, %xmm15
2478 ; SSE42-NEXT: cmpltps %xmm2, %xmm13
2479 ; SSE42-NEXT: pshufb %xmm3, %xmm13
2480 ; SSE42-NEXT: punpcklqdq {{.*#+}} xmm13 = xmm13[0],xmm15[0]
2481 ; SSE42-NEXT: psllw $15, %xmm13
2482 ; SSE42-NEXT: psraw $15, %xmm13
2483 ; SSE42-NEXT: movdqa {{.*#+}} xmm2 = <0,2,4,6,8,10,12,14,u,u,u,u,u,u,u,u>
2484 ; SSE42-NEXT: pshufb %xmm2, %xmm13
2485 ; SSE42-NEXT: cmpltps %xmm1, %xmm14
2486 ; SSE42-NEXT: pshufb %xmm3, %xmm14
2487 ; SSE42-NEXT: cmpltps %xmm0, %xmm8
2488 ; SSE42-NEXT: pshufb %xmm3, %xmm8
2489 ; SSE42-NEXT: punpcklqdq {{.*#+}} xmm8 = xmm8[0],xmm14[0]
2490 ; SSE42-NEXT: psllw $15, %xmm8
2491 ; SSE42-NEXT: psraw $15, %xmm8
2492 ; SSE42-NEXT: pshufb %xmm2, %xmm8
2493 ; SSE42-NEXT: punpcklqdq {{.*#+}} xmm8 = xmm8[0],xmm13[0]
2494 ; SSE42-NEXT: cmpltps %xmm7, %xmm12
2495 ; SSE42-NEXT: pshufb %xmm3, %xmm12
2496 ; SSE42-NEXT: cmpltps %xmm6, %xmm10
2497 ; SSE42-NEXT: pshufb %xmm3, %xmm10
2498 ; SSE42-NEXT: punpcklqdq {{.*#+}} xmm10 = xmm10[0],xmm12[0]
2499 ; SSE42-NEXT: psllw $15, %xmm10
2500 ; SSE42-NEXT: psraw $15, %xmm10
2501 ; SSE42-NEXT: pshufb %xmm2, %xmm10
2502 ; SSE42-NEXT: cmpltps %xmm5, %xmm11
2503 ; SSE42-NEXT: pshufb %xmm3, %xmm11
2504 ; SSE42-NEXT: cmpltps %xmm4, %xmm9
2505 ; SSE42-NEXT: pshufb %xmm3, %xmm9
2506 ; SSE42-NEXT: punpcklqdq {{.*#+}} xmm9 = xmm9[0],xmm11[0]
2507 ; SSE42-NEXT: psllw $15, %xmm9
2508 ; SSE42-NEXT: psraw $15, %xmm9
2509 ; SSE42-NEXT: pshufb %xmm2, %xmm9
2510 ; SSE42-NEXT: punpcklqdq {{.*#+}} xmm9 = xmm9[0],xmm10[0]
2511 ; SSE42-NEXT: pextrb $15, %xmm9, %eax
2512 ; SSE42-NEXT: andb $1, %al
2513 ; SSE42-NEXT: movb %al, 2(%rdi)
2514 ; SSE42-NEXT: pextrb $14, %xmm9, %eax
2515 ; SSE42-NEXT: andb $1, %al
2516 ; SSE42-NEXT: movb %al, 2(%rdi)
2517 ; SSE42-NEXT: pextrb $13, %xmm9, %eax
2518 ; SSE42-NEXT: andb $1, %al
2519 ; SSE42-NEXT: movb %al, 2(%rdi)
2520 ; SSE42-NEXT: pextrb $12, %xmm9, %eax
2521 ; SSE42-NEXT: andb $1, %al
2522 ; SSE42-NEXT: movb %al, 2(%rdi)
2523 ; SSE42-NEXT: pextrb $11, %xmm9, %eax
2524 ; SSE42-NEXT: andb $1, %al
2525 ; SSE42-NEXT: movb %al, 2(%rdi)
2526 ; SSE42-NEXT: pextrb $10, %xmm9, %eax
2527 ; SSE42-NEXT: andb $1, %al
2528 ; SSE42-NEXT: movb %al, 2(%rdi)
2529 ; SSE42-NEXT: pextrb $9, %xmm9, %eax
2530 ; SSE42-NEXT: andb $1, %al
2531 ; SSE42-NEXT: movb %al, 2(%rdi)
2532 ; SSE42-NEXT: pextrb $8, %xmm9, %eax
2533 ; SSE42-NEXT: andb $1, %al
2534 ; SSE42-NEXT: movb %al, 2(%rdi)
2535 ; SSE42-NEXT: pextrb $7, %xmm9, %eax
2536 ; SSE42-NEXT: andb $1, %al
2537 ; SSE42-NEXT: movb %al, 2(%rdi)
2538 ; SSE42-NEXT: pextrb $6, %xmm9, %eax
2539 ; SSE42-NEXT: andb $1, %al
2540 ; SSE42-NEXT: movb %al, 2(%rdi)
2541 ; SSE42-NEXT: pextrb $5, %xmm9, %eax
2542 ; SSE42-NEXT: andb $1, %al
2543 ; SSE42-NEXT: movb %al, 2(%rdi)
2544 ; SSE42-NEXT: pextrb $4, %xmm9, %eax
2545 ; SSE42-NEXT: andb $1, %al
2546 ; SSE42-NEXT: movb %al, 2(%rdi)
2547 ; SSE42-NEXT: pextrb $3, %xmm9, %eax
2548 ; SSE42-NEXT: andb $1, %al
2549 ; SSE42-NEXT: movb %al, 2(%rdi)
2550 ; SSE42-NEXT: pextrb $2, %xmm9, %eax
2551 ; SSE42-NEXT: andb $1, %al
2552 ; SSE42-NEXT: movb %al, 2(%rdi)
2553 ; SSE42-NEXT: pextrb $1, %xmm9, %eax
2554 ; SSE42-NEXT: andb $1, %al
2555 ; SSE42-NEXT: movb %al, 2(%rdi)
2556 ; SSE42-NEXT: pextrb $0, %xmm9, %eax
2557 ; SSE42-NEXT: andb $1, %al
2558 ; SSE42-NEXT: movb %al, 2(%rdi)
2559 ; SSE42-NEXT: pextrb $15, %xmm8, %eax
2560 ; SSE42-NEXT: andb $1, %al
2561 ; SSE42-NEXT: movb %al, (%rdi)
2562 ; SSE42-NEXT: pextrb $14, %xmm8, %eax
2563 ; SSE42-NEXT: andb $1, %al
2564 ; SSE42-NEXT: movb %al, (%rdi)
2565 ; SSE42-NEXT: pextrb $13, %xmm8, %eax
2566 ; SSE42-NEXT: andb $1, %al
2567 ; SSE42-NEXT: movb %al, (%rdi)
2568 ; SSE42-NEXT: pextrb $12, %xmm8, %eax
2569 ; SSE42-NEXT: andb $1, %al
2570 ; SSE42-NEXT: movb %al, (%rdi)
2571 ; SSE42-NEXT: pextrb $11, %xmm8, %eax
2572 ; SSE42-NEXT: andb $1, %al
2573 ; SSE42-NEXT: movb %al, (%rdi)
2574 ; SSE42-NEXT: pextrb $10, %xmm8, %eax
2575 ; SSE42-NEXT: andb $1, %al
2576 ; SSE42-NEXT: movb %al, (%rdi)
2577 ; SSE42-NEXT: pextrb $9, %xmm8, %eax
2578 ; SSE42-NEXT: andb $1, %al
2579 ; SSE42-NEXT: movb %al, (%rdi)
2580 ; SSE42-NEXT: pextrb $8, %xmm8, %eax
2581 ; SSE42-NEXT: andb $1, %al
2582 ; SSE42-NEXT: movb %al, (%rdi)
2583 ; SSE42-NEXT: pextrb $7, %xmm8, %eax
2584 ; SSE42-NEXT: andb $1, %al
2585 ; SSE42-NEXT: movb %al, (%rdi)
2586 ; SSE42-NEXT: pextrb $6, %xmm8, %eax
2587 ; SSE42-NEXT: andb $1, %al
2588 ; SSE42-NEXT: movb %al, (%rdi)
2589 ; SSE42-NEXT: pextrb $5, %xmm8, %eax
2590 ; SSE42-NEXT: andb $1, %al
2591 ; SSE42-NEXT: movb %al, (%rdi)
2592 ; SSE42-NEXT: pextrb $4, %xmm8, %eax
2593 ; SSE42-NEXT: andb $1, %al
2594 ; SSE42-NEXT: movb %al, (%rdi)
2595 ; SSE42-NEXT: pextrb $3, %xmm8, %eax
2596 ; SSE42-NEXT: andb $1, %al
2597 ; SSE42-NEXT: movb %al, (%rdi)
2598 ; SSE42-NEXT: pextrb $2, %xmm8, %eax
2599 ; SSE42-NEXT: andb $1, %al
2600 ; SSE42-NEXT: movb %al, (%rdi)
2601 ; SSE42-NEXT: pextrb $1, %xmm8, %eax
2602 ; SSE42-NEXT: andb $1, %al
2603 ; SSE42-NEXT: movb %al, (%rdi)
2604 ; SSE42-NEXT: pextrb $0, %xmm8, %eax
2605 ; SSE42-NEXT: andb $1, %al
2606 ; SSE42-NEXT: movb %al, (%rdi)
2607 ; SSE42-NEXT: movq %rdi, %rax
2608 ; SSE42-NEXT: retq
2977 ; SSE42-LABEL: test_cmp_v16i64:
2978 ; SSE42: # BB#0:
2979 ; SSE42-NEXT: pcmpgtq {{[0-9]+}}(%rsp), %xmm7
2980 ; SSE42-NEXT: movdqa {{.*#+}} xmm8 = [255,0,0,0,0,0,0,0,255,0,0,0,0,0,0,0]
2981 ; SSE42-NEXT: pand %xmm8, %xmm7
2982 ; SSE42-NEXT: pcmpgtq {{[0-9]+}}(%rsp), %xmm6
2983 ; SSE42-NEXT: pand %xmm8, %xmm6
2984 ; SSE42-NEXT: packuswb %xmm7, %xmm6
2985 ; SSE42-NEXT: pcmpgtq {{[0-9]+}}(%rsp), %xmm5
2986 ; SSE42-NEXT: pand %xmm8, %xmm5
2987 ; SSE42-NEXT: pcmpgtq {{[0-9]+}}(%rsp), %xmm4
2988 ; SSE42-NEXT: pand %xmm8, %xmm4
2989 ; SSE42-NEXT: packuswb %xmm5, %xmm4
2990 ; SSE42-NEXT: packuswb %xmm6, %xmm4
2991 ; SSE42-NEXT: pcmpgtq {{[0-9]+}}(%rsp), %xmm3
2992 ; SSE42-NEXT: pand %xmm8, %xmm3
2993 ; SSE42-NEXT: pcmpgtq {{[0-9]+}}(%rsp), %xmm2
2994 ; SSE42-NEXT: pand %xmm8, %xmm2
2995 ; SSE42-NEXT: packuswb %xmm3, %xmm2
2996 ; SSE42-NEXT: pcmpgtq {{[0-9]+}}(%rsp), %xmm1
2997 ; SSE42-NEXT: pand %xmm8, %xmm1
2998 ; SSE42-NEXT: pcmpgtq {{[0-9]+}}(%rsp), %xmm0
2999 ; SSE42-NEXT: pand %xmm8, %xmm0
3000 ; SSE42-NEXT: packuswb %xmm1, %xmm0
3001 ; SSE42-NEXT: packuswb %xmm2, %xmm0
3002 ; SSE42-NEXT: packuswb %xmm4, %xmm0
3003 ; SSE42-NEXT: retq
3359 ; SSE42-LABEL: test_cmp_v32i32:
3360 ; SSE42: # BB#0:
3361 ; SSE42-NEXT: pcmpgtd {{[0-9]+}}(%rsp), %xmm3
3362 ; SSE42-NEXT: movdqa {{.*#+}} xmm8 = [0,1,4,5,8,9,12,13,8,9,12,13,12,13,14,15]
3363 ; SSE42-NEXT: pshufb %xmm8, %xmm3
3364 ; SSE42-NEXT: pcmpgtd {{[0-9]+}}(%rsp), %xmm2
3365 ; SSE42-NEXT: pshufb %xmm8, %xmm2
3366 ; SSE42-NEXT: punpcklqdq {{.*#+}} xmm2 = xmm2[0],xmm3[0]
3367 ; SSE42-NEXT: psllw $15, %xmm2
3368 ; SSE42-NEXT: psraw $15, %xmm2
3369 ; SSE42-NEXT: movdqa {{.*#+}} xmm3 = <0,2,4,6,8,10,12,14,u,u,u,u,u,u,u,u>
3370 ; SSE42-NEXT: pshufb %xmm3, %xmm2
3371 ; SSE42-NEXT: pcmpgtd {{[0-9]+}}(%rsp), %xmm1
3372 ; SSE42-NEXT: pshufb %xmm8, %xmm1
3373 ; SSE42-NEXT: pcmpgtd {{[0-9]+}}(%rsp), %xmm0
3374 ; SSE42-NEXT: pshufb %xmm8, %xmm0
3375 ; SSE42-NEXT: punpcklqdq {{.*#+}} xmm0 = xmm0[0],xmm1[0]
3376 ; SSE42-NEXT: psllw $15, %xmm0
3377 ; SSE42-NEXT: psraw $15, %xmm0
3378 ; SSE42-NEXT: pshufb %xmm3, %xmm0
3379 ; SSE42-NEXT: punpcklqdq {{.*#+}} xmm0 = xmm0[0],xmm2[0]
3380 ; SSE42-NEXT: pcmpgtd {{[0-9]+}}(%rsp), %xmm7
3381 ; SSE42-NEXT: pshufb %xmm8, %xmm7
3382 ; SSE42-NEXT: pcmpgtd {{[0-9]+}}(%rsp), %xmm6
3383 ; SSE42-NEXT: pshufb %xmm8, %xmm6
3384 ; SSE42-NEXT: punpcklqdq {{.*#+}} xmm6 = xmm6[0],xmm7[0]
3385 ; SSE42-NEXT: psllw $15, %xmm6
3386 ; SSE42-NEXT: psraw $15, %xmm6
3387 ; SSE42-NEXT: pshufb %xmm3, %xmm6
3388 ; SSE42-NEXT: pcmpgtd {{[0-9]+}}(%rsp), %xmm5
3389 ; SSE42-NEXT: pshufb %xmm8, %xmm5
3390 ; SSE42-NEXT: pcmpgtd {{[0-9]+}}(%rsp), %xmm4
3391 ; SSE42-NEXT: pshufb %xmm8, %xmm4
3392 ; SSE42-NEXT: punpcklqdq {{.*#+}} xmm4 = xmm4[0],xmm5[0]
3393 ; SSE42-NEXT: psllw $15, %xmm4
3394 ; SSE42-NEXT: psraw $15, %xmm4
3395 ; SSE42-NEXT: pshufb %xmm3, %xmm4
3396 ; SSE42-NEXT: punpcklqdq {{.*#+}} xmm4 = xmm4[0],xmm6[0]
3397 ; SSE42-NEXT: pextrb $15, %xmm4, %eax
3398 ; SSE42-NEXT: andb $1, %al
3399 ; SSE42-NEXT: movb %al, 2(%rdi)
3400 ; SSE42-NEXT: pextrb $14, %xmm4, %eax
3401 ; SSE42-NEXT: andb $1, %al
3402 ; SSE42-NEXT: movb %al, 2(%rdi)
3403 ; SSE42-NEXT: pextrb $13, %xmm4, %eax
3404 ; SSE42-NEXT: andb $1, %al
3405 ; SSE42-NEXT: movb %al, 2(%rdi)
3406 ; SSE42-NEXT: pextrb $12, %xmm4, %eax
3407 ; SSE42-NEXT: andb $1, %al
3408 ; SSE42-NEXT: movb %al, 2(%rdi)
3409 ; SSE42-NEXT: pextrb $11, %xmm4, %eax
3410 ; SSE42-NEXT: andb $1, %al
3411 ; SSE42-NEXT: movb %al, 2(%rdi)
3412 ; SSE42-NEXT: pextrb $10, %xmm4, %eax
3413 ; SSE42-NEXT: andb $1, %al
3414 ; SSE42-NEXT: movb %al, 2(%rdi)
3415 ; SSE42-NEXT: pextrb $9, %xmm4, %eax
3416 ; SSE42-NEXT: andb $1, %al
3417 ; SSE42-NEXT: movb %al, 2(%rdi)
3418 ; SSE42-NEXT: pextrb $8, %xmm4, %eax
3419 ; SSE42-NEXT: andb $1, %al
3420 ; SSE42-NEXT: movb %al, 2(%rdi)
3421 ; SSE42-NEXT: pextrb $7, %xmm4, %eax
3422 ; SSE42-NEXT: andb $1, %al
3423 ; SSE42-NEXT: movb %al, 2(%rdi)
3424 ; SSE42-NEXT: pextrb $6, %xmm4, %eax
3425 ; SSE42-NEXT: andb $1, %al
3426 ; SSE42-NEXT: movb %al, 2(%rdi)
3427 ; SSE42-NEXT: pextrb $5, %xmm4, %eax
3428 ; SSE42-NEXT: andb $1, %al
3429 ; SSE42-NEXT: movb %al, 2(%rdi)
3430 ; SSE42-NEXT: pextrb $4, %xmm4, %eax
3431 ; SSE42-NEXT: andb $1, %al
3432 ; SSE42-NEXT: movb %al, 2(%rdi)
3433 ; SSE42-NEXT: pextrb $3, %xmm4, %eax
3434 ; SSE42-NEXT: andb $1, %al
3435 ; SSE42-NEXT: movb %al, 2(%rdi)
3436 ; SSE42-NEXT: pextrb $2, %xmm4, %eax
3437 ; SSE42-NEXT: andb $1, %al
3438 ; SSE42-NEXT: movb %al, 2(%rdi)
3439 ; SSE42-NEXT: pextrb $1, %xmm4, %eax
3440 ; SSE42-NEXT: andb $1, %al
3441 ; SSE42-NEXT: movb %al, 2(%rdi)
3442 ; SSE42-NEXT: pextrb $0, %xmm4, %eax
3443 ; SSE42-NEXT: andb $1, %al
3444 ; SSE42-NEXT: movb %al, 2(%rdi)
3445 ; SSE42-NEXT: pextrb $15, %xmm0, %eax
3446 ; SSE42-NEXT: andb $1, %al
3447 ; SSE42-NEXT: movb %al, (%rdi)
3448 ; SSE42-NEXT: pextrb $14, %xmm0, %eax
3449 ; SSE42-NEXT: andb $1, %al
3450 ; SSE42-NEXT: movb %al, (%rdi)
3451 ; SSE42-NEXT: pextrb $13, %xmm0, %eax
3452 ; SSE42-NEXT: andb $1, %al
3453 ; SSE42-NEXT: movb %al, (%rdi)
3454 ; SSE42-NEXT: pextrb $12, %xmm0, %eax
3455 ; SSE42-NEXT: andb $1, %al
3456 ; SSE42-NEXT: movb %al, (%rdi)
3457 ; SSE42-NEXT: pextrb $11, %xmm0, %eax
3458 ; SSE42-NEXT: andb $1, %al
3459 ; SSE42-NEXT: movb %al, (%rdi)
3460 ; SSE42-NEXT: pextrb $10, %xmm0, %eax
3461 ; SSE42-NEXT: andb $1, %al
3462 ; SSE42-NEXT: movb %al, (%rdi)
3463 ; SSE42-NEXT: pextrb $9, %xmm0, %eax
3464 ; SSE42-NEXT: andb $1, %al
3465 ; SSE42-NEXT: movb %al, (%rdi)
3466 ; SSE42-NEXT: pextrb $8, %xmm0, %eax
3467 ; SSE42-NEXT: andb $1, %al
3468 ; SSE42-NEXT: movb %al, (%rdi)
3469 ; SSE42-NEXT: pextrb $7, %xmm0, %eax
3470 ; SSE42-NEXT: andb $1, %al
3471 ; SSE42-NEXT: movb %al, (%rdi)
3472 ; SSE42-NEXT: pextrb $6, %xmm0, %eax
3473 ; SSE42-NEXT: andb $1, %al
3474 ; SSE42-NEXT: movb %al, (%rdi)
3475 ; SSE42-NEXT: pextrb $5, %xmm0, %eax
3476 ; SSE42-NEXT: andb $1, %al
3477 ; SSE42-NEXT: movb %al, (%rdi)
3478 ; SSE42-NEXT: pextrb $4, %xmm0, %eax
3479 ; SSE42-NEXT: andb $1, %al
3480 ; SSE42-NEXT: movb %al, (%rdi)
3481 ; SSE42-NEXT: pextrb $3, %xmm0, %eax
3482 ; SSE42-NEXT: andb $1, %al
3483 ; SSE42-NEXT: movb %al, (%rdi)
3484 ; SSE42-NEXT: pextrb $2, %xmm0, %eax
3485 ; SSE42-NEXT: andb $1, %al
3486 ; SSE42-NEXT: movb %al, (%rdi)
3487 ; SSE42-NEXT: pextrb $1, %xmm0, %eax
3488 ; SSE42-NEXT: andb $1, %al
3489 ; SSE42-NEXT: movb %al, (%rdi)
3490 ; SSE42-NEXT: pextrb $0, %xmm0, %eax
3491 ; SSE42-NEXT: andb $1, %al
3492 ; SSE42-NEXT: movb %al, (%rdi)
3493 ; SSE42-NEXT: movq %rdi, %rax
3494 ; SSE42-NEXT: retq
4001 ; SSE42-LABEL: test_cmp_v64i16:
4002 ; SSE42: # BB#0:
4003 ; SSE42-NEXT: pcmpgtw {{[0-9]+}}(%rsp), %xmm1
4004 ; SSE42-NEXT: movdqa {{.*#+}} xmm8 = <0,2,4,6,8,10,12,14,u,u,u,u,u,u,u,u>
4005 ; SSE42-NEXT: pshufb %xmm8, %xmm1
4006 ; SSE42-NEXT: pcmpgtw {{[0-9]+}}(%rsp), %xmm0
4007 ; SSE42-NEXT: pshufb %xmm8, %xmm0
4008 ; SSE42-NEXT: punpcklqdq {{.*#+}} xmm0 = xmm0[0],xmm1[0]
4009 ; SSE42-NEXT: pcmpgtw {{[0-9]+}}(%rsp), %xmm3
4010 ; SSE42-NEXT: pshufb %xmm8, %xmm3
4011 ; SSE42-NEXT: pcmpgtw {{[0-9]+}}(%rsp), %xmm2
4012 ; SSE42-NEXT: pshufb %xmm8, %xmm2
4013 ; SSE42-NEXT: punpcklqdq {{.*#+}} xmm2 = xmm2[0],xmm3[0]
4014 ; SSE42-NEXT: pcmpgtw {{[0-9]+}}(%rsp), %xmm5
4015 ; SSE42-NEXT: pshufb %xmm8, %xmm5
4016 ; SSE42-NEXT: pcmpgtw {{[0-9]+}}(%rsp), %xmm4
4017 ; SSE42-NEXT: pshufb %xmm8, %xmm4
4018 ; SSE42-NEXT: punpcklqdq {{.*#+}} xmm4 = xmm4[0],xmm5[0]
4019 ; SSE42-NEXT: pcmpgtw {{[0-9]+}}(%rsp), %xmm7
4020 ; SSE42-NEXT: pshufb %xmm8, %xmm7
4021 ; SSE42-NEXT: pcmpgtw {{[0-9]+}}(%rsp), %xmm6
4022 ; SSE42-NEXT: pshufb %xmm8, %xmm6
4023 ; SSE42-NEXT: punpcklqdq {{.*#+}} xmm6 = xmm6[0],xmm7[0]
4024 ; SSE42-NEXT: pextrb $15, %xmm6, %eax
4025 ; SSE42-NEXT: andb $1, %al
4026 ; SSE42-NEXT: movb %al, 6(%rdi)
4027 ; SSE42-NEXT: pextrb $14, %xmm6, %eax
4028 ; SSE42-NEXT: andb $1, %al
4029 ; SSE42-NEXT: movb %al, 6(%rdi)
4030 ; SSE42-NEXT: pextrb $13, %xmm6, %eax
4031 ; SSE42-NEXT: andb $1, %al
4032 ; SSE42-NEXT: movb %al, 6(%rdi)
4033 ; SSE42-NEXT: pextrb $12, %xmm6, %eax
4034 ; SSE42-NEXT: andb $1, %al
4035 ; SSE42-NEXT: movb %al, 6(%rdi)
4036 ; SSE42-NEXT: pextrb $11, %xmm6, %eax
4037 ; SSE42-NEXT: andb $1, %al
4038 ; SSE42-NEXT: movb %al, 6(%rdi)
4039 ; SSE42-NEXT: pextrb $10, %xmm6, %eax
4040 ; SSE42-NEXT: andb $1, %al
4041 ; SSE42-NEXT: movb %al, 6(%rdi)
4042 ; SSE42-NEXT: pextrb $9, %xmm6, %eax
4043 ; SSE42-NEXT: andb $1, %al
4044 ; SSE42-NEXT: movb %al, 6(%rdi)
4045 ; SSE42-NEXT: pextrb $8, %xmm6, %eax
4046 ; SSE42-NEXT: andb $1, %al
4047 ; SSE42-NEXT: movb %al, 6(%rdi)
4048 ; SSE42-NEXT: pextrb $7, %xmm6, %eax
4049 ; SSE42-NEXT: andb $1, %al
4050 ; SSE42-NEXT: movb %al, 6(%rdi)
4051 ; SSE42-NEXT: pextrb $6, %xmm6, %eax
4052 ; SSE42-NEXT: andb $1, %al
4053 ; SSE42-NEXT: movb %al, 6(%rdi)
4054 ; SSE42-NEXT: pextrb $5, %xmm6, %eax
4055 ; SSE42-NEXT: andb $1, %al
4056 ; SSE42-NEXT: movb %al, 6(%rdi)
4057 ; SSE42-NEXT: pextrb $4, %xmm6, %eax
4058 ; SSE42-NEXT: andb $1, %al
4059 ; SSE42-NEXT: movb %al, 6(%rdi)
4060 ; SSE42-NEXT: pextrb $3, %xmm6, %eax
4061 ; SSE42-NEXT: andb $1, %al
4062 ; SSE42-NEXT: movb %al, 6(%rdi)
4063 ; SSE42-NEXT: pextrb $2, %xmm6, %eax
4064 ; SSE42-NEXT: andb $1, %al
4065 ; SSE42-NEXT: movb %al, 6(%rdi)
4066 ; SSE42-NEXT: pextrb $1, %xmm6, %eax
4067 ; SSE42-NEXT: andb $1, %al
4068 ; SSE42-NEXT: movb %al, 6(%rdi)
4069 ; SSE42-NEXT: pextrb $0, %xmm6, %eax
4070 ; SSE42-NEXT: andb $1, %al
4071 ; SSE42-NEXT: movb %al, 6(%rdi)
4072 ; SSE42-NEXT: pextrb $15, %xmm4, %eax
4073 ; SSE42-NEXT: andb $1, %al
4074 ; SSE42-NEXT: movb %al, 4(%rdi)
4075 ; SSE42-NEXT: pextrb $14, %xmm4, %eax
4076 ; SSE42-NEXT: andb $1, %al
4077 ; SSE42-NEXT: movb %al, 4(%rdi)
4078 ; SSE42-NEXT: pextrb $13, %xmm4, %eax
4079 ; SSE42-NEXT: andb $1, %al
4080 ; SSE42-NEXT: movb %al, 4(%rdi)
4081 ; SSE42-NEXT: pextrb $12, %xmm4, %eax
4082 ; SSE42-NEXT: andb $1, %al
4083 ; SSE42-NEXT: movb %al, 4(%rdi)
4084 ; SSE42-NEXT: pextrb $11, %xmm4, %eax
4085 ; SSE42-NEXT: andb $1, %al
4086 ; SSE42-NEXT: movb %al, 4(%rdi)
4087 ; SSE42-NEXT: pextrb $10, %xmm4, %eax
4088 ; SSE42-NEXT: andb $1, %al
4089 ; SSE42-NEXT: movb %al, 4(%rdi)
4090 ; SSE42-NEXT: pextrb $9, %xmm4, %eax
4091 ; SSE42-NEXT: andb $1, %al
4092 ; SSE42-NEXT: movb %al, 4(%rdi)
4093 ; SSE42-NEXT: pextrb $8, %xmm4, %eax
4094 ; SSE42-NEXT: andb $1, %al
4095 ; SSE42-NEXT: movb %al, 4(%rdi)
4096 ; SSE42-NEXT: pextrb $7, %xmm4, %eax
4097 ; SSE42-NEXT: andb $1, %al
4098 ; SSE42-NEXT: movb %al, 4(%rdi)
4099 ; SSE42-NEXT: pextrb $6, %xmm4, %eax
4100 ; SSE42-NEXT: andb $1, %al
4101 ; SSE42-NEXT: movb %al, 4(%rdi)
4102 ; SSE42-NEXT: pextrb $5, %xmm4, %eax
4103 ; SSE42-NEXT: andb $1, %al
4104 ; SSE42-NEXT: movb %al, 4(%rdi)
4105 ; SSE42-NEXT: pextrb $4, %xmm4, %eax
4106 ; SSE42-NEXT: andb $1, %al
4107 ; SSE42-NEXT: movb %al, 4(%rdi)
4108 ; SSE42-NEXT: pextrb $3, %xmm4, %eax
4109 ; SSE42-NEXT: andb $1, %al
4110 ; SSE42-NEXT: movb %al, 4(%rdi)
4111 ; SSE42-NEXT: pextrb $2, %xmm4, %eax
4112 ; SSE42-NEXT: andb $1, %al
4113 ; SSE42-NEXT: movb %al, 4(%rdi)
4114 ; SSE42-NEXT: pextrb $1, %xmm4, %eax
4115 ; SSE42-NEXT: andb $1, %al
4116 ; SSE42-NEXT: movb %al, 4(%rdi)
4117 ; SSE42-NEXT: pextrb $0, %xmm4, %eax
4118 ; SSE42-NEXT: andb $1, %al
4119 ; SSE42-NEXT: movb %al, 4(%rdi)
4120 ; SSE42-NEXT: pextrb $15, %xmm2, %eax
4121 ; SSE42-NEXT: andb $1, %al
4122 ; SSE42-NEXT: movb %al, 2(%rdi)
4123 ; SSE42-NEXT: pextrb $14, %xmm2, %eax
4124 ; SSE42-NEXT: andb $1, %al
4125 ; SSE42-NEXT: movb %al, 2(%rdi)
4126 ; SSE42-NEXT: pextrb $13, %xmm2, %eax
4127 ; SSE42-NEXT: andb $1, %al
4128 ; SSE42-NEXT: movb %al, 2(%rdi)
4129 ; SSE42-NEXT: pextrb $12, %xmm2, %eax
4130 ; SSE42-NEXT: andb $1, %al
4131 ; SSE42-NEXT: movb %al, 2(%rdi)
4132 ; SSE42-NEXT: pextrb $11, %xmm2, %eax
4133 ; SSE42-NEXT: andb $1, %al
4134 ; SSE42-NEXT: movb %al, 2(%rdi)
4135 ; SSE42-NEXT: pextrb $10, %xmm2, %eax
4136 ; SSE42-NEXT: andb $1, %al
4137 ; SSE42-NEXT: movb %al, 2(%rdi)
4138 ; SSE42-NEXT: pextrb $9, %xmm2, %eax
4139 ; SSE42-NEXT: andb $1, %al
4140 ; SSE42-NEXT: movb %al, 2(%rdi)
4141 ; SSE42-NEXT: pextrb $8, %xmm2, %eax
4142 ; SSE42-NEXT: andb $1, %al
4143 ; SSE42-NEXT: movb %al, 2(%rdi)
4144 ; SSE42-NEXT: pextrb $7, %xmm2, %eax
4145 ; SSE42-NEXT: andb $1, %al
4146 ; SSE42-NEXT: movb %al, 2(%rdi)
4147 ; SSE42-NEXT: pextrb $6, %xmm2, %eax
4148 ; SSE42-NEXT: andb $1, %al
4149 ; SSE42-NEXT: movb %al, 2(%rdi)
4150 ; SSE42-NEXT: pextrb $5, %xmm2, %eax
4151 ; SSE42-NEXT: andb $1, %al
4152 ; SSE42-NEXT: movb %al, 2(%rdi)
4153 ; SSE42-NEXT: pextrb $4, %xmm2, %eax
4154 ; SSE42-NEXT: andb $1, %al
4155 ; SSE42-NEXT: movb %al, 2(%rdi)
4156 ; SSE42-NEXT: pextrb $3, %xmm2, %eax
4157 ; SSE42-NEXT: andb $1, %al
4158 ; SSE42-NEXT: movb %al, 2(%rdi)
4159 ; SSE42-NEXT: pextrb $2, %xmm2, %eax
4160 ; SSE42-NEXT: andb $1, %al
4161 ; SSE42-NEXT: movb %al, 2(%rdi)
4162 ; SSE42-NEXT: pextrb $1, %xmm2, %eax
4163 ; SSE42-NEXT: andb $1, %al
4164 ; SSE42-NEXT: movb %al, 2(%rdi)
4165 ; SSE42-NEXT: pextrb $0, %xmm2, %eax
4166 ; SSE42-NEXT: andb $1, %al
4167 ; SSE42-NEXT: movb %al, 2(%rdi)
4168 ; SSE42-NEXT: pextrb $15, %xmm0, %eax
4169 ; SSE42-NEXT: andb $1, %al
4170 ; SSE42-NEXT: movb %al, (%rdi)
4171 ; SSE42-NEXT: pextrb $14, %xmm0, %eax
4172 ; SSE42-NEXT: andb $1, %al
4173 ; SSE42-NEXT: movb %al, (%rdi)
4174 ; SSE42-NEXT: pextrb $13, %xmm0, %eax
4175 ; SSE42-NEXT: andb $1, %al
4176 ; SSE42-NEXT: movb %al, (%rdi)
4177 ; SSE42-NEXT: pextrb $12, %xmm0, %eax
4178 ; SSE42-NEXT: andb $1, %al
4179 ; SSE42-NEXT: movb %al, (%rdi)
4180 ; SSE42-NEXT: pextrb $11, %xmm0, %eax
4181 ; SSE42-NEXT: andb $1, %al
4182 ; SSE42-NEXT: movb %al, (%rdi)
4183 ; SSE42-NEXT: pextrb $10, %xmm0, %eax
4184 ; SSE42-NEXT: andb $1, %al
4185 ; SSE42-NEXT: movb %al, (%rdi)
4186 ; SSE42-NEXT: pextrb $9, %xmm0, %eax
4187 ; SSE42-NEXT: andb $1, %al
4188 ; SSE42-NEXT: movb %al, (%rdi)
4189 ; SSE42-NEXT: pextrb $8, %xmm0, %eax
4190 ; SSE42-NEXT: andb $1, %al
4191 ; SSE42-NEXT: movb %al, (%rdi)
4192 ; SSE42-NEXT: pextrb $7, %xmm0, %eax
4193 ; SSE42-NEXT: andb $1, %al
4194 ; SSE42-NEXT: movb %al, (%rdi)
4195 ; SSE42-NEXT: pextrb $6, %xmm0, %eax
4196 ; SSE42-NEXT: andb $1, %al
4197 ; SSE42-NEXT: movb %al, (%rdi)
4198 ; SSE42-NEXT: pextrb $5, %xmm0, %eax
4199 ; SSE42-NEXT: andb $1, %al
4200 ; SSE42-NEXT: movb %al, (%rdi)
4201 ; SSE42-NEXT: pextrb $4, %xmm0, %eax
4202 ; SSE42-NEXT: andb $1, %al
4203 ; SSE42-NEXT: movb %al, (%rdi)
4204 ; SSE42-NEXT: pextrb $3, %xmm0, %eax
4205 ; SSE42-NEXT: andb $1, %al
4206 ; SSE42-NEXT: movb %al, (%rdi)
4207 ; SSE42-NEXT: pextrb $2, %xmm0, %eax
4208 ; SSE42-NEXT: andb $1, %al
4209 ; SSE42-NEXT: movb %al, (%rdi)
4210 ; SSE42-NEXT: pextrb $1, %xmm0, %eax
4211 ; SSE42-NEXT: andb $1, %al
4212 ; SSE42-NEXT: movb %al, (%rdi)
4213 ; SSE42-NEXT: pextrb $0, %xmm0, %eax
4214 ; SSE42-NEXT: andb $1, %al
4215 ; SSE42-NEXT: movb %al, (%rdi)
4216 ; SSE42-NEXT: movq %rdi, %rax
4217 ; SSE42-NEXT: retq
5378 ; SSE42-LABEL: test_cmp_v128i8:
5379 ; SSE42: # BB#0:
5380 ; SSE42-NEXT: pcmpgtb {{[0-9]+}}(%rsp), %xmm0
5381 ; SSE42-NEXT: pcmpgtb {{[0-9]+}}(%rsp), %xmm1
5382 ; SSE42-NEXT: pcmpgtb {{[0-9]+}}(%rsp), %xmm2
5383 ; SSE42-NEXT: pcmpgtb {{[0-9]+}}(%rsp), %xmm3
5384 ; SSE42-NEXT: pcmpgtb {{[0-9]+}}(%rsp), %xmm4
5385 ; SSE42-NEXT: pcmpgtb {{[0-9]+}}(%rsp), %xmm5
5386 ; SSE42-NEXT: pcmpgtb {{[0-9]+}}(%rsp), %xmm6
5387 ; SSE42-NEXT: pcmpgtb {{[0-9]+}}(%rsp), %xmm7
5388 ; SSE42-NEXT: pextrb $15, %xmm7, %eax
5389 ; SSE42-NEXT: andb $1, %al
5390 ; SSE42-NEXT: movb %al, 14(%rdi)
5391 ; SSE42-NEXT: pextrb $14, %xmm7, %eax
5392 ; SSE42-NEXT: andb $1, %al
5393 ; SSE42-NEXT: movb %al, 14(%rdi)
5394 ; SSE42-NEXT: pextrb $13, %xmm7, %eax
5395 ; SSE42-NEXT: andb $1, %al
5396 ; SSE42-NEXT: movb %al, 14(%rdi)
5397 ; SSE42-NEXT: pextrb $12, %xmm7, %eax
5398 ; SSE42-NEXT: andb $1, %al
5399 ; SSE42-NEXT: movb %al, 14(%rdi)
5400 ; SSE42-NEXT: pextrb $11, %xmm7, %eax
5401 ; SSE42-NEXT: andb $1, %al
5402 ; SSE42-NEXT: movb %al, 14(%rdi)
5403 ; SSE42-NEXT: pextrb $10, %xmm7, %eax
5404 ; SSE42-NEXT: andb $1, %al
5405 ; SSE42-NEXT: movb %al, 14(%rdi)
5406 ; SSE42-NEXT: pextrb $9, %xmm7, %eax
5407 ; SSE42-NEXT: andb $1, %al
5408 ; SSE42-NEXT: movb %al, 14(%rdi)
5409 ; SSE42-NEXT: pextrb $8, %xmm7, %eax
5410 ; SSE42-NEXT: andb $1, %al
5411 ; SSE42-NEXT: movb %al, 14(%rdi)
5412 ; SSE42-NEXT: pextrb $7, %xmm7, %eax
5413 ; SSE42-NEXT: andb $1, %al
5414 ; SSE42-NEXT: movb %al, 14(%rdi)
5415 ; SSE42-NEXT: pextrb $6, %xmm7, %eax
5416 ; SSE42-NEXT: andb $1, %al
5417 ; SSE42-NEXT: movb %al, 14(%rdi)
5418 ; SSE42-NEXT: pextrb $5, %xmm7, %eax
5419 ; SSE42-NEXT: andb $1, %al
5420 ; SSE42-NEXT: movb %al, 14(%rdi)
5421 ; SSE42-NEXT: pextrb $4, %xmm7, %eax
5422 ; SSE42-NEXT: andb $1, %al
5423 ; SSE42-NEXT: movb %al, 14(%rdi)
5424 ; SSE42-NEXT: pextrb $3, %xmm7, %eax
5425 ; SSE42-NEXT: andb $1, %al
5426 ; SSE42-NEXT: movb %al, 14(%rdi)
5427 ; SSE42-NEXT: pextrb $2, %xmm7, %eax
5428 ; SSE42-NEXT: andb $1, %al
5429 ; SSE42-NEXT: movb %al, 14(%rdi)
5430 ; SSE42-NEXT: pextrb $1, %xmm7, %eax
5431 ; SSE42-NEXT: andb $1, %al
5432 ; SSE42-NEXT: movb %al, 14(%rdi)
5433 ; SSE42-NEXT: pextrb $0, %xmm7, %eax
5434 ; SSE42-NEXT: andb $1, %al
5435 ; SSE42-NEXT: movb %al, 14(%rdi)
5436 ; SSE42-NEXT: pextrb $15, %xmm6, %eax
5437 ; SSE42-NEXT: andb $1, %al
5438 ; SSE42-NEXT: movb %al, 12(%rdi)
5439 ; SSE42-NEXT: pextrb $14, %xmm6, %eax
5440 ; SSE42-NEXT: andb $1, %al
5441 ; SSE42-NEXT: movb %al, 12(%rdi)
5442 ; SSE42-NEXT: pextrb $13, %xmm6, %eax
5443 ; SSE42-NEXT: andb $1, %al
5444 ; SSE42-NEXT: movb %al, 12(%rdi)
5445 ; SSE42-NEXT: pextrb $12, %xmm6, %eax
5446 ; SSE42-NEXT: andb $1, %al
5447 ; SSE42-NEXT: movb %al, 12(%rdi)
5448 ; SSE42-NEXT: pextrb $11, %xmm6, %eax
5449 ; SSE42-NEXT: andb $1, %al
5450 ; SSE42-NEXT: movb %al, 12(%rdi)
5451 ; SSE42-NEXT: pextrb $10, %xmm6, %eax
5452 ; SSE42-NEXT: andb $1, %al
5453 ; SSE42-NEXT: movb %al, 12(%rdi)
5454 ; SSE42-NEXT: pextrb $9, %xmm6, %eax
5455 ; SSE42-NEXT: andb $1, %al
5456 ; SSE42-NEXT: movb %al, 12(%rdi)
5457 ; SSE42-NEXT: pextrb $8, %xmm6, %eax
5458 ; SSE42-NEXT: andb $1, %al
5459 ; SSE42-NEXT: movb %al, 12(%rdi)
5460 ; SSE42-NEXT: pextrb $7, %xmm6, %eax
5461 ; SSE42-NEXT: andb $1, %al
5462 ; SSE42-NEXT: movb %al, 12(%rdi)
5463 ; SSE42-NEXT: pextrb $6, %xmm6, %eax
5464 ; SSE42-NEXT: andb $1, %al
5465 ; SSE42-NEXT: movb %al, 12(%rdi)
5466 ; SSE42-NEXT: pextrb $5, %xmm6, %eax
5467 ; SSE42-NEXT: andb $1, %al
5468 ; SSE42-NEXT: movb %al, 12(%rdi)
5469 ; SSE42-NEXT: pextrb $4, %xmm6, %eax
5470 ; SSE42-NEXT: andb $1, %al
5471 ; SSE42-NEXT: movb %al, 12(%rdi)
5472 ; SSE42-NEXT: pextrb $3, %xmm6, %eax
5473 ; SSE42-NEXT: andb $1, %al
5474 ; SSE42-NEXT: movb %al, 12(%rdi)
5475 ; SSE42-NEXT: pextrb $2, %xmm6, %eax
5476 ; SSE42-NEXT: andb $1, %al
5477 ; SSE42-NEXT: movb %al, 12(%rdi)
5478 ; SSE42-NEXT: pextrb $1, %xmm6, %eax
5479 ; SSE42-NEXT: andb $1, %al
5480 ; SSE42-NEXT: movb %al, 12(%rdi)
5481 ; SSE42-NEXT: pextrb $0, %xmm6, %eax
5482 ; SSE42-NEXT: andb $1, %al
5483 ; SSE42-NEXT: movb %al, 12(%rdi)
5484 ; SSE42-NEXT: pextrb $15, %xmm5, %eax
5485 ; SSE42-NEXT: andb $1, %al
5486 ; SSE42-NEXT: movb %al, 10(%rdi)
5487 ; SSE42-NEXT: pextrb $14, %xmm5, %eax
5488 ; SSE42-NEXT: andb $1, %al
5489 ; SSE42-NEXT: movb %al, 10(%rdi)
5490 ; SSE42-NEXT: pextrb $13, %xmm5, %eax
5491 ; SSE42-NEXT: andb $1, %al
5492 ; SSE42-NEXT: movb %al, 10(%rdi)
5493 ; SSE42-NEXT: pextrb $12, %xmm5, %eax
5494 ; SSE42-NEXT: andb $1, %al
5495 ; SSE42-NEXT: movb %al, 10(%rdi)
5496 ; SSE42-NEXT: pextrb $11, %xmm5, %eax
5497 ; SSE42-NEXT: andb $1, %al
5498 ; SSE42-NEXT: movb %al, 10(%rdi)
5499 ; SSE42-NEXT: pextrb $10, %xmm5, %eax
5500 ; SSE42-NEXT: andb $1, %al
5501 ; SSE42-NEXT: movb %al, 10(%rdi)
5502 ; SSE42-NEXT: pextrb $9, %xmm5, %eax
5503 ; SSE42-NEXT: andb $1, %al
5504 ; SSE42-NEXT: movb %al, 10(%rdi)
5505 ; SSE42-NEXT: pextrb $8, %xmm5, %eax
5506 ; SSE42-NEXT: andb $1, %al
5507 ; SSE42-NEXT: movb %al, 10(%rdi)
5508 ; SSE42-NEXT: pextrb $7, %xmm5, %eax
5509 ; SSE42-NEXT: andb $1, %al
5510 ; SSE42-NEXT: movb %al, 10(%rdi)
5511 ; SSE42-NEXT: pextrb $6, %xmm5, %eax
5512 ; SSE42-NEXT: andb $1, %al
5513 ; SSE42-NEXT: movb %al, 10(%rdi)
5514 ; SSE42-NEXT: pextrb $5, %xmm5, %eax
5515 ; SSE42-NEXT: andb $1, %al
5516 ; SSE42-NEXT: movb %al, 10(%rdi)
5517 ; SSE42-NEXT: pextrb $4, %xmm5, %eax
5518 ; SSE42-NEXT: andb $1, %al
5519 ; SSE42-NEXT: movb %al, 10(%rdi)
5520 ; SSE42-NEXT: pextrb $3, %xmm5, %eax
5521 ; SSE42-NEXT: andb $1, %al
5522 ; SSE42-NEXT: movb %al, 10(%rdi)
5523 ; SSE42-NEXT: pextrb $2, %xmm5, %eax
5524 ; SSE42-NEXT: andb $1, %al
5525 ; SSE42-NEXT: movb %al, 10(%rdi)
5526 ; SSE42-NEXT: pextrb $1, %xmm5, %eax
5527 ; SSE42-NEXT: andb $1, %al
5528 ; SSE42-NEXT: movb %al, 10(%rdi)
5529 ; SSE42-NEXT: pextrb $0, %xmm5, %eax
5530 ; SSE42-NEXT: andb $1, %al
5531 ; SSE42-NEXT: movb %al, 10(%rdi)
5532 ; SSE42-NEXT: pextrb $15, %xmm4, %eax
5533 ; SSE42-NEXT: andb $1, %al
5534 ; SSE42-NEXT: movb %al, 8(%rdi)
5535 ; SSE42-NEXT: pextrb $14, %xmm4, %eax
5536 ; SSE42-NEXT: andb $1, %al
5537 ; SSE42-NEXT: movb %al, 8(%rdi)
5538 ; SSE42-NEXT: pextrb $13, %xmm4, %eax
5539 ; SSE42-NEXT: andb $1, %al
5540 ; SSE42-NEXT: movb %al, 8(%rdi)
5541 ; SSE42-NEXT: pextrb $12, %xmm4, %eax
5542 ; SSE42-NEXT: andb $1, %al
5543 ; SSE42-NEXT: movb %al, 8(%rdi)
5544 ; SSE42-NEXT: pextrb $11, %xmm4, %eax
5545 ; SSE42-NEXT: andb $1, %al
5546 ; SSE42-NEXT: movb %al, 8(%rdi)
5547 ; SSE42-NEXT: pextrb $10, %xmm4, %eax
5548 ; SSE42-NEXT: andb $1, %al
5549 ; SSE42-NEXT: movb %al, 8(%rdi)
5550 ; SSE42-NEXT: pextrb $9, %xmm4, %eax
5551 ; SSE42-NEXT: andb $1, %al
5552 ; SSE42-NEXT: movb %al, 8(%rdi)
5553 ; SSE42-NEXT: pextrb $8, %xmm4, %eax
5554 ; SSE42-NEXT: andb $1, %al
5555 ; SSE42-NEXT: movb %al, 8(%rdi)
5556 ; SSE42-NEXT: pextrb $7, %xmm4, %eax
5557 ; SSE42-NEXT: andb $1, %al
5558 ; SSE42-NEXT: movb %al, 8(%rdi)
5559 ; SSE42-NEXT: pextrb $6, %xmm4, %eax
5560 ; SSE42-NEXT: andb $1, %al
5561 ; SSE42-NEXT: movb %al, 8(%rdi)
5562 ; SSE42-NEXT: pextrb $5, %xmm4, %eax
5563 ; SSE42-NEXT: andb $1, %al
5564 ; SSE42-NEXT: movb %al, 8(%rdi)
5565 ; SSE42-NEXT: pextrb $4, %xmm4, %eax
5566 ; SSE42-NEXT: andb $1, %al
5567 ; SSE42-NEXT: movb %al, 8(%rdi)
5568 ; SSE42-NEXT: pextrb $3, %xmm4, %eax
5569 ; SSE42-NEXT: andb $1, %al
5570 ; SSE42-NEXT: movb %al, 8(%rdi)
5571 ; SSE42-NEXT: pextrb $2, %xmm4, %eax
5572 ; SSE42-NEXT: andb $1, %al
5573 ; SSE42-NEXT: movb %al, 8(%rdi)
5574 ; SSE42-NEXT: pextrb $1, %xmm4, %eax
5575 ; SSE42-NEXT: andb $1, %al
5576 ; SSE42-NEXT: movb %al, 8(%rdi)
5577 ; SSE42-NEXT: pextrb $0, %xmm4, %eax
5578 ; SSE42-NEXT: andb $1, %al
5579 ; SSE42-NEXT: movb %al, 8(%rdi)
5580 ; SSE42-NEXT: pextrb $15, %xmm3, %eax
5581 ; SSE42-NEXT: andb $1, %al
5582 ; SSE42-NEXT: movb %al, 6(%rdi)
5583 ; SSE42-NEXT: pextrb $14, %xmm3, %eax
5584 ; SSE42-NEXT: andb $1, %al
5585 ; SSE42-NEXT: movb %al, 6(%rdi)
5586 ; SSE42-NEXT: pextrb $13, %xmm3, %eax
5587 ; SSE42-NEXT: andb $1, %al
5588 ; SSE42-NEXT: movb %al, 6(%rdi)
5589 ; SSE42-NEXT: pextrb $12, %xmm3, %eax
5590 ; SSE42-NEXT: andb $1, %al
5591 ; SSE42-NEXT: movb %al, 6(%rdi)
5592 ; SSE42-NEXT: pextrb $11, %xmm3, %eax
5593 ; SSE42-NEXT: andb $1, %al
5594 ; SSE42-NEXT: movb %al, 6(%rdi)
5595 ; SSE42-NEXT: pextrb $10, %xmm3, %eax
5596 ; SSE42-NEXT: andb $1, %al
5597 ; SSE42-NEXT: movb %al, 6(%rdi)
5598 ; SSE42-NEXT: pextrb $9, %xmm3, %eax
5599 ; SSE42-NEXT: andb $1, %al
5600 ; SSE42-NEXT: movb %al, 6(%rdi)
5601 ; SSE42-NEXT: pextrb $8, %xmm3, %eax
5602 ; SSE42-NEXT: andb $1, %al
5603 ; SSE42-NEXT: movb %al, 6(%rdi)
5604 ; SSE42-NEXT: pextrb $7, %xmm3, %eax
5605 ; SSE42-NEXT: andb $1, %al
5606 ; SSE42-NEXT: movb %al, 6(%rdi)
5607 ; SSE42-NEXT: pextrb $6, %xmm3, %eax
5608 ; SSE42-NEXT: andb $1, %al
5609 ; SSE42-NEXT: movb %al, 6(%rdi)
5610 ; SSE42-NEXT: pextrb $5, %xmm3, %eax
5611 ; SSE42-NEXT: andb $1, %al
5612 ; SSE42-NEXT: movb %al, 6(%rdi)
5613 ; SSE42-NEXT: pextrb $4, %xmm3, %eax
5614 ; SSE42-NEXT: andb $1, %al
5615 ; SSE42-NEXT: movb %al, 6(%rdi)
5616 ; SSE42-NEXT: pextrb $3, %xmm3, %eax
5617 ; SSE42-NEXT: andb $1, %al
5618 ; SSE42-NEXT: movb %al, 6(%rdi)
5619 ; SSE42-NEXT: pextrb $2, %xmm3, %eax
5620 ; SSE42-NEXT: andb $1, %al
5621 ; SSE42-NEXT: movb %al, 6(%rdi)
5622 ; SSE42-NEXT: pextrb $1, %xmm3, %eax
5623 ; SSE42-NEXT: andb $1, %al
5624 ; SSE42-NEXT: movb %al, 6(%rdi)
5625 ; SSE42-NEXT: pextrb $0, %xmm3, %eax
5626 ; SSE42-NEXT: andb $1, %al
5627 ; SSE42-NEXT: movb %al, 6(%rdi)
5628 ; SSE42-NEXT: pextrb $15, %xmm2, %eax
5629 ; SSE42-NEXT: andb $1, %al
5630 ; SSE42-NEXT: movb %al, 4(%rdi)
5631 ; SSE42-NEXT: pextrb $14, %xmm2, %eax
5632 ; SSE42-NEXT: andb $1, %al
5633 ; SSE42-NEXT: movb %al, 4(%rdi)
5634 ; SSE42-NEXT: pextrb $13, %xmm2, %eax
5635 ; SSE42-NEXT: andb $1, %al
5636 ; SSE42-NEXT: movb %al, 4(%rdi)
5637 ; SSE42-NEXT: pextrb $12, %xmm2, %eax
5638 ; SSE42-NEXT: andb $1, %al
5639 ; SSE42-NEXT: movb %al, 4(%rdi)
5640 ; SSE42-NEXT: pextrb $11, %xmm2, %eax
5641 ; SSE42-NEXT: andb $1, %al
5642 ; SSE42-NEXT: movb %al, 4(%rdi)
5643 ; SSE42-NEXT: pextrb $10, %xmm2, %eax
5644 ; SSE42-NEXT: andb $1, %al
5645 ; SSE42-NEXT: movb %al, 4(%rdi)
5646 ; SSE42-NEXT: pextrb $9, %xmm2, %eax
5647 ; SSE42-NEXT: andb $1, %al
5648 ; SSE42-NEXT: movb %al, 4(%rdi)
5649 ; SSE42-NEXT: pextrb $8, %xmm2, %eax
5650 ; SSE42-NEXT: andb $1, %al
5651 ; SSE42-NEXT: movb %al, 4(%rdi)
5652 ; SSE42-NEXT: pextrb $7, %xmm2, %eax
5653 ; SSE42-NEXT: andb $1, %al
5654 ; SSE42-NEXT: movb %al, 4(%rdi)
5655 ; SSE42-NEXT: pextrb $6, %xmm2, %eax
5656 ; SSE42-NEXT: andb $1, %al
5657 ; SSE42-NEXT: movb %al, 4(%rdi)
5658 ; SSE42-NEXT: pextrb $5, %xmm2, %eax
5659 ; SSE42-NEXT: andb $1, %al
5660 ; SSE42-NEXT: movb %al, 4(%rdi)
5661 ; SSE42-NEXT: pextrb $4, %xmm2, %eax
5662 ; SSE42-NEXT: andb $1, %al
5663 ; SSE42-NEXT: movb %al, 4(%rdi)
5664 ; SSE42-NEXT: pextrb $3, %xmm2, %eax
5665 ; SSE42-NEXT: andb $1, %al
5666 ; SSE42-NEXT: movb %al, 4(%rdi)
5667 ; SSE42-NEXT: pextrb $2, %xmm2, %eax
5668 ; SSE42-NEXT: andb $1, %al
5669 ; SSE42-NEXT: movb %al, 4(%rdi)
5670 ; SSE42-NEXT: pextrb $1, %xmm2, %eax
5671 ; SSE42-NEXT: andb $1, %al
5672 ; SSE42-NEXT: movb %al, 4(%rdi)
5673 ; SSE42-NEXT: pextrb $0, %xmm2, %eax
5674 ; SSE42-NEXT: andb $1, %al
5675 ; SSE42-NEXT: movb %al, 4(%rdi)
5676 ; SSE42-NEXT: pextrb $15, %xmm1, %eax
5677 ; SSE42-NEXT: andb $1, %al
5678 ; SSE42-NEXT: movb %al, 2(%rdi)
5679 ; SSE42-NEXT: pextrb $14, %xmm1, %eax
5680 ; SSE42-NEXT: andb $1, %al
5681 ; SSE42-NEXT: movb %al, 2(%rdi)
5682 ; SSE42-NEXT: pextrb $13, %xmm1, %eax
5683 ; SSE42-NEXT: andb $1, %al
5684 ; SSE42-NEXT: movb %al, 2(%rdi)
5685 ; SSE42-NEXT: pextrb $12, %xmm1, %eax
5686 ; SSE42-NEXT: andb $1, %al
5687 ; SSE42-NEXT: movb %al, 2(%rdi)
5688 ; SSE42-NEXT: pextrb $11, %xmm1, %eax
5689 ; SSE42-NEXT: andb $1, %al
5690 ; SSE42-NEXT: movb %al, 2(%rdi)
5691 ; SSE42-NEXT: pextrb $10, %xmm1, %eax
5692 ; SSE42-NEXT: andb $1, %al
5693 ; SSE42-NEXT: movb %al, 2(%rdi)
5694 ; SSE42-NEXT: pextrb $9, %xmm1, %eax
5695 ; SSE42-NEXT: andb $1, %al
5696 ; SSE42-NEXT: movb %al, 2(%rdi)
5697 ; SSE42-NEXT: pextrb $8, %xmm1, %eax
5698 ; SSE42-NEXT: andb $1, %al
5699 ; SSE42-NEXT: movb %al, 2(%rdi)
5700 ; SSE42-NEXT: pextrb $7, %xmm1, %eax
5701 ; SSE42-NEXT: andb $1, %al
5702 ; SSE42-NEXT: movb %al, 2(%rdi)
5703 ; SSE42-NEXT: pextrb $6, %xmm1, %eax
5704 ; SSE42-NEXT: andb $1, %al
5705 ; SSE42-NEXT: movb %al, 2(%rdi)
5706 ; SSE42-NEXT: pextrb $5, %xmm1, %eax
5707 ; SSE42-NEXT: andb $1, %al
5708 ; SSE42-NEXT: movb %al, 2(%rdi)
5709 ; SSE42-NEXT: pextrb $4, %xmm1, %eax
5710 ; SSE42-NEXT: andb $1, %al
5711 ; SSE42-NEXT: movb %al, 2(%rdi)
5712 ; SSE42-NEXT: pextrb $3, %xmm1, %eax
5713 ; SSE42-NEXT: andb $1, %al
5714 ; SSE42-NEXT: movb %al, 2(%rdi)
5715 ; SSE42-NEXT: pextrb $2, %xmm1, %eax
5716 ; SSE42-NEXT: andb $1, %al
5717 ; SSE42-NEXT: movb %al, 2(%rdi)
5718 ; SSE42-NEXT: pextrb $1, %xmm1, %eax
5719 ; SSE42-NEXT: andb $1, %al
5720 ; SSE42-NEXT: movb %al, 2(%rdi)
5721 ; SSE42-NEXT: pextrb $0, %xmm1, %eax
5722 ; SSE42-NEXT: andb $1, %al
5723 ; SSE42-NEXT: movb %al, 2(%rdi)
5724 ; SSE42-NEXT: pextrb $15, %xmm0, %eax
5725 ; SSE42-NEXT: andb $1, %al
5726 ; SSE42-NEXT: movb %al, (%rdi)
5727 ; SSE42-NEXT: pextrb $14, %xmm0, %eax
5728 ; SSE42-NEXT: andb $1, %al
5729 ; SSE42-NEXT: movb %al, (%rdi)
5730 ; SSE42-NEXT: pextrb $13, %xmm0, %eax
5731 ; SSE42-NEXT: andb $1, %al
5732 ; SSE42-NEXT: movb %al, (%rdi)
5733 ; SSE42-NEXT: pextrb $12, %xmm0, %eax
5734 ; SSE42-NEXT: andb $1, %al
5735 ; SSE42-NEXT: movb %al, (%rdi)
5736 ; SSE42-NEXT: pextrb $11, %xmm0, %eax
5737 ; SSE42-NEXT: andb $1, %al
5738 ; SSE42-NEXT: movb %al, (%rdi)
5739 ; SSE42-NEXT: pextrb $10, %xmm0, %eax
5740 ; SSE42-NEXT: andb $1, %al
5741 ; SSE42-NEXT: movb %al, (%rdi)
5742 ; SSE42-NEXT: pextrb $9, %xmm0, %eax
5743 ; SSE42-NEXT: andb $1, %al
5744 ; SSE42-NEXT: movb %al, (%rdi)
5745 ; SSE42-NEXT: pextrb $8, %xmm0, %eax
5746 ; SSE42-NEXT: andb $1, %al
5747 ; SSE42-NEXT: movb %al, (%rdi)
5748 ; SSE42-NEXT: pextrb $7, %xmm0, %eax
5749 ; SSE42-NEXT: andb $1, %al
5750 ; SSE42-NEXT: movb %al, (%rdi)
5751 ; SSE42-NEXT: pextrb $6, %xmm0, %eax
5752 ; SSE42-NEXT: andb $1, %al
5753 ; SSE42-NEXT: movb %al, (%rdi)
5754 ; SSE42-NEXT: pextrb $5, %xmm0, %eax
5755 ; SSE42-NEXT: andb $1, %al
5756 ; SSE42-NEXT: movb %al, (%rdi)
5757 ; SSE42-NEXT: pextrb $4, %xmm0, %eax
5758 ; SSE42-NEXT: andb $1, %al
5759 ; SSE42-NEXT: movb %al, (%rdi)
5760 ; SSE42-NEXT: pextrb $3, %xmm0, %eax
5761 ; SSE42-NEXT: andb $1, %al
5762 ; SSE42-NEXT: movb %al, (%rdi)
5763 ; SSE42-NEXT: pextrb $2, %xmm0, %eax
5764 ; SSE42-NEXT: andb $1, %al
5765 ; SSE42-NEXT: movb %al, (%rdi)
5766 ; SSE42-NEXT: pextrb $1, %xmm0, %eax
5767 ; SSE42-NEXT: andb $1, %al
5768 ; SSE42-NEXT: movb %al, (%rdi)
5769 ; SSE42-NEXT: pextrb $0, %xmm0, %eax
5770 ; SSE42-NEXT: andb $1, %al
5771 ; SSE42-NEXT: movb %al, (%rdi)
5772 ; SSE42-NEXT: movq %rdi, %rax
5773 ; SSE42-NEXT: retq