Lines Matching refs:mm4
129 "movq %%mm0, %%mm4 \n\t"
130 PMAXUB(%%mm1, %%mm4)
137 PMAXUB(%%mm2, %%mm4)
145 PMAXUB(%%mm1, %%mm4)
155 PMAXUB(%%mm2, %%mm4)
163 PMAXUB(%%mm1, %%mm4)
171 PMAXUB(%%mm2, %%mm4)
179 PMAXUB(%%mm1, %%mm4)
185 "psubusb %%mm3, %%mm4 \n\t"
204 "psubusb %%mm7, %%mm4 \n\t" // Diff <= 2QP -> 0
205 "packssdw %%mm4, %%mm4 \n\t"
207 "movd %%mm4, %1 \n\t"
235 "pxor %%mm4, %%mm4 \n\t"
245 "pcmpeqb %%mm4, %%mm2 \n\t" // diff <= QP -> FF
263 "pcmpeqb %%mm4, %%mm2 \n\t" // diff <= QP -> FF
286 "movq (%0), %%mm4 \n\t" // 1
287 PAVGB(%%mm4, %%mm3) // 4 211 /8
290 // mm1=2 mm2=3(211) mm4=1 mm5=5 mm6=0 mm7=9
293 "movq %%mm4, %%mm3 \n\t" // 1
300 // mm1=2 mm2=3(211) mm4=1 mm5=4(211) mm6=0 mm7=9
301 PAVGB(%%mm4, %%mm6) //11 /2
310 // mm1=2 mm2=3 mm3=6(11) mm4=1 mm5=4(211) mm6=0(11) mm7=9
314 PAVGB(%%mm1, %%mm4) // 11 /2
320 // mm0=7(11) mm1=2(11) mm2=3 mm3=6(11) mm4=1(11) mm5=4 mm7=9
323 PAVGB(%%mm4, %%mm6) // 11 11 /4
326 "movq (%0, %1, 4), %%mm4 \n\t" // 1
327 PAVGB(%%mm4, %%mm2) // 112 /4
330 // mm0=7(11) mm1=2(11) mm2=3(112) mm3=6(11) mm4=5 mm5=4 mm7=9
332 PAVGB(%%mm4, %%mm5) // 11 /2
338 // mm2=3(112) mm3=6(11) mm4=5 mm5=4(11) mm6=6 mm7=9
345 // mm0=8 mm3=6(11) mm4=5 mm5=4(11) mm7=9
426 "movq (%%"FF_REG_c", %1), %%mm4 \n\t" // line 6
428 "psubusb %%mm4, %%mm3 \n\t"
429 "psubusb %%mm5, %%mm4 \n\t"
430 "por %%mm4, %%mm3 \n\t" // |l5 - l6|
434 "movq %%mm2, %%mm4 \n\t"
437 "por %%mm5, %%mm4 \n\t" // |l4 - l5|
438 "psubusb %%mm0, %%mm4 \n\t" //d = MAX(0, |l4-l5| - (|l2-l3| + |l5-l6|)/2)
439 "movq %%mm4, %%mm3 \n\t" // d
442 "psubusb %%mm0, %%mm4 \n\t"
443 "pcmpeqb %%mm7, %%mm4 \n\t" // d <= QP ? -1 : 0
445 "pand %%mm4, %%mm3 \n\t" // d <= QP ? d : 0
573 "movq %%mm1, %%mm4 \n\t" // l1
576 PAVGB(%%mm4, %%mm1) // ~(5l1 + 2l3)/8
578 "movq %%mm0, %%mm4 \n\t" // ~(5l2 + 2l0)/8
580 "psubusb %%mm4, %%mm1 \n\t"
585 "movq %%mm0, %%mm4 \n\t" // l4
588 PAVGB(%%mm4, %%mm0) // ~(5l4 + 2l2)/8
601 // mm0= SIGN(menergy), mm1= |lenergy|, mm2= l5, mm3= |menergy|, mm4=l4, mm5= l3, mm7=0
606 PAVGB(%%mm4, %%mm6) // ~(l6 + 2l4)/4
610 "movq %%mm2, %%mm4 \n\t" // l5
613 PAVGB(%%mm4, %%mm2) // ~(5l5 + 2l7)/8
615 "movq %%mm6, %%mm4 \n\t" // ~(5l6 + 2l4)/8
617 "psubusb %%mm4, %%mm2 \n\t"
622 PMINUB(%%mm2, %%mm1, %%mm4) // MIN(|lenergy|,|renergy|)/8
623 "movq %2, %%mm4 \n\t" // QP //FIXME QP+1 ?
624 "paddusb "MANGLE(b01)", %%mm4 \n\t"
625 "pcmpgtb %%mm3, %%mm4 \n\t" // |menergy|/8 < QP
627 "pand %%mm4, %%mm3 \n\t"
638 "movq (%0, %1, 4), %%mm4 \n\t" //l4
640 "psubusb %%mm4, %%mm6 \n\t"
679 "movq "MANGLE(b80)", %%mm4 \n\t" // 128
682 PAVGB(%%mm0, %%mm4) // ~(l4-l3)/4 + 128
683 PAVGB(%%mm2, %%mm4) // ~(l2-l5)/4 +(l4-l3)/8 + 128
684 PAVGB(%%mm0, %%mm4) // ~(l2-l5)/8 +5(l4-l3)/16 + 128
685 // mm1=-l3-1, mm0=128-q, mm3=l2, mm4=menergy/16 + 128, mm5= -l5-1
695 // mm0=128-q, mm3=lenergy/16 + 128, mm4= menergy/16 + 128, mm5= -l5-1
705 // mm0=128-q, mm2=renergy/16 + 128, mm3=lenergy/16 + 128, mm4= menergy/16 + 128
715 // mm0=128-q, mm3=128 + MIN(|lenergy|,|renergy|)/16, mm4= menergy/16 + 128
722 "movq %%mm4, %%mm1 \n\t"
724 "pxor %%mm1, %%mm4 \n\t"
725 "psubb %%mm1, %%mm4 \n\t" // 128 + |menergy|/16
726 "pcmpgtb %%mm4, %%mm2 \n\t" // |menergy|/16 < QP/2
727 "psubusb %%mm3, %%mm4 \n\t" //d=|menergy|/16 - MIN(|lenergy|,|renergy|)/16
728 // mm0=128-q, mm1= SIGN(menergy), mm2= |menergy|/16 < QP/2, mm4= d/16
730 "movq %%mm4, %%mm3 \n\t" // d
731 "psubusb "MANGLE(b01)", %%mm4 \n\t"
732 PAVGB(%%mm7, %%mm4) // d/32
733 PAVGB(%%mm7, %%mm4) // (d + 32)/64
734 "paddb %%mm3, %%mm4 \n\t" // 5d/64
735 "pand %%mm2, %%mm4 \n\t"
743 PMINUB(%%mm5, %%mm4, %%mm3) // MIN(|q|, 5d/64)
746 "pand %%mm7, %%mm4 \n\t"
751 "paddb %%mm4, %%mm0 \n\t"
752 "psubb %%mm4, %%mm2 \n\t"
839 "movq (%%"FF_REG_a"), %%mm4 \n\t"
840 "movq %%mm4, %%mm5 \n\t"
841 "punpcklbw %%mm7, %%mm4 \n\t" // low part of line 2
846 "psubw %%mm4, %%mm2 \n\t" // L1 - L2
877 "paddw %%mm4, %%mm4 \n\t" // 2L2
879 "psubw %%mm2, %%mm4 \n\t" // 2L2 - L3 + L4
885 "psubw %%mm2, %%mm4 \n\t" // 2L2 - 5L3 + 5L4
892 "psubw %%mm2, %%mm4 \n\t" // 2L2 - 5L3 + 5L4 - L5
894 "psubw %%mm2, %%mm4 \n\t" // 2L2 - 5L3 + 5L4 - 2L5
975 "pcmpgtw %%mm4, %%mm6 \n\t" // sign(2L2 - 5L3 + 5L4 - 2L5)
976 "pxor %%mm6, %%mm4 \n\t"
977 "psubw %%mm6, %%mm4 \n\t" // |2L2 - 5L3 + 5L4 - 2L5|
984 "pcmpgtw %%mm4, %%mm2 \n\t"
986 "pand %%mm2, %%mm4 \n\t"
990 "psubusw %%mm0, %%mm4 \n\t" // hd
995 "pmullw %%mm2, %%mm4 \n\t"
998 "paddw %%mm2, %%mm4 \n\t"
1000 "psrlw $6, %%mm4 \n\t"
1020 "pand %%mm2, %%mm4 \n\t"
1024 "pminsw %%mm0, %%mm4 \n\t"
1027 "movq %%mm4, %%mm2 \n\t"
1029 "psubw %%mm2, %%mm4 \n\t"
1034 "pxor %%mm6, %%mm4 \n\t"
1036 "psubw %%mm6, %%mm4 \n\t"
1038 "packsswb %%mm5, %%mm4 \n\t"
1040 "paddb %%mm4, %%mm0 \n\t"
1043 "psubb %%mm4, %%mm0 \n\t"
1141 "movq %%mm7, %%mm4 \n\t"
1144 "pminub %%mm4, %%mm7 \n\t" // min of pixels
1145 "pshufw $0xF9, %%mm7, %%mm4 \n\t"
1146 "pminub %%mm4, %%mm7 \n\t" // min of pixels
1147 "pshufw $0xFE, %%mm7, %%mm4 \n\t"
1148 "pminub %%mm4, %%mm7 \n\t"
1151 "psubusb %%mm4, %%mm1 \n\t"
1153 "movq %%mm7, %%mm4 \n\t"
1156 "psubusb %%mm4, %%mm1 \n\t"
1158 "movq %%mm7, %%mm4 \n\t"
1161 "psubusb %%mm4, %%mm1 \n\t"
1166 "movq %%mm6, %%mm4 \n\t"
1169 "pmaxub %%mm4, %%mm6 \n\t" // max of pixels
1170 "pshufw $0xF9, %%mm6, %%mm4 \n\t"
1171 "pmaxub %%mm4, %%mm6 \n\t"
1172 "pshufw $0xFE, %%mm6, %%mm4 \n\t"
1173 "pmaxub %%mm4, %%mm6 \n\t"
1175 "psubusb %%mm4, %%mm6 \n\t"
1176 "paddb %%mm4, %%mm6 \n\t"
1177 "movq %%mm6, %%mm4 \n\t"
1179 "psubusb %%mm4, %%mm6 \n\t"
1180 "paddb %%mm4, %%mm6 \n\t"
1181 "movq %%mm6, %%mm4 \n\t"
1183 "psubusb %%mm4, %%mm6 \n\t"
1184 "paddb %%mm4, %%mm6 \n\t"
1205 "movd 8(%0), %%mm4 \n\t"
1207 "psllq $56, %%mm4 \n\t"
1209 "por %%mm4, %%mm2 \n\t" // L20
1224 "movq %%mm2, %%mm4 \n\t" // L11
1226 "psrlq $8, %%mm4 \n\t"
1232 "por %%mm6, %%mm4 \n\t" // L21
1234 PAVGB(%%mm4, %%mm3) // (L21 + L01)/2
1237 "psubusb %%mm7, %%mm4 \n\t"
1240 "pcmpeqb "MANGLE(b00)", %%mm4 \n\t" // L21 > a ? 0 : -1
1242 "paddb %%mm4, %%mm2 \n\t"
1309 DERING_CORE((%%FF_REGa) ,(%%FF_REGa, %1) ,%%mm0,%%mm2,%%mm4,%%mm1,%%mm3,%%mm5,%%mm6,%%mm7)
1310 DERING_CORE((%%FF_REGa, %1) ,(%%FF_REGa, %1, 2),%%mm2,%%mm4,%%mm0,%%mm3,%%mm5,%%mm1,%%mm6,%%mm7)
1311 DERING_CORE((%%FF_REGa, %1, 2),(%0, %1, 4) ,%%mm4,%%mm0,%%mm2,%%mm5,%%mm1,%%mm3,%%mm6,%%mm7)
1312 DERING_CORE((%0, %1, 4) ,(%%FF_REGd) ,%%mm0,%%mm2,%%mm4,%%mm1,%%mm3,%%mm5,%%mm6,%%mm7)
1313 DERING_CORE((%%FF_REGd) ,(%%FF_REGd, %1) ,%%mm2,%%mm4,%%mm0,%%mm3,%%mm5,%%mm1,%%mm6,%%mm7)
1314 DERING_CORE((%%FF_REGd, %1) ,(%%FF_REGd, %1, 2),%%mm4,%%mm0,%%mm2,%%mm5,%%mm1,%%mm3,%%mm6,%%mm7)
1315 DERING_CORE((%%FF_REGd, %1, 2),(%0, %1, 8) ,%%mm0,%%mm2,%%mm4,%%mm1,%%mm3,%%mm5,%%mm6,%%mm7)
1316 DERING_CORE((%0, %1, 8) ,(%%FF_REGd, %1, 4),%%mm2,%%mm4,%%mm0,%%mm3,%%mm5,%%mm1,%%mm6,%%mm7)
1607 "movq " #d ", %%mm4 \n\t"\
1609 PAVGB(%%mm4, %%mm0) \
1613 "movq %%mm1, %%mm4 \n\t"\
1615 "punpckhbw %%mm7, %%mm4 \n\t"\
1617 "psllw $2, %%mm4 \n\t"\
1619 "psubw %%mm3, %%mm4 \n\t"\
1625 "paddw %%mm5, %%mm4 \n\t"\
1627 "psraw $2, %%mm4 \n\t"\
1628 "packuswb %%mm4, %%mm1 \n\t"\
1686 "movq " #c ", %%mm4 \n\t"\
1688 PAVGB(t1, %%mm4) \
1706 "movq %%mm4, %%mm6 \n\t"\
1707 "punpcklbw %%mm7, %%mm4 \n\t"\
1709 "psubw %%mm4, %%mm2 \n\t"\
1938 "movq %%mm1, %%mm4 \n\t"\
1941 "psubusb %%mm2, %%mm4 \n\t"\
1944 "pcmpeqb %%mm7, %%mm4 \n\t"\
1947 "pxor %%mm4, %%mm3 \n\t"\
1948 "pxor %%mm5, %%mm4 \n\t"\
1951 "por %%mm4, %%mm2 \n\t"\
2007 "movq %%mm1, %%mm4 \n\t"
2009 "punpckhbw %%mm3, %%mm4 \n\t"
2015 "punpcklwd %%mm4, %%mm2 \n\t"
2016 "punpckhwd %%mm4, %%mm1 \n\t"
2043 "movq %%mm1, %%mm4 \n\t"
2045 "punpckhbw %%mm3, %%mm4 \n\t"
2051 "punpcklwd %%mm4, %%mm2 \n\t"
2052 "punpckhwd %%mm4, %%mm1 \n\t"
2093 "movq %%mm1, %%mm4 \n\t"
2095 "punpckhbw %%mm3, %%mm4 \n\t"
2101 "punpcklwd %%mm4, %%mm2 \n\t"
2102 "punpckhwd %%mm4, %%mm1 \n\t"
2126 "movq %%mm1, %%mm4 \n\t"
2128 "punpckhbw %%mm3, %%mm4 \n\t"
2134 "punpcklwd %%mm4, %%mm2 \n\t"
2135 "punpckhwd %%mm4, %%mm1 \n\t"
2186 "movq (%0, %2, 4), %%mm4 \n\t" // L4
2188 "psadbw (%1, %2, 4), %%mm4 \n\t" // |L4-R4|
2196 "paddw %%mm4, %%mm0 \n\t"
2254 "movq %%mm0, %%mm4 \n\t"
2256 "paddd %%mm0, %%mm4 \n\t"
2257 "movd %%mm4, %%ecx \n\t"
2282 "movq (%0, %2, 4), %%mm4 \n\t" // L4
2290 "movq %%mm4, (%1, %2, 4) \n\t" // L4
2307 "movq (%0, %2, 4), %%mm4 \n\t" // L4
2308 PAVGB((%1, %2, 4), %%mm4) // L4
2319 "movq %%mm4, (%1, %2, 4) \n\t" // R4
2327 "movq %%mm4, (%0, %2, 4) \n\t" // L4
2343 "movq (%1), %%mm4 \n\t" // R0
2347 PAVGB(%%mm4, %%mm0)
2351 PAVGB(%%mm4, %%mm0)
2368 "movq (%1, %2, 4), %%mm4 \n\t" // R4
2372 PAVGB(%%mm4, %%mm0)
2376 PAVGB(%%mm4, %%mm0)
2397 "movq (%1), %%mm4 \n\t" // R0
2401 PAVGB(%%mm4, %%mm0)
2405 PAVGB(%%mm4, %%mm0)
2409 PAVGB(%%mm4, %%mm0)
2426 "movq (%1, %2, 4), %%mm4 \n\t" // R4
2430 PAVGB(%%mm4, %%mm0)
2434 PAVGB(%%mm4, %%mm0)
2438 PAVGB(%%mm4, %%mm0)
2567 "movq %%mm1, %%mm4 \n\t"
2573 PMAXUB(%%mm2, %%mm4)
2581 PMAXUB(%%mm1, %%mm4)
2591 PMAXUB(%%mm2, %%mm4)
2599 PMAXUB(%%mm1, %%mm4)
2607 PMAXUB(%%mm2, %%mm4)
2615 PMAXUB(%%mm1, %%mm4)
2623 PMAXUB(%%mm2, %%mm4)
2635 "psubusb %%mm3, %%mm4 \n\t"
2640 "psubusb %%mm4, %%mm7 \n\t" // Diff >=2QP -> 0
2666 "pxor %%mm4, %%mm4 \n\t"
2676 "pcmpeqb %%mm4, %%mm0 \n\t" // diff >= QP -> FF
2693 "pcmpeqb %%mm4, %%mm0 \n\t" // diff >= QP -> FF
2700 "punpckhbw %%mm4, %%mm6 \n\t"
2701 "punpcklbw %%mm4, %%mm5 \n\t"
2715 "punpcklbw %%mm4, %%mm2 \n\t"\
2716 "punpckhbw %%mm4, %%mm3 \n\t"\
2724 "punpcklbw %%mm4, %%mm2 \n\t"\
2725 "punpckhbw %%mm4, %%mm3 \n\t"\
2761 "punpckhbw %%mm4, %%mm7 \n\t"
2762 "punpcklbw %%mm4, %%mm6 \n\t"
2817 "movq %%mm2, %%mm4 \n\t"
2828 "pand %%mm5, %%mm4 \n\t"
2829 "por %%mm4, %%mm0 \n\t"
2860 "movq (%%"FF_REG_a"), %%mm4 \n\t"
2861 "movq %%mm4, %%mm5 \n\t"
2862 "punpcklbw %%mm7, %%mm4 \n\t" // low part of line 2
2867 "psubw %%mm4, %%mm2 \n\t" // L1 - L2
2898 "paddw %%mm4, %%mm4 \n\t" // 2L2
2900 "psubw %%mm2, %%mm4 \n\t" // 2L2 - L3 + L4
2906 "psubw %%mm2, %%mm4 \n\t" // 2L2 - 5L3 + 5L4
2913 "psubw %%mm2, %%mm4 \n\t" // 2L2 - 5L3 + 5L4 - L5
2915 "psubw %%mm2, %%mm4 \n\t" // 2L2 - 5L3 + 5L4 - 2L5
2996 "pcmpgtw %%mm4, %%mm6 \n\t" // sign(2L2 - 5L3 + 5L4 - 2L5)
2997 "pxor %%mm6, %%mm4 \n\t"
2998 "psubw %%mm6, %%mm4 \n\t" // |2L2 - 5L3 + 5L4 - 2L5|
3005 "pcmpgtw %%mm4, %%mm2 \n\t"
3007 "pand %%mm2, %%mm4 \n\t"
3011 "psubusw %%mm0, %%mm4 \n\t" // hd
3016 "pmullw %%mm2, %%mm4 \n\t"
3019 "paddw %%mm2, %%mm4 \n\t"
3021 "psrlw $6, %%mm4 \n\t"
3041 "pand %%mm2, %%mm4 \n\t"
3045 "pminsw %%mm0, %%mm4 \n\t"
3048 "movq %%mm4, %%mm2 \n\t"
3050 "psubw %%mm2, %%mm4 \n\t"
3055 "pxor %%mm6, %%mm4 \n\t"
3057 "psubw %%mm6, %%mm4 \n\t"
3059 "packsswb %%mm5, %%mm4 \n\t"
3061 "pandn %%mm4, %%mm1 \n\t"
3101 "pxor %%mm4, %%mm4 \n\t"
3129 "punpcklbw %%mm4, %%mm0 \n\t"\
3130 "punpckhbw %%mm4, %%mm5 \n\t"\
3139 "punpcklbw %%mm4, %%mm1 \n\t"\
3140 "punpckhbw %%mm4, %%mm6 \n\t"\