Lines Matching refs:xmm0
222 "movq " MEMACCESS(0) ",%%xmm0 \n"
224 "movdqa %%xmm0," MEMACCESS(1) " \n"
234 , "xmm0", "xmm1", "xmm5"
247 "movq " MEMACCESS(0) ",%%xmm0 \n"
249 "punpcklbw %%xmm0,%%xmm0 \n"
250 "movdqa %%xmm0,%%xmm1 \n"
251 "punpcklwd %%xmm0,%%xmm0 \n"
253 "por %%xmm5,%%xmm0 \n"
255 "movdqa %%xmm0," MEMACCESS(1) " \n"
266 , "xmm0", "xmm1", "xmm5"
278 "movq " MEMACCESS(0) ",%%xmm0 \n"
280 "punpcklbw %%xmm0,%%xmm0 \n"
281 "movdqa %%xmm0,%%xmm1 \n"
282 "punpcklwd %%xmm0,%%xmm0 \n"
284 "por %%xmm5,%%xmm0 \n"
286 "movdqu %%xmm0," MEMACCESS(1) " \n"
297 , "xmm0", "xmm1", "xmm5"
311 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
319 "palignr $0xc,%%xmm0,%%xmm1 \n"
320 "pshufb %%xmm4,%%xmm0 \n"
322 "por %%xmm5,%%xmm0 \n"
324 "movdqa %%xmm0," MEMACCESS(1) " \n"
340 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
352 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
360 "palignr $0xc,%%xmm0,%%xmm1 \n"
361 "pshufb %%xmm4,%%xmm0 \n"
363 "por %%xmm5,%%xmm0 \n"
365 "movdqa %%xmm0," MEMACCESS(1) " \n"
381 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
405 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
406 "movdqa %%xmm0,%%xmm1 \n"
407 "movdqa %%xmm0,%%xmm2 \n"
414 "pand %%xmm4,%%xmm0 \n"
415 "pmulhuw %%xmm6,%%xmm0 \n"
416 "por %%xmm7,%%xmm0 \n"
418 "punpcklbw %%xmm0,%%xmm1 \n"
419 "punpckhbw %%xmm0,%%xmm2 \n"
435 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5", "xmm6", "xmm7"
458 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
459 "movdqa %%xmm0,%%xmm1 \n"
460 "movdqa %%xmm0,%%xmm2 \n"
468 "movdqa %%xmm0,%%xmm2 \n"
469 "pand %%xmm4,%%xmm0 \n"
471 "pmulhuw %%xmm6,%%xmm0 \n"
473 "por %%xmm2,%%xmm0 \n"
475 "punpcklbw %%xmm0,%%xmm1 \n"
476 "punpckhbw %%xmm0,%%xmm2 \n"
492 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5", "xmm6", "xmm7"
508 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
509 "movdqa %%xmm0,%%xmm2 \n"
510 "pand %%xmm4,%%xmm0 \n"
512 "movdqa %%xmm0,%%xmm1 \n"
516 "por %%xmm1,%%xmm0 \n"
518 "movdqa %%xmm0,%%xmm1 \n"
519 "punpcklbw %%xmm2,%%xmm0 \n"
522 MEMOPMEM(movdqa,xmm0,0x00,1,0,2) // movdqa %%xmm0,(%1,%0,2)
536 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
546 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
551 "pshufb %%xmm6,%%xmm0 \n"
559 "por %%xmm4,%%xmm0 \n"
561 "movdqu %%xmm0," MEMACCESS(1) " \n"
577 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5", "xmm6"
587 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
592 "pshufb %%xmm6,%%xmm0 \n"
600 "por %%xmm4,%%xmm0 \n"
602 "movdqu %%xmm0," MEMACCESS(1) " \n"
618 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5", "xmm6"
634 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
635 "movdqa %%xmm0,%%xmm1 \n"
636 "movdqa %%xmm0,%%xmm2 \n"
637 "pslld $0x8,%%xmm0 \n"
640 "psrad $0x10,%%xmm0 \n"
643 "pand %%xmm5,%%xmm0 \n"
645 "por %%xmm1,%%xmm0 \n"
646 "packssdw %%xmm0,%%xmm0 \n"
648 "movq %%xmm0," MEMACCESS(1) " \n"
658 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
675 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
676 "movdqa %%xmm0,%%xmm1 \n"
677 "movdqa %%xmm0,%%xmm2 \n"
678 "movdqa %%xmm0,%%xmm3 \n"
679 "psrad $0x10,%%xmm0 \n"
683 "pand %%xmm7,%%xmm0 \n"
687 "por %%xmm1,%%xmm0 \n"
689 "por %%xmm2,%%xmm0 \n"
690 "packssdw %%xmm0,%%xmm0 \n"
692 "movq %%xmm0," MEMACCESS(1) " \n"
702 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5", "xmm6", "xmm7"
715 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
716 "movdqa %%xmm0,%%xmm1 \n"
717 "pand %%xmm3,%%xmm0 \n"
719 "psrlq $0x4,%%xmm0 \n"
721 "por %%xmm1,%%xmm0 \n"
722 "packuswb %%xmm0,%%xmm0 \n"
724 "movq %%xmm0," MEMACCESS(1) " \n"
734 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4"
747 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
751 "pmaddubsw %%xmm4,%%xmm0 \n"
756 "phaddw %%xmm1,%%xmm0 \n"
758 "psrlw $0x7,%%xmm0 \n"
760 "packuswb %%xmm2,%%xmm0 \n"
761 "paddb %%xmm5,%%xmm0 \n"
763 "movdqa %%xmm0," MEMACCESS(1) " \n"
773 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
784 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
788 "pmaddubsw %%xmm4,%%xmm0 \n"
793 "phaddw %%xmm1,%%xmm0 \n"
795 "psrlw $0x7,%%xmm0 \n"
797 "packuswb %%xmm2,%%xmm0 \n"
798 "paddb %%xmm5,%%xmm0 \n"
800 "movdqu %%xmm0," MEMACCESS(1) " \n"
810 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
823 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
827 "pmaddubsw %%xmm4,%%xmm0 \n"
832 "phaddw %%xmm1,%%xmm0 \n"
834 "paddw %%xmm5,%%xmm0 \n"
836 "psrlw $0x7,%%xmm0 \n"
838 "packuswb %%xmm2,%%xmm0 \n"
840 "movdqa %%xmm0," MEMACCESS(1) " \n"
850 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
861 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
865 "pmaddubsw %%xmm4,%%xmm0 \n"
870 "phaddw %%xmm1,%%xmm0 \n"
872 "paddw %%xmm5,%%xmm0 \n"
874 "psrlw $0x7,%%xmm0 \n"
876 "packuswb %%xmm2,%%xmm0 \n"
878 "movdqu %%xmm0," MEMACCESS(1) " \n"
888 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
915 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
920 MEMOPREG(pavgb,0x00,0,4,1,xmm0) // pavgb (%0,%4,1),%%xmm0
925 "movdqa %%xmm0,%%xmm7 \n"
926 "shufps $0x88,%%xmm1,%%xmm0 \n"
928 "pavgb %%xmm7,%%xmm0 \n"
933 "movdqa %%xmm0,%%xmm1 \n"
935 "pmaddubsw %%xmm4,%%xmm0 \n"
939 "phaddw %%xmm2,%%xmm0 \n"
941 "psraw $0x8,%%xmm0 \n"
943 "packsswb %%xmm1,%%xmm0 \n"
944 "paddb %%xmm5,%%xmm0 \n"
946 "movlps %%xmm0," MEMACCESS(1) " \n"
948 MEMOPMEM(movhps,xmm0,0x00,1,2,1) // movhps %%xmm0,(%1,%2,1)
961 , "xmm0", "xmm1", "xmm2", "xmm6", "xmm7"
982 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
987 MEMOPREG(pavgb,0x00,0,4,1,xmm0) // pavgb (%0,%4,1),%%xmm0
992 "movdqa %%xmm0,%%xmm7 \n"
993 "shufps $0x88,%%xmm1,%%xmm0 \n"
995 "pavgb %%xmm7,%%xmm0 \n"
1000 "movdqa %%xmm0,%%xmm1 \n"
1002 "pmaddubsw %%xmm4,%%xmm0 \n"
1006 "phaddw %%xmm2,%%xmm0 \n"
1008 "paddw %%xmm5,%%xmm0 \n"
1010 "psraw $0x8,%%xmm0 \n"
1012 "packsswb %%xmm1,%%xmm0 \n"
1014 "movlps %%xmm0," MEMACCESS(1) " \n"
1016 MEMOPMEM(movhps,xmm0,0x00,1,2,1) // movhps %%xmm0,(%1,%2,1)
1029 , "xmm0", "xmm1", "xmm2", "xmm6", "xmm7"
1049 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
1055 "pavgb %%xmm7,%%xmm0 \n"
1063 "movdqa %%xmm0,%%xmm7 \n"
1064 "shufps $0x88,%%xmm1,%%xmm0 \n"
1066 "pavgb %%xmm7,%%xmm0 \n"
1071 "movdqa %%xmm0,%%xmm1 \n"
1073 "pmaddubsw %%xmm4,%%xmm0 \n"
1077 "phaddw %%xmm2,%%xmm0 \n"
1079 "psraw $0x8,%%xmm0 \n"
1081 "packsswb %%xmm1,%%xmm0 \n"
1082 "paddb %%xmm5,%%xmm0 \n"
1084 "movlps %%xmm0," MEMACCESS(1) " \n"
1086 MEMOPMEM(movhps,xmm0,0x00,1,2,1) // movhps %%xmm0,(%1,%2,1)
1099 , "xmm0", "xmm1", "xmm2", "xmm6", "xmm7"
1119 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
1125 "pavgb %%xmm7,%%xmm0 \n"
1133 "movdqa %%xmm0,%%xmm7 \n"
1134 "shufps $0x88,%%xmm1,%%xmm0 \n"
1136 "pavgb %%xmm7,%%xmm0 \n"
1141 "movdqa %%xmm0,%%xmm1 \n"
1143 "pmaddubsw %%xmm4,%%xmm0 \n"
1147 "phaddw %%xmm2,%%xmm0 \n"
1149 "paddw %%xmm5,%%xmm0 \n"
1151 "psraw $0x8,%%xmm0 \n"
1153 "packsswb %%xmm1,%%xmm0 \n"
1155 "movlps %%xmm0," MEMACCESS(1) " \n"
1157 MEMOPMEM(movhps,xmm0,0x00,1,2,1) // movhps %%xmm0,(%1,%2,1)
1170 , "xmm0", "xmm1", "xmm2", "xmm6", "xmm7"
1190 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
1194 "pmaddubsw %%xmm4,%%xmm0 \n"
1198 "phaddw %%xmm1,%%xmm0 \n"
1200 "psraw $0x8,%%xmm0 \n"
1202 "packsswb %%xmm2,%%xmm0 \n"
1203 "paddb %%xmm5,%%xmm0 \n"
1205 "movdqa %%xmm0," MEMACCESS(1) " \n"
1206 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
1210 "pmaddubsw %%xmm3,%%xmm0 \n"
1214 "phaddw %%xmm1,%%xmm0 \n"
1216 "psraw $0x8,%%xmm0 \n"
1218 "packsswb %%xmm2,%%xmm0 \n"
1219 "paddb %%xmm5,%%xmm0 \n"
1222 MEMOPMEM(movdqa,xmm0,0x00,1,2,1) // movdqa %%xmm0,(%1,%2,1)
1235 , "xmm0", "xmm1", "xmm2", "xmm6"
1255 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
1259 "pmaddubsw %%xmm4,%%xmm0 \n"
1263 "phaddw %%xmm1,%%xmm0 \n"
1265 "psraw $0x8,%%xmm0 \n"
1267 "packsswb %%xmm2,%%xmm0 \n"
1268 "paddb %%xmm5,%%xmm0 \n"
1270 "movdqu %%xmm0," MEMACCESS(1) " \n"
1271 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
1275 "pmaddubsw %%xmm3,%%xmm0 \n"
1279 "phaddw %%xmm1,%%xmm0 \n"
1281 "psraw $0x8,%%xmm0 \n"
1283 "packsswb %%xmm2,%%xmm0 \n"
1284 "paddb %%xmm5,%%xmm0 \n"
1287 MEMOPMEM(movdqu,xmm0,0x00,1,2,1) // movdqu %%xmm0,(%1,%2,1)
1300 , "xmm0", "xmm1", "xmm2", "xmm6"
1320 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
1325 "movdqa %%xmm0,%%xmm7 \n"
1326 "shufps $0x88,%%xmm1,%%xmm0 \n"
1328 "pavgb %%xmm7,%%xmm0 \n"
1333 "movdqa %%xmm0,%%xmm1 \n"
1335 "pmaddubsw %%xmm4,%%xmm0 \n"
1339 "phaddw %%xmm2,%%xmm0 \n"
1341 "psraw $0x8,%%xmm0 \n"
1343 "packsswb %%xmm1,%%xmm0 \n"
1344 "paddb %%xmm5,%%xmm0 \n"
1346 "movlps %%xmm0," MEMACCESS(1) " \n"
1348 MEMOPMEM(movhps,xmm0,0x00,1,2,1) // movhps %%xmm0,(%1,%2,1)
1361 , "xmm0", "xmm1", "xmm2", "xmm6", "xmm7"
1381 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
1386 "movdqa %%xmm0,%%xmm7 \n"
1387 "shufps $0x88,%%xmm1,%%xmm0 \n"
1389 "pavgb %%xmm7,%%xmm0 \n"
1394 "movdqa %%xmm0,%%xmm1 \n"
1396 "pmaddubsw %%xmm4,%%xmm0 \n"
1400 "phaddw %%xmm2,%%xmm0 \n"
1402 "psraw $0x8,%%xmm0 \n"
1404 "packsswb %%xmm1,%%xmm0 \n"
1405 "paddb %%xmm5,%%xmm0 \n"
1407 "movlps %%xmm0," MEMACCESS(1) " \n"
1409 MEMOPMEM(movhps,xmm0,0x00,1,2,1) // movhps %%xmm0,(%1,%2,1)
1422 , "xmm0", "xmm1", "xmm2", "xmm6", "xmm7"
1433 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
1437 "pmaddubsw %%xmm4,%%xmm0 \n"
1442 "phaddw %%xmm1,%%xmm0 \n"
1444 "psrlw $0x7,%%xmm0 \n"
1446 "packuswb %%xmm2,%%xmm0 \n"
1447 "paddb %%xmm5,%%xmm0 \n"
1449 "movdqa %%xmm0," MEMACCESS(1) " \n"
1459 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
1470 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
1474 "pmaddubsw %%xmm4,%%xmm0 \n"
1479 "phaddw %%xmm1,%%xmm0 \n"
1481 "psrlw $0x7,%%xmm0 \n"
1483 "packuswb %%xmm2,%%xmm0 \n"
1484 "paddb %%xmm5,%%xmm0 \n"
1486 "movdqu %%xmm0," MEMACCESS(1) " \n"
1496 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
1516 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
1521 MEMOPREG(pavgb,0x00,0,4,1,xmm0) // pavgb (%0,%4,1),%%xmm0
1526 "movdqa %%xmm0,%%xmm7 \n"
1527 "shufps $0x88,%%xmm1,%%xmm0 \n"
1529 "pavgb %%xmm7,%%xmm0 \n"
1534 "movdqa %%xmm0,%%xmm1 \n"
1536 "pmaddubsw %%xmm4,%%xmm0 \n"
1540 "phaddw %%xmm2,%%xmm0 \n"
1542 "psraw $0x8,%%xmm0 \n"
1544 "packsswb %%xmm1,%%xmm0 \n"
1545 "paddb %%xmm5,%%xmm0 \n"
1547 "movlps %%xmm0," MEMACCESS(1) " \n"
1549 MEMOPMEM(movhps,xmm0,0x00,1,2,1) // movhps %%xmm0,(%1,%2,1)
1562 , "xmm0", "xmm1", "xmm2", "xmm6", "xmm7"
1582 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
1588 "pavgb %%xmm7,%%xmm0 \n"
1596 "movdqa %%xmm0,%%xmm7 \n"
1597 "shufps $0x88,%%xmm1,%%xmm0 \n"
1599 "pavgb %%xmm7,%%xmm0 \n"
1604 "movdqa %%xmm0,%%xmm1 \n"
1606 "pmaddubsw %%xmm4,%%xmm0 \n"
1610 "phaddw %%xmm2,%%xmm0 \n"
1612 "psraw $0x8,%%xmm0 \n"
1614 "packsswb %%xmm1,%%xmm0 \n"
1615 "paddb %%xmm5,%%xmm0 \n"
1617 "movlps %%xmm0," MEMACCESS(1) " \n"
1619 MEMOPMEM(movhps,xmm0,0x00,1,2,1) // movhps %%xmm0,(%1,%2,1)
1632 , "xmm0", "xmm1", "xmm2", "xmm6", "xmm7"
1643 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
1647 "pmaddubsw %%xmm4,%%xmm0 \n"
1652 "phaddw %%xmm1,%%xmm0 \n"
1654 "psrlw $0x7,%%xmm0 \n"
1656 "packuswb %%xmm2,%%xmm0 \n"
1657 "paddb %%xmm5,%%xmm0 \n"
1659 "movdqa %%xmm0," MEMACCESS(1) " \n"
1669 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
1680 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
1684 "pmaddubsw %%xmm4,%%xmm0 \n"
1689 "phaddw %%xmm1,%%xmm0 \n"
1691 "psrlw $0x7,%%xmm0 \n"
1693 "packuswb %%xmm2,%%xmm0 \n"
1694 "paddb %%xmm5,%%xmm0 \n"
1696 "movdqu %%xmm0," MEMACCESS(1) " \n"
1706 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
1717 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
1721 "pmaddubsw %%xmm4,%%xmm0 \n"
1726 "phaddw %%xmm1,%%xmm0 \n"
1728 "psrlw $0x7,%%xmm0 \n"
1730 "packuswb %%xmm2,%%xmm0 \n"
1731 "paddb %%xmm5,%%xmm0 \n"
1733 "movdqa %%xmm0," MEMACCESS(1) " \n"
1743 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
1754 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
1758 "pmaddubsw %%xmm4,%%xmm0 \n"
1763 "phaddw %%xmm1,%%xmm0 \n"
1765 "psrlw $0x7,%%xmm0 \n"
1767 "packuswb %%xmm2,%%xmm0 \n"
1768 "paddb %%xmm5,%%xmm0 \n"
1770 "movdqu %%xmm0," MEMACCESS(1) " \n"
1780 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
1800 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
1805 MEMOPREG(pavgb,0x00,0,4,1,xmm0) // pavgb (%0,%4,1),%%xmm0
1810 "movdqa %%xmm0,%%xmm7 \n"
1811 "shufps $0x88,%%xmm1,%%xmm0 \n"
1813 "pavgb %%xmm7,%%xmm0 \n"
1818 "movdqa %%xmm0,%%xmm1 \n"
1820 "pmaddubsw %%xmm4,%%xmm0 \n"
1824 "phaddw %%xmm2,%%xmm0 \n"
1826 "psraw $0x8,%%xmm0 \n"
1828 "packsswb %%xmm1,%%xmm0 \n"
1829 "paddb %%xmm5,%%xmm0 \n"
1831 "movlps %%xmm0," MEMACCESS(1) " \n"
1833 MEMOPMEM(movhps,xmm0,0x00,1,2,1) // movhps %%xmm0,(%1,%2,1)
1846 , "xmm0", "xmm1", "xmm2", "xmm6", "xmm7"
1866 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
1872 "pavgb %%xmm7,%%xmm0 \n"
1880 "movdqa %%xmm0,%%xmm7 \n"
1881 "shufps $0x88,%%xmm1,%%xmm0 \n"
1883 "pavgb %%xmm7,%%xmm0 \n"
1888 "movdqa %%xmm0,%%xmm1 \n"
1890 "pmaddubsw %%xmm4,%%xmm0 \n"
1894 "phaddw %%xmm2,%%xmm0 \n"
1896 "psraw $0x8,%%xmm0 \n"
1898 "packsswb %%xmm1,%%xmm0 \n"
1899 "paddb %%xmm5,%%xmm0 \n"
1901 "movlps %%xmm0," MEMACCESS(1) " \n"
1903 MEMOPMEM(movhps,xmm0,0x00,1,2,1) // movhps %%xmm0,(%1,%2,1)
1916 , "xmm0", "xmm1", "xmm2", "xmm6", "xmm7"
1936 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
1941 MEMOPREG(pavgb,0x00,0,4,1,xmm0) // pavgb (%0,%4,1),%%xmm0
1946 "movdqa %%xmm0,%%xmm7 \n"
1947 "shufps $0x88,%%xmm1,%%xmm0 \n"
1949 "pavgb %%xmm7,%%xmm0 \n"
1954 "movdqa %%xmm0,%%xmm1 \n"
1956 "pmaddubsw %%xmm4,%%xmm0 \n"
1960 "phaddw %%xmm2,%%xmm0 \n"
1962 "psraw $0x8,%%xmm0 \n"
1964 "packsswb %%xmm1,%%xmm0 \n"
1965 "paddb %%xmm5,%%xmm0 \n"
1967 "movlps %%xmm0," MEMACCESS(1) " \n"
1969 MEMOPMEM(movhps,xmm0,0x00,1,2,1) // movhps %%xmm0,(%1,%2,1)
1982 , "xmm0", "xmm1", "xmm2", "xmm6", "xmm7"
2002 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
2008 "pavgb %%xmm7,%%xmm0 \n"
2016 "movdqa %%xmm0,%%xmm7 \n"
2017 "shufps $0x88,%%xmm1,%%xmm0 \n"
2019 "pavgb %%xmm7,%%xmm0 \n"
2024 "movdqa %%xmm0,%%xmm1 \n"
2026 "pmaddubsw %%xmm4,%%xmm0 \n"
2030 "phaddw %%xmm2,%%xmm0 \n"
2032 "psraw $0x8,%%xmm0 \n"
2034 "packsswb %%xmm1,%%xmm0 \n"
2035 "paddb %%xmm5,%%xmm0 \n"
2037 "movlps %%xmm0," MEMACCESS(1) " \n"
2039 MEMOPMEM(movhps,xmm0,0x00,1,2,1) // movhps %%xmm0,(%1,%2,1)
2052 , "xmm0", "xmm1", "xmm2", "xmm6", "xmm7"
2103 "movq " MEMACCESS([u_buf]) ",%%xmm0 \n" \
2107 "punpcklbw %%xmm1,%%xmm0 \n"
2111 "movd " MEMACCESS([u_buf]) ",%%xmm0 \n" \
2115 "punpcklbw %%xmm1,%%xmm0 \n" \
2116 "punpcklwd %%xmm0,%%xmm0 \n"
2120 "movd " MEMACCESS([u_buf]) ",%%xmm0 \n" \
2124 "punpcklbw %%xmm1,%%xmm0 \n" \
2125 "punpcklwd %%xmm0,%%xmm0 \n" \
2126 "punpckldq %%xmm0,%%xmm0 \n"
2130 "movq " MEMACCESS([uv_buf]) ",%%xmm0 \n" \
2132 "punpcklwd %%xmm0,%%xmm0 \n"
2136 "movdqa %%xmm0,%%xmm1 \n" \
2137 "movdqa %%xmm0,%%xmm2 \n" \
2138 "pmaddubsw " MEMACCESS([kYuvConstants]) ",%%xmm0 \n" \
2141 "psubw " MEMACCESS2(48, [kYuvConstants]) ",%%xmm0 \n" \
2149 "paddsw %%xmm3,%%xmm0 \n" \
2152 "psraw $0x6,%%xmm0 \n" \
2155 "packuswb %%xmm0,%%xmm0 \n" \
2161 "movdqa %%xmm0,%%xmm1 \n" \
2162 "movdqa %%xmm0,%%xmm2 \n" \
2163 "pmaddubsw " MEMACCESS2(128, [kYuvConstants]) ",%%xmm0 \n" \
2166 "psubw " MEMACCESS2(48, [kYuvConstants]) ",%%xmm0 \n" \
2174 "paddsw %%xmm3,%%xmm0 \n" \
2177 "psraw $0x6,%%xmm0 \n" \
2180 "packuswb %%xmm0,%%xmm0 \n" \
2197 "punpcklbw %%xmm1,%%xmm0 \n"
2199 "movdqa %%xmm0,%%xmm1 \n"
2200 "punpcklwd %%xmm2,%%xmm0 \n"
2202 "movdqa %%xmm0," MEMACCESS([dst_argb]) " \n"
2218 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
2248 "punpcklbw %%xmm1,%%xmm0 \n"
2250 "movdqa %%xmm0,%%xmm1 \n"
2251 "punpcklwd %%xmm2,%%xmm0 \n"
2253 "pshufb %%xmm5,%%xmm0 \n"
2255 "palignr $0xc,%%xmm0,%%xmm1 \n"
2256 "movq %%xmm0," MEMACCESS([dst_rgb24]) "\n"
2276 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5", "xmm6"
2306 "punpcklbw %%xmm1,%%xmm0 \n"
2308 "movdqa %%xmm0,%%xmm1 \n"
2309 "punpcklwd %%xmm2,%%xmm0 \n"
2311 "pshufb %%xmm5,%%xmm0 \n"
2313 "palignr $0xc,%%xmm0,%%xmm1 \n"
2314 "movq %%xmm0," MEMACCESS([dst_raw]) " \n"
2334 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5", "xmm6"
2352 "punpcklbw %%xmm1,%%xmm0 \n"
2354 "movdqa %%xmm0,%%xmm1 \n"
2355 "punpcklwd %%xmm2,%%xmm0 \n"
2357 "movdqa %%xmm0," MEMACCESS([dst_argb]) "\n"
2373 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
2391 "punpcklbw %%xmm1,%%xmm0 \n"
2393 "movdqa %%xmm0,%%xmm1 \n"
2394 "punpcklwd %%xmm2,%%xmm0 \n"
2396 "movdqa %%xmm0," MEMACCESS([dst_argb]) "\n"
2412 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
2428 "punpcklbw %%xmm1,%%xmm0 \n"
2430 "movdqa %%xmm0,%%xmm1 \n"
2431 "punpcklwd %%xmm2,%%xmm0 \n"
2433 "movdqa %%xmm0," MEMACCESS([dst_argb]) "\n"
2446 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
2462 "punpcklbw %%xmm1,%%xmm0 \n"
2464 "movdqa %%xmm0,%%xmm1 \n"
2465 "punpcklwd %%xmm2,%%xmm0 \n"
2467 "movdqa %%xmm0," MEMACCESS([dst_argb]) "\n"
2480 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
2498 "punpcklbw %%xmm1,%%xmm0 \n"
2500 "movdqa %%xmm0,%%xmm1 \n"
2501 "punpcklwd %%xmm2,%%xmm0 \n"
2503 "movdqu %%xmm0," MEMACCESS([dst_argb]) "\n"
2519 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
2537 "punpcklbw %%xmm1,%%xmm0 \n"
2539 "movdqa %%xmm0,%%xmm1 \n"
2540 "punpcklwd %%xmm2,%%xmm0 \n"
2542 "movdqu %%xmm0," MEMACCESS([dst_argb]) "\n"
2558 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
2576 "punpcklbw %%xmm1,%%xmm0 \n"
2578 "movdqa %%xmm0,%%xmm1 \n"
2579 "punpcklwd %%xmm2,%%xmm0 \n"
2581 "movdqu %%xmm0," MEMACCESS([dst_argb]) "\n"
2597 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
2613 "punpcklbw %%xmm1,%%xmm0 \n"
2615 "movdqa %%xmm0,%%xmm1 \n"
2616 "punpcklwd %%xmm2,%%xmm0 \n"
2618 "movdqu %%xmm0," MEMACCESS([dst_argb]) "\n"
2631 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
2647 "punpcklbw %%xmm1,%%xmm0 \n"
2649 "movdqa %%xmm0,%%xmm1 \n"
2650 "punpcklwd %%xmm2,%%xmm0 \n"
2652 "movdqu %%xmm0," MEMACCESS([dst_argb]) "\n"
2665 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
2684 "punpcklbw %%xmm0,%%xmm1 \n"
2686 "movdqa %%xmm5,%%xmm0 \n"
2688 "punpckhwd %%xmm1,%%xmm0 \n"
2690 "movdqa %%xmm0," MEMACCESS2(0x10,[dst_bgra]) "\n"
2705 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
2724 "punpcklbw %%xmm5,%%xmm0 \n"
2726 "punpcklwd %%xmm0,%%xmm2 \n"
2727 "punpckhwd %%xmm0,%%xmm1 \n"
2744 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
2764 "punpcklbw %%xmm0,%%xmm5 \n"
2765 "movdqa %%xmm5,%%xmm0 \n"
2767 "punpckhwd %%xmm1,%%xmm0 \n"
2769 "movdqa %%xmm0," MEMACCESS2(0x10,[dst_rgba]) "\n"
2784 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
2803 "punpcklbw %%xmm0,%%xmm1 \n"
2805 "movdqa %%xmm5,%%xmm0 \n"
2807 "punpckhwd %%xmm1,%%xmm0 \n"
2809 "movdqu %%xmm0," MEMACCESS2(0x10,[dst_bgra]) "\n"
2824 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
2843 "punpcklbw %%xmm5,%%xmm0 \n"
2845 "punpcklwd %%xmm0,%%xmm2 \n"
2846 "punpckhwd %%xmm0,%%xmm1 \n"
2863 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
2883 "punpcklbw %%xmm0,%%xmm5 \n"
2884 "movdqa %%xmm5,%%xmm0 \n"
2886 "punpckhwd %%xmm1,%%xmm0 \n"
2888 "movdqu %%xmm0," MEMACCESS2(0x10,[dst_rgba]) "\n"
2903 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
2927 "movq " MEMACCESS(0) ",%%xmm0 \n"
2929 "punpcklbw %%xmm5,%%xmm0 \n"
2930 "psubusw %%xmm3,%%xmm0 \n"
2931 "pmullw %%xmm2,%%xmm0 \n"
2932 "psrlw $6, %%xmm0 \n"
2933 "packuswb %%xmm0,%%xmm0 \n"
2936 "punpcklbw %%xmm0,%%xmm0 \n"
2937 "movdqa %%xmm0,%%xmm1 \n"
2938 "punpcklwd %%xmm0,%%xmm0 \n"
2940 "por %%xmm4,%%xmm0 \n"
2942 "movdqa %%xmm0," MEMACCESS(1) " \n"
2954 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4"
2973 MEMOPREG(movdqa,0x00,0,2,1,xmm0) // movdqa (%0,%2),%%xmm0
2974 "pshufb %%xmm5,%%xmm0 \n"
2976 "movdqa %%xmm0," MEMACCESS(1) " \n"
2988 , "xmm0", "xmm5"
3001 MEMOPREG(movdqu,0x00,0,2,1,xmm0) // movdqu (%0,%2),%%xmm0
3002 "movdqa %%xmm0,%%xmm1 \n"
3003 "psllw $0x8,%%xmm0 \n"
3005 "por %%xmm1,%%xmm0 \n"
3006 "pshuflw $0x1b,%%xmm0,%%xmm0 \n"
3007 "pshufhw $0x1b,%%xmm0,%%xmm0 \n"
3008 "pshufd $0x4e,%%xmm0,%%xmm0 \n"
3010 "movdqu %%xmm0," MEMACCESS(1) " \n"
3022 , "xmm0", "xmm1"
3042 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
3044 "pshufb %%xmm1,%%xmm0 \n"
3046 "movlpd %%xmm0," MEMACCESS(1) " \n"
3048 MEMOPMEM(movhpd,xmm0,0x00,1,2,1) // movhpd %%xmm0,(%1,%2)
3061 , "xmm0", "xmm1"
3080 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
3081 "pshufb %%xmm5,%%xmm0 \n"
3084 "movdqa %%xmm0," MEMACCESS(1) " \n"
3093 , "xmm0", "xmm5"
3107 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
3110 "movdqa %%xmm0,%%xmm2 \n"
3112 "pand %%xmm5,%%xmm0 \n"
3114 "packuswb %%xmm1,%%xmm0 \n"
3118 "movdqa %%xmm0," MEMACCESS(1) " \n"
3133 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm5"
3146 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
3149 "movdqa %%xmm0,%%xmm2 \n"
3151 "pand %%xmm5,%%xmm0 \n"
3153 "packuswb %%xmm1,%%xmm0 \n"
3157 "movdqu %%xmm0," MEMACCESS(1) " \n"
3172 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm5"
3185 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
3188 "movdqa %%xmm0,%%xmm2 \n"
3189 "punpcklbw %%xmm1,%%xmm0 \n"
3191 "movdqa %%xmm0," MEMACCESS(2) " \n"
3206 , "xmm0", "xmm1", "xmm2"
3217 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
3220 "movdqa %%xmm0,%%xmm2 \n"
3221 "punpcklbw %%xmm1,%%xmm0 \n"
3223 "movdqu %%xmm0," MEMACCESS(2) " \n"
3238 , "xmm0", "xmm1", "xmm2"
3249 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
3252 "movdqa %%xmm0," MEMACCESS(1) " \n"
3263 , "xmm0", "xmm1"
3303 "pcmpeqb %%xmm0,%%xmm0 \n"
3304 "pslld $0x18,%%xmm0 \n"
3314 "pand %%xmm0,%%xmm2 \n"
3315 "pand %%xmm0,%%xmm3 \n"
3331 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
3362 , "xmm0", "xmm1", "xmm2"
3372 "pcmpeqb %%xmm0,%%xmm0 \n"
3373 "pslld $0x18,%%xmm0 \n"
3385 "pand %%xmm0,%%xmm2 \n"
3386 "pand %%xmm0,%%xmm3 \n"
3402 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
3435 , "xmm0", "xmm1", "xmm2"
3476 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
3479 "pand %%xmm5,%%xmm0 \n"
3481 "packuswb %%xmm1,%%xmm0 \n"
3482 "movdqa %%xmm0," MEMACCESS(1) " \n"
3492 , "xmm0", "xmm1", "xmm5"
3505 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
3511 "pavgb %%xmm2,%%xmm0 \n"
3513 "psrlw $0x8,%%xmm0 \n"
3515 "packuswb %%xmm1,%%xmm0 \n"
3516 "movdqa %%xmm0,%%xmm1 \n"
3517 "pand %%xmm5,%%xmm0 \n"
3518 "packuswb %%xmm0,%%xmm0 \n"
3521 "movq %%xmm0," MEMACCESS(1) " \n"
3537 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm5"
3550 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
3553 "psrlw $0x8,%%xmm0 \n"
3555 "packuswb %%xmm1,%%xmm0 \n"
3556 "movdqa %%xmm0,%%xmm1 \n"
3557 "pand %%xmm5,%%xmm0 \n"
3558 "packuswb %%xmm0,%%xmm0 \n"
3561 "movq %%xmm0," MEMACCESS(1) " \n"
3577 , "xmm0", "xmm1", "xmm5"
3589 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
3592 "pand %%xmm5,%%xmm0 \n"
3594 "packuswb %%xmm1,%%xmm0 \n"
3596 "movdqu %%xmm0," MEMACCESS(1) " \n"
3605 , "xmm0", "xmm1", "xmm5"
3619 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
3625 "pavgb %%xmm2,%%xmm0 \n"
3627 "psrlw $0x8,%%xmm0 \n"
3629 "packuswb %%xmm1,%%xmm0 \n"
3630 "movdqa %%xmm0,%%xmm1 \n"
3631 "pand %%xmm5,%%xmm0 \n"
3632 "packuswb %%xmm0,%%xmm0 \n"
3635 "movq %%xmm0," MEMACCESS(1) " \n"
3651 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm5"
3664 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
3667 "psrlw $0x8,%%xmm0 \n"
3669 "packuswb %%xmm1,%%xmm0 \n"
3670 "movdqa %%xmm0,%%xmm1 \n"
3671 "pand %%xmm5,%%xmm0 \n"
3672 "packuswb %%xmm0,%%xmm0 \n"
3675 "movq %%xmm0," MEMACCESS(1) " \n"
3691 , "xmm0", "xmm1", "xmm5"
3700 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
3703 "psrlw $0x8,%%xmm0 \n"
3705 "packuswb %%xmm1,%%xmm0 \n"
3707 "movdqa %%xmm0," MEMACCESS(1) " \n"
3716 , "xmm0", "xmm1"
3729 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
3735 "pavgb %%xmm2,%%xmm0 \n"
3737 "pand %%xmm5,%%xmm0 \n"
3739 "packuswb %%xmm1,%%xmm0 \n"
3740 "movdqa %%xmm0,%%xmm1 \n"
3741 "pand %%xmm5,%%xmm0 \n"
3742 "packuswb %%xmm0,%%xmm0 \n"
3745 "movq %%xmm0," MEMACCESS(1) " \n"
3761 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm5"
3774 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
3777 "pand %%xmm5,%%xmm0 \n"
3779 "packuswb %%xmm1,%%xmm0 \n"
3780 "movdqa %%xmm0,%%xmm1 \n"
3781 "pand %%xmm5,%%xmm0 \n"
3782 "packuswb %%xmm0,%%xmm0 \n"
3785 "movq %%xmm0," MEMACCESS(1) " \n"
3801 , "xmm0", "xmm1", "xmm5"
3811 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
3814 "psrlw $0x8,%%xmm0 \n"
3816 "packuswb %%xmm1,%%xmm0 \n"
3818 "movdqu %%xmm0," MEMACCESS(1) " \n"
3827 , "xmm0", "xmm1"
3840 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
3846 "pavgb %%xmm2,%%xmm0 \n"
3848 "pand %%xmm5,%%xmm0 \n"
3850 "packuswb %%xmm1,%%xmm0 \n"
3851 "movdqa %%xmm0,%%xmm1 \n"
3852 "pand %%xmm5,%%xmm0 \n"
3853 "packuswb %%xmm0,%%xmm0 \n"
3856 "movq %%xmm0," MEMACCESS(1) " \n"
3872 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm5"
3885 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
3888 "pand %%xmm5,%%xmm0 \n"
3890 "packuswb %%xmm1,%%xmm0 \n"
3891 "movdqa %%xmm0,%%xmm1 \n"
3892 "pand %%xmm5,%%xmm0 \n"
3893 "packuswb %%xmm0,%%xmm0 \n"
3896 "movq %%xmm0," MEMACCESS(1) " \n"
3912 , "xmm0", "xmm1", "xmm5"
3941 "movdqa %%xmm3,%%xmm0 \n"
3953 "por %%xmm4,%%xmm0 \n"
3956 "paddusb %%xmm2,%%xmm0 \n"
3958 "paddusb %%xmm1,%%xmm0 \n"
3960 "movd %%xmm0," MEMACCESS(2) " \n"
3973 "movdqa %%xmm3,%%xmm0 \n"
3985 "por %%xmm4,%%xmm0 \n"
3988 "paddusb %%xmm2,%%xmm0 \n"
3990 "paddusb %%xmm1,%%xmm0 \n"
3992 "movdqa %%xmm0," MEMACCESS(2) " \n"
4004 "movdqa %%xmm3,%%xmm0 \n"
4016 "por %%xmm4,%%xmm0 \n"
4019 "paddusb %%xmm2,%%xmm0 \n"
4021 "paddusb %%xmm1,%%xmm0 \n"
4023 "movd %%xmm0," MEMACCESS(2) " \n"
4034 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5", "xmm6", "xmm7"
4078 "movdqa %%xmm3,%%xmm0 \n"
4088 "por %%xmm4,%%xmm0 \n"
4091 "paddusb %%xmm2,%%xmm0 \n"
4093 "paddusb %%xmm1,%%xmm0 \n"
4095 "movd %%xmm0," MEMACCESS(2) " \n"
4112 "movdqa %%xmm3,%%xmm0 \n"
4122 "por %%xmm4,%%xmm0 \n"
4125 "paddusb %%xmm2,%%xmm0 \n"
4127 "paddusb %%xmm1,%%xmm0 \n"
4129 "movdqa %%xmm0," MEMACCESS(2) " \n"
4139 "movdqa %%xmm3,%%xmm0 \n"
4149 "por %%xmm4,%%xmm0 \n"
4152 "paddusb %%xmm2,%%xmm0 \n"
4154 "paddusb %%xmm1,%%xmm0 \n"
4156 "movdqa %%xmm0," MEMACCESS(2) " \n"
4168 "movdqa %%xmm3,%%xmm0 \n"
4178 "por %%xmm4,%%xmm0 \n"
4181 "paddusb %%xmm2,%%xmm0 \n"
4183 "paddusb %%xmm1,%%xmm0 \n"
4185 "movd %%xmm0," MEMACCESS(2) " \n"
4196 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5", "xmm6", "xmm7"
4215 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
4216 "punpcklbw %%xmm0,%%xmm0 \n"
4217 "pshufhw $0xff,%%xmm0,%%xmm2 \n"
4219 "pmulhuw %%xmm2,%%xmm0 \n"
4227 "psrlw $0x8,%%xmm0 \n"
4230 "packuswb %%xmm1,%%xmm0 \n"
4231 "pand %%xmm5,%%xmm0 \n"
4232 "por %%xmm2,%%xmm0 \n"
4234 "movdqa %%xmm0," MEMACCESS(1) " \n"
4243 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
4270 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
4271 "pshufb %%xmm4,%%xmm0 \n"
4274 "pmulhuw %%xmm1,%%xmm0 \n"
4283 "psrlw $0x8,%%xmm0 \n"
4285 "packuswb %%xmm1,%%xmm0 \n"
4286 "por %%xmm2,%%xmm0 \n"
4288 "movdqu %%xmm0," MEMACCESS(1) " \n"
4298 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
4314 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
4316 "punpcklbw %%xmm0,%%xmm0 \n"
4323 "pmulhuw %%xmm2,%%xmm0 \n"
4336 "packuswb %%xmm1,%%xmm0 \n"
4338 "movdqu %%xmm0," MEMACCESS(1) " \n"
4351 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
4367 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
4369 "pmaddubsw %%xmm4,%%xmm0 \n"
4371 "phaddw %%xmm1,%%xmm0 \n"
4372 "paddw %%xmm5,%%xmm0 \n"
4373 "psrlw $0x7,%%xmm0 \n"
4374 "packuswb %%xmm0,%%xmm0 \n"
4382 "movdqa %%xmm0,%%xmm3 \n"
4383 "punpcklbw %%xmm0,%%xmm0 \n"
4385 "movdqa %%xmm0,%%xmm1 \n"
4386 "punpcklwd %%xmm3,%%xmm0 \n"
4389 "movdqa %%xmm0," MEMACCESS(1) " \n"
4400 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
4433 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
4435 "pmaddubsw %%xmm2,%%xmm0 \n"
4437 "phaddw %%xmm6,%%xmm0 \n"
4438 "psrlw $0x7,%%xmm0 \n"
4439 "packuswb %%xmm0,%%xmm0 \n"
4447 "punpcklbw %%xmm5,%%xmm0 \n"
4462 "movdqa %%xmm0,%%xmm1 \n"
4463 "punpcklwd %%xmm5,%%xmm0 \n"
4466 "movdqa %%xmm0," MEMACCESS(0) " \n"
4477 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5", "xmm6"
4498 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
4500 "pmaddubsw %%xmm2,%%xmm0 \n"
4506 "phaddsw %%xmm7,%%xmm0 \n"
4508 "psraw $0x6,%%xmm0 \n"
4510 "packuswb %%xmm0,%%xmm0 \n"
4512 "punpcklbw %%xmm6,%%xmm0 \n"
4528 "movdqa %%xmm0,%%xmm6 \n"
4529 "punpcklwd %%xmm1,%%xmm0 \n"
4532 "movdqa %%xmm0," MEMACCESS(1) " \n"
4543 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5", "xmm6", "xmm7"
4571 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
4572 "punpcklbw %%xmm5,%%xmm0 \n"
4573 "pmulhuw %%xmm2,%%xmm0 \n"
4577 "pmullw %%xmm3,%%xmm0 \n"
4581 "paddw %%xmm4,%%xmm0 \n"
4583 "packuswb %%xmm1,%%xmm0 \n"
4584 "por %%xmm7,%%xmm0 \n"
4586 "movdqa %%xmm0," MEMACCESS(0) " \n"
4596 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5", "xmm6", "xmm7"
4615 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
4617 "movdqa %%xmm0,%%xmm1 \n"
4618 "punpcklbw %%xmm0,%%xmm0 \n"
4620 "pmulhuw %%xmm2,%%xmm0 \n"
4622 "psrlw $0x8,%%xmm0 \n"
4624 "packuswb %%xmm1,%%xmm0 \n"
4626 "movdqa %%xmm0," MEMACCESS(1) " \n"
4635 , "xmm0", "xmm1", "xmm2"
4651 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
4655 "movdqu %%xmm0,%%xmm1 \n"
4657 "punpcklbw %%xmm0,%%xmm0 \n"
4661 "pmulhuw %%xmm2,%%xmm0 \n"
4663 "packuswb %%xmm1,%%xmm0 \n"
4665 "movdqu %%xmm0," MEMACCESS(2) " \n"
4675 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm5"
4689 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
4693 "paddusb %%xmm1,%%xmm0 \n"
4695 "movdqu %%xmm0," MEMACCESS(2) " \n"
4705 , "xmm0", "xmm1"
4719 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
4723 "psubusb %%xmm1,%%xmm0 \n"
4725 "movdqu %%xmm0," MEMACCESS(2) " \n"
4735 , "xmm0", "xmm1"
4757 "movq " MEMACCESS(0) ",%%xmm0 \n"
4759 "punpcklbw %%xmm5,%%xmm0 \n"
4761 "psubw %%xmm1,%%xmm0 \n"
4774 "paddw %%xmm2,%%xmm0 \n"
4775 "paddw %%xmm1,%%xmm0 \n"
4776 "paddw %%xmm1,%%xmm0 \n"
4778 "psubw %%xmm0,%%xmm1 \n"
4779 "pmaxsw %%xmm1,%%xmm0 \n"
4780 "packuswb %%xmm0,%%xmm0 \n"
4783 MEMOPMEM(movq,xmm0,0x00,0,3,1) // movq %%xmm0,(%0,%3,1)
4797 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm5"
4818 "movq " MEMACCESS(0) ",%%xmm0 \n"
4820 "punpcklbw %%xmm5,%%xmm0 \n"
4822 "psubw %%xmm1,%%xmm0 \n"
4835 "paddw %%xmm2,%%xmm0 \n"
4836 "paddw %%xmm1,%%xmm0 \n"
4837 "paddw %%xmm1,%%xmm0 \n"
4839 "psubw %%xmm0,%%xmm1 \n"
4840 "pmaxsw %%xmm1,%%xmm0 \n"
4841 "packuswb %%xmm0,%%xmm0 \n"
4844 MEMOPMEM(movq,xmm0,0x00,0,2,1) // movq %%xmm0,(%0,%2,1)
4857 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm5"
4879 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
4882 "paddusb %%xmm1,%%xmm0 \n"
4883 "movdqa %%xmm0,%%xmm2 \n"
4884 "punpcklbw %%xmm0,%%xmm2 \n"
4885 "punpckhbw %%xmm0,%%xmm0 \n"
4891 "movdqa %%xmm0,%%xmm3 \n"
4892 "punpcklwd %%xmm0,%%xmm3 \n"
4893 "punpckhwd %%xmm0,%%xmm0 \n"
4895 "por %%xmm5,%%xmm0 \n"
4900 "movdqa %%xmm0," MEMACCESS2(0x30,2) " \n"
4913 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm5"
4931 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
4934 "paddusb %%xmm1,%%xmm0 \n"
4936 "movdqa %%xmm0," MEMACCESS(2) " \n"
4949 xmm0", "xmm1"
4970 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
4973 "movdqa %%xmm0,%%xmm2 \n"
4975 "movdqa %%xmm0,%%xmm3 \n"
4977 "punpckhbw %%xmm5,%%xmm0 \n"
4985 "punpcklwd %%xmm0,%%xmm7 \n"
4986 "punpckhwd %%xmm0,%%xmm1 \n"
5004 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5", "xmm6", "xmm7"
5016 "pxor %%xmm0,%%xmm0 \n"
5037 "paddd %%xmm2,%%xmm0 \n"
5039 "paddd %%xmm0,%%xmm2 \n"
5040 "paddd %%xmm3,%%xmm0 \n"
5042 "paddd %%xmm0,%%xmm3 \n"
5043 "paddd %%xmm4,%%xmm0 \n"
5045 "paddd %%xmm0,%%xmm4 \n"
5046 "paddd %%xmm5,%%xmm0 \n"
5049 "paddd %%xmm0,%%xmm5 \n"
5069 "paddd %%xmm2,%%xmm0 \n"
5072 "paddd %%xmm0,%%xmm2 \n"
5086 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
5118 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
5123 MEMOPREG(psubd,0x00,0,4,4,xmm0) // psubd 0x00(%0,%4,4),%%xmm0
5128 "psubd " MEMACCESS(1) ",%%xmm0 \n"
5133 MEMOPREG(paddd,0x00,1,4,4,xmm0) // paddd 0x00(%1,%4,4),%%xmm0
5138 "packssdw %%xmm1,%%xmm0 \n"
5140 "pmulhuw %%xmm5,%%xmm0 \n"
5142 "packuswb %%xmm2,%%xmm0 \n"
5143 "movdqu %%xmm0," MEMACCESS(2) " \n"
5152 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
5157 MEMOPREG(psubd,0x00,0,4,4,xmm0) // psubd 0x00(%0,%4,4),%%xmm0
5162 "psubd " MEMACCESS(1) ",%%xmm0 \n"
5167 MEMOPREG(paddd,0x00,1,4,4,xmm0) // paddd 0x00(%1,%4,4),%%xmm0
5172 "cvtdq2ps %%xmm0,%%xmm0 \n"
5174 "mulps %%xmm4,%%xmm0 \n"
5180 "cvtps2dq %%xmm0,%%xmm0 \n"
5184 "packssdw %%xmm1,%%xmm0 \n"
5186 "packuswb %%xmm2,%%xmm0 \n"
5187 "movdqu %%xmm0," MEMACCESS(2) " \n"
5199 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
5200 MEMOPREG(psubd,0x00,0,4,4,xmm0) // psubd 0x00(%0,%4,4),%%xmm0
5202 "psubd " MEMACCESS(1) ",%%xmm0 \n"
5204 MEMOPREG(paddd,0x00,1,4,4,xmm0) // paddd 0x00(%1,%4,4),%%xmm0
5206 "cvtdq2ps %%xmm0,%%xmm0 \n"
5207 "mulps %%xmm4,%%xmm0 \n"
5208 "cvtps2dq %%xmm0,%%xmm0 \n"
5209 "packssdw %%xmm0,%%xmm0 \n"
5210 "packuswb %%xmm0,%%xmm0 \n"
5211 "movd %%xmm0," MEMACCESS(2) " \n"
5227 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5", "xmm6"
5251 "movdqa %%xmm2,%%xmm0 \n"
5252 "addps %%xmm7,%%xmm0 \n"
5253 "movlhps %%xmm0,%%xmm2 \n"
5263 "cvttps2dq %%xmm2,%%xmm0 \n" // x, y float to int first 2
5265 "packssdw %%xmm1,%%xmm0 \n" // x, y as 8 shorts
5266 "pmaddwd %%xmm5,%%xmm0 \n" // off = x * 4 + y * stride
5267 "movd %%xmm0,%k1 \n"
5268 "pshufd $0x39,%%xmm0,%%xmm0 \n"
5269 "movd %%xmm0,%k5 \n"
5270 "pshufd $0x39,%%xmm0,%%xmm0 \n"
5277 "movd %%xmm0,%k1 \n"
5278 "pshufd $0x39,%%xmm0,%%xmm0 \n"
5279 "movd %%xmm0,%k5 \n"
5281 MEMOPREG(movd,0x00,0,1,1,xmm0) // movd (%0,%1,1),%%xmm0
5283 "punpckldq %%xmm6,%%xmm0 \n"
5286 "movq %%xmm0," MEMACCESS2(0x08,2) " \n"
5297 "cvttps2dq %%xmm2,%%xmm0 \n"
5298 "packssdw %%xmm0,%%xmm0 \n"
5299 "pmaddwd %%xmm5,%%xmm0 \n"
5301 "movd %%xmm0,%k1 \n"
5303 MEMOPREG(movd,0x00,0,1,1,xmm0) // movd (%0,%1,1),%%xmm0
5305 "movd %%xmm0," MEMACCESS(2) " \n"
5321 , "xmm0
5344 "movd %3,%%xmm0 \n"
5348 "punpcklbw %%xmm0,%%xmm5 \n"
5355 "movdqa " MEMACCESS(1) ",%%xmm0 \n"
5357 "movdqa %%xmm0,%%xmm1 \n"
5358 "punpcklbw %%xmm2,%%xmm0 \n"
5360 "pmaddubsw %%xmm5,%%xmm0 \n"
5362 "psrlw $0x7,%%xmm0 \n"
5364 "packuswb %%xmm1,%%xmm0 \n"
5367 MEMOPMEM(movdqa,xmm0,0x00,1,0,1)
5375 "movdqa " MEMACCESS(1) ",%%xmm0 \n"
5377 "pavgb %%xmm1,%%xmm0 \n"
5378 "pavgb %%xmm1,%%xmm0 \n"
5381 MEMOPMEM(movdqa,xmm0,0x00,1,0,1)
5389 "movdqa " MEMACCESS(1) ",%%xmm0 \n"
5391 "pavgb %%xmm1,%%xmm0 \n"
5394 MEMOPMEM(movdqa,xmm0,0x00,1,0,1)
5403 MEMOPREG(movdqa,0x00,1,4,1,xmm0)
5404 "pavgb %%xmm1,%%xmm0 \n"
5405 "pavgb %%xmm1,%%xmm0 \n"
5408 MEMOPMEM(movdqa,xmm0,0x00,1,0,1)
5416 "movdqa " MEMACCESS(1) ",%%xmm0 \n"
5418 MEMOPMEM(movdqa,xmm0,0x00,1,0,1)
5433 , "xmm0", "xmm1", "xmm2", "xmm5"
5456 "movd %3,%%xmm0 \n"
5460 "punpcklbw %%xmm0,%%xmm5 \n"
5468 "movdqa " MEMACCESS(1) ",%%xmm0 \n"
5470 "movdqa %%xmm0,%%xmm1 \n"
5474 "punpcklbw %%xmm4,%%xmm0 \n"
5476 "psubw %%xmm0,%%xmm2 \n"
5482 "paddw %%xmm2,%%xmm0 \n"
5484 "packuswb %%xmm1,%%xmm0 \n"
5487 MEMOPMEM(movdqa,xmm0,0x00,1,0,1) // movdqa %%xmm0,(%1,%0,1)
5495 "movdqa " MEMACCESS(1) ",%%xmm0 \n"
5497 "pavgb %%xmm1,%%xmm0 \n"
5498 "pavgb %%xmm1,%%xmm0 \n"
5501 MEMOPMEM(movdqa,xmm0,0x00,1,0,1) // movdqa %%xmm0,(%1,%0,1)
5509 "movdqa " MEMACCESS(1) ",%%xmm0 \n"
5511 "pavgb %%xmm1,%%xmm0 \n"
5514 MEMOPMEM(movdqa,xmm0,0x00,1,0,1) // movdqa %%xmm0,(%1,%0,1)
5523 MEMOPREG(movdqa,0x00,1,4,1,xmm0) // movdqa (%1,%4,1),%%xmm0
5524 "pavgb %%xmm1,%%xmm0 \n"
5525 "pavgb %%xmm1,%%xmm0 \n"
5528 MEMOPMEM(movdqa,xmm0,0x00,1,0,1) // movdqa %%xmm0,(%1,%0,1)
5536 "movdqa " MEMACCESS(1) ",%%xmm0 \n"
5538 MEMOPMEM(movdqa,xmm0,0x00,1,0,1) // movdqa %%xmm0,(%1,%0,1)
5553 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
5576 "movd %3,%%xmm0 \n"
5580 "punpcklbw %%xmm0,%%xmm5 \n"
5587 "movdqu " MEMACCESS(1) ",%%xmm0 \n"
5589 "movdqu %%xmm0,%%xmm1 \n"
5590 "punpcklbw %%xmm2,%%xmm0 \n"
5592 "pmaddubsw %%xmm5,%%xmm0 \n"
5594 "psrlw $0x7,%%xmm0 \n"
5596 "packuswb %%xmm1,%%xmm0 \n"
5599 MEMOPMEM(movdqu,xmm0,0x00,1,0,1)
5607 "movdqu " MEMACCESS(1) ",%%xmm0 \n"
5609 "pavgb %%xmm1,%%xmm0 \n"
5610 "pavgb %%xmm1,%%xmm0 \n"
5613 MEMOPMEM(movdqu,xmm0,0x00,1,0,1)
5621 "movdqu " MEMACCESS(1) ",%%xmm0 \n"
5623 "pavgb %%xmm1,%%xmm0 \n"
5626 MEMOPMEM(movdqu,xmm0,0x00,1,0,1)
5635 MEMOPREG(movdqu,0x00,1,4,1,xmm0)
5636 "pavgb %%xmm1,%%xmm0 \n"
5637 "pavgb %%xmm1,%%xmm0 \n"
5640 MEMOPMEM(movdqu,xmm0,0x00,1,0,1)
5648 "movdqu " MEMACCESS(1) ",%%xmm0 \n"
5650 MEMOPMEM(movdqu,xmm0,0x00,1,0,1)
5665 , "xmm0", "xmm1", "xmm2", "xmm5"
5688 "movd %3,%%xmm0 \n"
5692 "punpcklbw %%xmm0,%%xmm5 \n"
5700 "movdqu " MEMACCESS(1) ",%%xmm0 \n"
5702 "movdqu %%xmm0,%%xmm1 \n"
5706 "punpcklbw %%xmm4,%%xmm0 \n"
5708 "psubw %%xmm0,%%xmm2 \n"
5714 "paddw %%xmm2,%%xmm0 \n"
5716 "packuswb %%xmm1,%%xmm0 \n"
5719 MEMOPMEM(movdqu,xmm0,0x00,1,0,1) // movdqu %%xmm0,(%1,%0,1)
5727 "movdqu " MEMACCESS(1) ",%%xmm0 \n"
5729 "pavgb %%xmm1,%%xmm0 \n"
5730 "pavgb %%xmm1,%%xmm0 \n"
5733 MEMOPMEM(movdqu,xmm0,0x00,1,0,1) // movdqu %%xmm0,(%1,%0,1)
5741 "movdqu " MEMACCESS(1) ",%%xmm0 \n"
5743 "pavgb %%xmm1,%%xmm0 \n"
5746 MEMOPMEM(movdqu,xmm0,0x00,1,0,1) // movdqu %%xmm0,(%1,%0,1)
5755 MEMOPREG(movdqu,0x00,1,4,1,xmm0) // movdqu (%1,%4,1),%%xmm0
5756 "pavgb %%xmm1,%%xmm0 \n"
5757 "pavgb %%xmm1,%%xmm0 \n"
5760 MEMOPMEM(movdqu,xmm0,0x00,1,0,1) // movdqu %%xmm0,(%1,%0,1)
5768 "movdqu " MEMACCESS(1) ",%%xmm0 \n"
5770 MEMOPMEM(movdqu,xmm0,0x00,1,0,1) // movdqu %%xmm0,(%1,%0,1)
5785 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5"
5798 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
5799 MEMOPREG(pavgb,0x00,0,3,1,xmm0) // pavgb (%0,%3),%%xmm0
5801 MEMOPMEM(movdqa,xmm0,0x00,0,1,1) // movdqa %%xmm0,(%0,%1)
5810 , "xmm0"
5825 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
5828 "pshufb %%xmm5,%%xmm0 \n"
5830 "punpckldq %%xmm1,%%xmm0 \n"
5832 "movq %%xmm0," MEMACCESS(1) " \n"
5841 , "xmm0", "xmm1", "xmm5"
5855 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
5858 "psrld $0x8,%%xmm0 \n"
5860 "pand %%xmm5,%%xmm0 \n"
5862 "packssdw %%xmm1,%%xmm0 \n"
5863 "packuswb %%xmm1,%%xmm0 \n"
5865 "movq %%xmm0," MEMACCESS(1) " \n"
5874 , "xmm0", "xmm1", "xmm5"
5888 "movdqa " MEMACCESS(0) ",%%xmm0 \n"
5891 "pshufb %%xmm5,%%xmm0 \n"
5894 "movdqa %%xmm0," MEMACCESS(1) " \n"
5904 , "xmm0", "xmm1", "xmm5"
5915 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
5918 "pshufb %%xmm5,%%xmm0 \n"
5921 "movdqu %%xmm0," MEMACCESS(1) " \n"
5931 , "xmm0", "xmm1", "xmm5"
5961 , "xmm0", "xmm1", "xmm5"
6007 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
6009 "movdqa %%xmm0,%%xmm1 \n"
6010 "punpcklbw %%xmm5,%%xmm0 \n"
6012 "pshufhw $0x1b,%%xmm0,%%xmm0 \n"
6013 "pshuflw $0x1b,%%xmm0,%%xmm0 \n"
6016 "packuswb %%xmm1,%%xmm0 \n"
6018 "movdqu %%xmm0," MEMACCESS(1) " \n"
6025 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
6027 "movdqa %%xmm0,%%xmm1 \n"
6028 "punpcklbw %%xmm5,%%xmm0 \n"
6030 "pshufhw $0x39,%%xmm0,%%xmm0 \n"
6031 "pshuflw $0x39,%%xmm0,%%xmm0 \n"
6034 "packuswb %%xmm1,%%xmm0 \n"
6036 "movdqu %%xmm0," MEMACCESS(1) " \n"
6043 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
6045 "movdqa %%xmm0,%%xmm1 \n"
6046 "punpcklbw %%xmm5,%%xmm0 \n"
6048 "pshufhw $0x93,%%xmm0,%%xmm0 \n"
6049 "pshuflw $0x93,%%xmm0,%%xmm0 \n"
6052 "packuswb %%xmm1,%%xmm0 \n"
6054 "movdqu %%xmm0," MEMACCESS(1) " \n"
6061 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
6063 "movdqa %%xmm0,%%xmm1 \n"
6064 "punpcklbw %%xmm5,%%xmm0 \n"
6066 "pshufhw $0xc6,%%xmm0,%%xmm0 \n"
6067 "pshuflw $0xc6,%%xmm0,%%xmm0 \n"
6070 "packuswb %%xmm1,%%xmm0 \n"
6072 "movdqu %%xmm0," MEMACCESS(1) " \n"
6087 , "xmm0", "xmm1", "xmm5"
6106 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
6108 "movdqa %%xmm0,%%xmm1 \n"
6109 "punpcklbw %%xmm2,%%xmm0 \n"
6111 "movdqu %%xmm0," MEMACCESS(3) " \n"
6127 , "xmm0", "xmm1", "xmm2", "xmm3"
6146 "movdqu " MEMACCESS(0) ",%%xmm0 \n"
6149 "punpcklbw %%xmm0,%%xmm1 \n"
6150 "punpckhbw %%xmm0,%%xmm2 \n"
6167 , "xmm0", "xmm1", "xmm2", "xmm3"
6183 "movq " MEMACCESS(0) ",%%xmm0 \n"
6185 "punpcklbw %%xmm3,%%xmm0 \n"
6186 "movdqa %%xmm0,%%xmm4 \n"
6187 "punpcklwd %%xmm3,%%xmm0 \n"
6189 "cvtdq2ps %%xmm0,%%xmm0 \n"
6191 "movdqa %%xmm0,%%xmm1 \n"
6193 "mulps " MEMACCESS2(0x10,3) ",%%xmm0 \n"
6195 "addps " MEMACCESS(3) ",%%xmm0 \n"
6207 "addps %%xmm2,%%xmm0 \n"
6209 "addps %%xmm1,%%xmm0 \n"
6211 "cvttps2dq %%xmm0,%%xmm0 \n"
6213 "packuswb %%xmm4,%%xmm0 \n"
6214 "packuswb %%xmm0,%%xmm0 \n"
6216 "movq %%xmm0," MEMACCESS(1) " \n"
6225 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5", "xmm6"
6255 "vpackuswb %%xmm0,%%xmm0,%%xmm0 \n"
6257 "vmovq %%xmm0," MEMACCESS(1) " \n"
6268 , "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5", "xmm6", "xmm7"
6351 "movdqu " MEMACCESS(2) ",%%xmm0 \n"
6352 "pmaddubsw %%xmm3,%%xmm0 \n"
6353 "phaddw %%xmm0,%%xmm0 \n"
6354 "pand %%xmm4,%%xmm0 \n"
6355 "punpcklwd %%xmm5,%%xmm0 \n"
6356 "movd %%xmm0,%k1 \n" // 32 bit offset
6358 "pshufd $0x39,%%xmm0,%%xmm0 \n"
6372 "movd %%xmm0,%k1 \n" // 32 bit offset
6374 "pshufd $0x39,%%xmm0,%%xmm0 \n"
6389 "movd %%xmm0,%k1 \n" // 32 bit offset
6391 "pshufd $0x39,%%xmm0,%%xmm0 \n"
6405 "movd %%xmm0,%k1 \n" // 32 bit offset
6432 , "xmm0", "xmm3", "xmm4", "xmm5"