Lines Matching refs:mm4
81 "movq %%mm0, %%mm4 \n\t"
82 PMAXUB(%%mm1, %%mm4)
89 PMAXUB(%%mm2, %%mm4)
97 PMAXUB(%%mm1, %%mm4)
107 PMAXUB(%%mm2, %%mm4)
115 PMAXUB(%%mm1, %%mm4)
123 PMAXUB(%%mm2, %%mm4)
131 PMAXUB(%%mm1, %%mm4)
137 "psubusb %%mm3, %%mm4 \n\t"
156 "psubusb %%mm7, %%mm4 \n\t" // Diff <= 2QP -> 0
157 "packssdw %%mm4, %%mm4 \n\t"
159 "movd %%mm4, %1 \n\t"
187 "pxor %%mm4, %%mm4 \n\t"
197 "pcmpeqb %%mm4, %%mm2 \n\t" // diff <= QP -> FF
215 "pcmpeqb %%mm4, %%mm2 \n\t" // diff <= QP -> FF
238 "movq (%0), %%mm4 \n\t" // 1
239 PAVGB(%%mm4, %%mm3) // 4 211 /8
242 // mm1=2 mm2=3(211) mm4=1 mm5=5 mm6=0 mm7=9
245 "movq %%mm4, %%mm3 \n\t" // 1
252 // mm1=2 mm2=3(211) mm4=1 mm5=4(211) mm6=0 mm7=9
253 PAVGB(%%mm4, %%mm6) //11 /2
262 // mm1=2 mm2=3 mm3=6(11) mm4=1 mm5=4(211) mm6=0(11) mm7=9
266 PAVGB(%%mm1, %%mm4) // 11 /2
272 // mm0=7(11) mm1=2(11) mm2=3 mm3=6(11) mm4=1(11) mm5=4 mm7=9
275 PAVGB(%%mm4, %%mm6) // 11 11 /4
278 "movq (%0, %1, 4), %%mm4 \n\t" // 1
279 PAVGB(%%mm4, %%mm2) // 112 /4
282 // mm0=7(11) mm1=2(11) mm2=3(112) mm3=6(11) mm4=5 mm5=4 mm7=9
284 PAVGB(%%mm4, %%mm5) // 11 /2
290 // mm2=3(112) mm3=6(11) mm4=5 mm5=4(11) mm6=6 mm7=9
297 // mm0=8 mm3=6(11) mm4=5 mm5=4(11) mm7=9
378 "movq (%%"REG_c", %1), %%mm4 \n\t" // line 6
380 "psubusb %%mm4, %%mm3 \n\t"
381 "psubusb %%mm5, %%mm4 \n\t"
382 "por %%mm4, %%mm3 \n\t" // |l5 - l6|
386 "movq %%mm2, %%mm4 \n\t"
389 "por %%mm5, %%mm4 \n\t" // |l4 - l5|
390 "psubusb %%mm0, %%mm4 \n\t" //d = MAX(0, |l4-l5| - (|l2-l3| + |l5-l6|)/2)
391 "movq %%mm4, %%mm3 \n\t" // d
394 "psubusb %%mm0, %%mm4 \n\t"
395 "pcmpeqb %%mm7, %%mm4 \n\t" // d <= QP ? -1 : 0
397 "pand %%mm4, %%mm3 \n\t" // d <= QP ? d : 0
524 "movq %%mm1, %%mm4 \n\t" // l1
527 PAVGB(%%mm4, %%mm1) // ~(5l1 + 2l3)/8
529 "movq %%mm0, %%mm4 \n\t" // ~(5l2 + 2l0)/8
531 "psubusb %%mm4, %%mm1 \n\t"
536 "movq %%mm0, %%mm4 \n\t" // l4
539 PAVGB(%%mm4, %%mm0) // ~(5l4 + 2l2)/8
552 // mm0= SIGN(menergy), mm1= |lenergy|, mm2= l5, mm3= |menergy|, mm4=l4, mm5= l3, mm7=0
557 PAVGB(%%mm4, %%mm6) // ~(l6 + 2l4)/4
561 "movq %%mm2, %%mm4 \n\t" // l5
564 PAVGB(%%mm4, %%mm2) // ~(5l5 + 2l7)/8
566 "movq %%mm6, %%mm4 \n\t" // ~(5l6 + 2l4)/8
568 "psubusb %%mm4, %%mm2 \n\t"
573 PMINUB(%%mm2, %%mm1, %%mm4) // MIN(|lenergy|,|renergy|)/8
574 "movq %2, %%mm4 \n\t" // QP //FIXME QP+1 ?
575 "paddusb "MANGLE(b01)", %%mm4 \n\t"
576 "pcmpgtb %%mm3, %%mm4 \n\t" // |menergy|/8 < QP
578 "pand %%mm4, %%mm3 \n\t"
589 "movq (%0, %1, 4), %%mm4 \n\t" //l4
591 "psubusb %%mm4, %%mm6 \n\t"
630 "movq "MANGLE(b80)", %%mm4 \n\t" // 128
633 PAVGB(%%mm0, %%mm4) // ~(l4-l3)/4 + 128
634 PAVGB(%%mm2, %%mm4) // ~(l2-l5)/4 +(l4-l3)/8 + 128
635 PAVGB(%%mm0, %%mm4) // ~(l2-l5)/8 +5(l4-l3)/16 + 128
636 // mm1=-l3-1, mm0=128-q, mm3=l2, mm4=menergy/16 + 128, mm5= -l5-1
646 // mm0=128-q, mm3=lenergy/16 + 128, mm4= menergy/16 + 128, mm5= -l5-1
656 // mm0=128-q, mm2=renergy/16 + 128, mm3=lenergy/16 + 128, mm4= menergy/16 + 128
666 // mm0=128-q, mm3=128 + MIN(|lenergy|,|renergy|)/16, mm4= menergy/16 + 128
673 "movq %%mm4, %%mm1 \n\t"
675 "pxor %%mm1, %%mm4 \n\t"
676 "psubb %%mm1, %%mm4 \n\t" // 128 + |menergy|/16
677 "pcmpgtb %%mm4, %%mm2 \n\t" // |menergy|/16 < QP/2
678 "psubusb %%mm3, %%mm4 \n\t" //d=|menergy|/16 - MIN(|lenergy|,|renergy|)/16
679 // mm0=128-q, mm1= SIGN(menergy), mm2= |menergy|/16 < QP/2, mm4= d/16
681 "movq %%mm4, %%mm3 \n\t" // d
682 "psubusb "MANGLE(b01)", %%mm4 \n\t"
683 PAVGB(%%mm7, %%mm4) // d/32
684 PAVGB(%%mm7, %%mm4) // (d + 32)/64
685 "paddb %%mm3, %%mm4 \n\t" // 5d/64
686 "pand %%mm2, %%mm4 \n\t"
694 PMINUB(%%mm5, %%mm4, %%mm3) // MIN(|q|, 5d/64)
697 "pand %%mm7, %%mm4 \n\t"
702 "paddb %%mm4, %%mm0 \n\t"
703 "psubb %%mm4, %%mm2 \n\t"
790 "movq (%%"REG_a"), %%mm4 \n\t"
791 "movq %%mm4, %%mm5 \n\t"
792 "punpcklbw %%mm7, %%mm4 \n\t" // low part of line 2
797 "psubw %%mm4, %%mm2 \n\t" // L1 - L2
828 "paddw %%mm4, %%mm4 \n\t" // 2L2
830 "psubw %%mm2, %%mm4 \n\t" // 2L2 - L3 + L4
836 "psubw %%mm2, %%mm4 \n\t" // 2L2 - 5L3 + 5L4
843 "psubw %%mm2, %%mm4 \n\t" // 2L2 - 5L3 + 5L4 - L5
845 "psubw %%mm2, %%mm4 \n\t" // 2L2 - 5L3 + 5L4 - 2L5
926 "pcmpgtw %%mm4, %%mm6 \n\t" // sign(2L2 - 5L3 + 5L4 - 2L5)
927 "pxor %%mm6, %%mm4 \n\t"
928 "psubw %%mm6, %%mm4 \n\t" // |2L2 - 5L3 + 5L4 - 2L5|
935 "pcmpgtw %%mm4, %%mm2 \n\t"
937 "pand %%mm2, %%mm4 \n\t"
941 "psubusw %%mm0, %%mm4 \n\t" // hd
946 "pmullw %%mm2, %%mm4 \n\t"
949 "paddw %%mm2, %%mm4 \n\t"
951 "psrlw $6, %%mm4 \n\t"
971 "pand %%mm2, %%mm4 \n\t"
975 "pminsw %%mm0, %%mm4 \n\t"
978 "movq %%mm4, %%mm2 \n\t"
980 "psubw %%mm2, %%mm4 \n\t"
985 "pxor %%mm6, %%mm4 \n\t"
987 "psubw %%mm6, %%mm4 \n\t"
989 "packsswb %%mm5, %%mm4 \n\t"
991 "paddb %%mm4, %%mm0 \n\t"
994 "psubb %%mm4, %%mm0 \n\t"
1090 "movq %%mm7, %%mm4 \n\t"
1093 "pminub %%mm4, %%mm7 \n\t" // min of pixels
1094 "pshufw $0xF9, %%mm7, %%mm4 \n\t"
1095 "pminub %%mm4, %%mm7 \n\t" // min of pixels
1096 "pshufw $0xFE, %%mm7, %%mm4 \n\t"
1097 "pminub %%mm4, %%mm7 \n\t"
1100 "psubusb %%mm4, %%mm1 \n\t"
1102 "movq %%mm7, %%mm4 \n\t"
1105 "psubusb %%mm4, %%mm1 \n\t"
1107 "movq %%mm7, %%mm4 \n\t"
1110 "psubusb %%mm4, %%mm1 \n\t"
1115 "movq %%mm6, %%mm4 \n\t"
1118 "pmaxub %%mm4, %%mm6 \n\t" // max of pixels
1119 "pshufw $0xF9, %%mm6, %%mm4 \n\t"
1120 "pmaxub %%mm4, %%mm6 \n\t"
1121 "pshufw $0xFE, %%mm6, %%mm4 \n\t"
1122 "pmaxub %%mm4, %%mm6 \n\t"
1124 "psubusb %%mm4, %%mm6 \n\t"
1125 "paddb %%mm4, %%mm6 \n\t"
1126 "movq %%mm6, %%mm4 \n\t"
1128 "psubusb %%mm4, %%mm6 \n\t"
1129 "paddb %%mm4, %%mm6 \n\t"
1130 "movq %%mm6, %%mm4 \n\t"
1132 "psubusb %%mm4, %%mm6 \n\t"
1133 "paddb %%mm4, %%mm6 \n\t"
1154 "movd 8(%0), %%mm4 \n\t"
1156 "psllq $56, %%mm4 \n\t"
1158 "por %%mm4, %%mm2 \n\t" // L20
1173 "movq %%mm2, %%mm4 \n\t" // L11
1175 "psrlq $8, %%mm4 \n\t"
1181 "por %%mm6, %%mm4 \n\t" // L21
1183 PAVGB(%%mm4, %%mm3) // (L21 + L01)/2
1186 "psubusb %%mm7, %%mm4 \n\t"
1189 "pcmpeqb "MANGLE(b00)", %%mm4 \n\t" // L21 > a ? 0 : -1
1191 "paddb %%mm4, %%mm2 \n\t"
1258 DERING_CORE((%%REGa) ,(%%REGa, %1) ,%%mm0,%%mm2,%%mm4,%%mm1,%%mm3,%%mm5,%%mm6,%%mm7)
1259 DERING_CORE((%%REGa, %1) ,(%%REGa, %1, 2),%%mm2,%%mm4,%%mm0,%%mm3,%%mm5,%%mm1,%%mm6,%%mm7)
1260 DERING_CORE((%%REGa, %1, 2),(%0, %1, 4) ,%%mm4,%%mm0,%%mm2,%%mm5,%%mm1,%%mm3,%%mm6,%%mm7)
1261 DERING_CORE((%0, %1, 4) ,(%%REGd) ,%%mm0,%%mm2,%%mm4,%%mm1,%%mm3,%%mm5,%%mm6,%%mm7)
1262 DERING_CORE((%%REGd) ,(%%REGd, %1) ,%%mm2,%%mm4,%%mm0,%%mm3,%%mm5,%%mm1,%%mm6,%%mm7)
1263 DERING_CORE((%%REGd, %1) ,(%%REGd, %1, 2),%%mm4,%%mm0,%%mm2,%%mm5,%%mm1,%%mm3,%%mm6,%%mm7)
1264 DERING_CORE((%%REGd, %1, 2),(%0, %1, 8) ,%%mm0,%%mm2,%%mm4,%%mm1,%%mm3,%%mm5,%%mm6,%%mm7)
1265 DERING_CORE((%0, %1, 8) ,(%%REGd, %1, 4),%%mm2,%%mm4,%%mm0,%%mm3,%%mm5,%%mm1,%%mm6,%%mm7)
1531 "movq " #d ", %%mm4 \n\t"\
1533 PAVGB(%%mm4, %%mm0) \
1537 "movq %%mm1, %%mm4 \n\t"\
1539 "punpckhbw %%mm7, %%mm4 \n\t"\
1541 "psllw $2, %%mm4 \n\t"\
1543 "psubw %%mm3, %%mm4 \n\t"\
1549 "paddw %%mm5, %%mm4 \n\t"\
1551 "psraw $2, %%mm4 \n\t"\
1552 "packuswb %%mm4, %%mm1 \n\t"\
1610 "movq " #c ", %%mm4 \n\t"\
1612 PAVGB(t1, %%mm4) \
1630 "movq %%mm4, %%mm6 \n\t"\
1631 "punpcklbw %%mm7, %%mm4 \n\t"\
1633 "psubw %%mm4, %%mm2 \n\t"\
1862 "movq %%mm1, %%mm4 \n\t"\
1865 "psubusb %%mm2, %%mm4 \n\t"\
1868 "pcmpeqb %%mm7, %%mm4 \n\t"\
1871 "pxor %%mm4, %%mm3 \n\t"\
1872 "pxor %%mm5, %%mm4 \n\t"\
1875 "por %%mm4, %%mm2 \n\t"\
1931 "movq %%mm1, %%mm4 \n\t"
1933 "punpckhbw %%mm3, %%mm4 \n\t"
1939 "punpcklwd %%mm4, %%mm2 \n\t"
1940 "punpckhwd %%mm4, %%mm1 \n\t"
1967 "movq %%mm1, %%mm4 \n\t"
1969 "punpckhbw %%mm3, %%mm4 \n\t"
1975 "punpcklwd %%mm4, %%mm2 \n\t"
1976 "punpckhwd %%mm4, %%mm1 \n\t"
2017 "movq %%mm1, %%mm4 \n\t"
2019 "punpckhbw %%mm3, %%mm4 \n\t"
2025 "punpcklwd %%mm4, %%mm2 \n\t"
2026 "punpckhwd %%mm4, %%mm1 \n\t"
2050 "movq %%mm1, %%mm4 \n\t"
2052 "punpckhbw %%mm3, %%mm4 \n\t"
2058 "punpcklwd %%mm4, %%mm2 \n\t"
2059 "punpckhwd %%mm4, %%mm1 \n\t"
2110 "movq (%0, %2, 4), %%mm4 \n\t" // L4
2112 "psadbw (%1, %2, 4), %%mm4 \n\t" // |L4-R4|
2120 "paddw %%mm4, %%mm0 \n\t"
2178 "movq %%mm0, %%mm4 \n\t"
2180 "paddd %%mm0, %%mm4 \n\t"
2181 "movd %%mm4, %%ecx \n\t"
2206 "movq (%0, %2, 4), %%mm4 \n\t" // L4
2214 "movq %%mm4, (%1, %2, 4) \n\t" // L4
2231 "movq (%0, %2, 4), %%mm4 \n\t" // L4
2232 PAVGB((%1, %2, 4), %%mm4) // L4
2243 "movq %%mm4, (%1, %2, 4) \n\t" // R4
2251 "movq %%mm4, (%0, %2, 4) \n\t" // L4
2267 "movq (%1), %%mm4 \n\t" // R0
2271 PAVGB(%%mm4, %%mm0)
2275 PAVGB(%%mm4, %%mm0)
2292 "movq (%1, %2, 4), %%mm4 \n\t" // R4
2296 PAVGB(%%mm4, %%mm0)
2300 PAVGB(%%mm4, %%mm0)
2321 "movq (%1), %%mm4 \n\t" // R0
2325 PAVGB(%%mm4, %%mm0)
2329 PAVGB(%%mm4, %%mm0)
2333 PAVGB(%%mm4, %%mm0)
2350 "movq (%1, %2, 4), %%mm4 \n\t" // R4
2354 PAVGB(%%mm4, %%mm0)
2358 PAVGB(%%mm4, %%mm0)
2362 PAVGB(%%mm4, %%mm0)
2490 "movq %%mm1, %%mm4 \n\t"
2496 PMAXUB(%%mm2, %%mm4)
2504 PMAXUB(%%mm1, %%mm4)
2514 PMAXUB(%%mm2, %%mm4)
2522 PMAXUB(%%mm1, %%mm4)
2530 PMAXUB(%%mm2, %%mm4)
2538 PMAXUB(%%mm1, %%mm4)
2546 PMAXUB(%%mm2, %%mm4)
2558 "psubusb %%mm3, %%mm4 \n\t"
2563 "psubusb %%mm4, %%mm7 \n\t" // Diff >=2QP -> 0
2589 "pxor %%mm4, %%mm4 \n\t"
2599 "pcmpeqb %%mm4, %%mm0 \n\t" // diff >= QP -> FF
2616 "pcmpeqb %%mm4, %%mm0 \n\t" // diff >= QP -> FF
2623 "punpckhbw %%mm4, %%mm6 \n\t"
2624 "punpcklbw %%mm4, %%mm5 \n\t"
2638 "punpcklbw %%mm4, %%mm2 \n\t"\
2639 "punpckhbw %%mm4, %%mm3 \n\t"\
2647 "punpcklbw %%mm4, %%mm2 \n\t"\
2648 "punpckhbw %%mm4, %%mm3 \n\t"\
2684 "punpckhbw %%mm4, %%mm7 \n\t"
2685 "punpcklbw %%mm4, %%mm6 \n\t"
2739 "movq %%mm2, %%mm4 \n\t"
2750 "pand %%mm5, %%mm4 \n\t"
2751 "por %%mm4, %%mm0 \n\t"
2783 "movq (%%"REG_a"), %%mm4 \n\t"
2784 "movq %%mm4, %%mm5 \n\t"
2785 "punpcklbw %%mm7, %%mm4 \n\t" // low part of line 2
2790 "psubw %%mm4, %%mm2 \n\t" // L1 - L2
2821 "paddw %%mm4, %%mm4 \n\t" // 2L2
2823 "psubw %%mm2, %%mm4 \n\t" // 2L2 - L3 + L4
2829 "psubw %%mm2, %%mm4 \n\t" // 2L2 - 5L3 + 5L4
2836 "psubw %%mm2, %%mm4 \n\t" // 2L2 - 5L3 + 5L4 - L5
2838 "psubw %%mm2, %%mm4 \n\t" // 2L2 - 5L3 + 5L4 - 2L5
2919 "pcmpgtw %%mm4, %%mm6 \n\t" // sign(2L2 - 5L3 + 5L4 - 2L5)
2920 "pxor %%mm6, %%mm4 \n\t"
2921 "psubw %%mm6, %%mm4 \n\t" // |2L2 - 5L3 + 5L4 - 2L5|
2928 "pcmpgtw %%mm4, %%mm2 \n\t"
2930 "pand %%mm2, %%mm4 \n\t"
2934 "psubusw %%mm0, %%mm4 \n\t" // hd
2939 "pmullw %%mm2, %%mm4 \n\t"
2942 "paddw %%mm2, %%mm4 \n\t"
2944 "psrlw $6, %%mm4 \n\t"
2964 "pand %%mm2, %%mm4 \n\t"
2968 "pminsw %%mm0, %%mm4 \n\t"
2971 "movq %%mm4, %%mm2 \n\t"
2973 "psubw %%mm2, %%mm4 \n\t"
2978 "pxor %%mm6, %%mm4 \n\t"
2980 "psubw %%mm6, %%mm4 \n\t"
2982 "packsswb %%mm5, %%mm4 \n\t"
2984 "pandn %%mm4, %%mm1 \n\t"
3029 "pxor %%mm4, %%mm4 \n\t"
3057 "punpcklbw %%mm4, %%mm0 \n\t"\
3058 "punpckhbw %%mm4, %%mm5 \n\t"\
3067 "punpcklbw %%mm4, %%mm1 \n\t"\
3068 "punpckhbw %%mm4, %%mm6 \n\t"\