Lines Matching refs:stride
30 void ff_pred16x16_vertical_8_mmi(uint8_t *src, ptrdiff_t stride)
44 PTR_ADDU "%[src], %[src], %[stride] \n\t"
49 PTR_ADDU "%[src], %[src], %[stride] \n\t"
55 : [stride]"r"((mips_reg)stride), [srcA]"r"((mips_reg)(src-stride))
60 void ff_pred16x16_horizontal_8_mmi(uint8_t *src, ptrdiff_t stride)
76 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
77 PTR_ADDU "%[addr1], %[addr1], %[stride] \n\t"
85 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
86 PTR_ADDU "%[addr1], %[addr1], %[stride] \n\t"
91 : [src]"r"((mips_reg)src), [stride]"r"((mips_reg)stride),
97 void ff_pred16x16_dc_8_mmi(uint8_t *src, ptrdiff_t stride)
109 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
113 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
117 PTR_SUBU "%[addr0], %[src], %[stride] \n\t"
138 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
144 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
149 : [src]"r"((mips_reg)src), [stride]"r"((mips_reg)stride),
156 int has_topright, ptrdiff_t stride)
213 : [srcA]"r"((mips_reg)(src-stride-1)),
214 [src0]"r"((mips_reg)(src-stride)),
215 [src1]"r"((mips_reg)(src-stride+1)),
227 MMI_SDXC1(%[ftmp0], %[src], %[stride], 0x00)
228 PTR_ADDU "%[src], %[src], %[stride] \n\t"
229 PTR_ADDU "%[src], %[src], %[stride] \n\t"
231 MMI_SDXC1(%[ftmp0], %[src], %[stride], 0x00)
234 PTR_ADDU "%[src], %[src], %[stride] \n\t"
235 PTR_ADDU "%[src], %[src], %[stride] \n\t"
241 : [dc]"f"(dc.f), [stride]"r"((mips_reg)stride)
247 ptrdiff_t stride)
254 const int l0 = ((has_topleft ? src[-1+-1*stride] : src[-1+0*stride]) + 2*src[-1+0*stride] + src[-1+1*stride] + 2) >> 2;
255 const int l1 = (src[-1+0*stride] + 2*src[-1+1*stride] + src[-1+2*stride] + 2) >> 2;
256 const int l2 = (src[-1+1*stride] + 2*src[-1+2*stride] + src[-1+3*stride] + 2) >> 2;
257 const int l3 = (src[-1+2*stride] + 2*src[-1+3*stride] + src[-1+4*stride] + 2) >> 2;
258 const int l4 = (src[-1+3*stride] + 2*src[-1+4*stride] + src[-1+5*stride] + 2) >> 2;
259 const int l5 = (src[-1+4*stride] + 2*src[-1+5*stride] + src[-1+6*stride] + 2) >> 2;
260 const int l6 = (src[-1+5*stride] + 2*src[-1+6*stride] + src[-1+7*stride] + 2) >> 2;
261 const int l7 = (src[-1+6*stride] + 2*src[-1+7*stride] + src[-1+7*stride] + 2) >> 2;
318 : [srcA]"r"((mips_reg)(src-stride-1)),
319 [src0]"r"((mips_reg)(src-stride)),
320 [src1]"r"((mips_reg)(src-stride+1)),
334 MMI_SDXC1(%[ftmp0], %[src], %[stride], 0x00)
335 PTR_ADDU "%[src], %[src], %[stride] \n\t"
336 PTR_ADDU "%[src], %[src], %[stride] \n\t"
338 MMI_SDXC1(%[ftmp0], %[src], %[stride], 0x00)
341 PTR_ADDU "%[src], %[src], %[stride] \n\t"
342 PTR_ADDU "%[src], %[src], %[stride] \n\t"
348 : [dc]"f"(dc.f), [stride]"r"((mips_reg)stride)
354 int has_topright, ptrdiff_t stride)
405 : [srcA]"r"((mips_reg)(src-stride-1)),
406 [src0]"r"((mips_reg)(src-stride)),
407 [src1]"r"((mips_reg)(src-stride+1)),
417 PTR_ADDU "%[src], %[src], %[stride] \n\t"
419 PTR_ADDU "%[src], %[src], %[stride] \n\t"
421 PTR_ADDU "%[src], %[src], %[stride] \n\t"
425 PTR_ADDU "%[src], %[src], %[stride] \n\t"
430 : [stride]"r"((mips_reg)stride)
436 ptrdiff_t stride)
438 const int dc = (src[-stride] + src[1-stride] + src[2-stride]
439 + src[3-stride] + src[-1+0*stride] + src[-1+1*stride]
440 + src[-1+2*stride] + src[-1+3*stride] + 4) >>3;
450 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
452 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
454 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
459 : [src]"r"((mips_reg)src), [stride]"r"((mips_reg)stride),
465 void ff_pred8x8_vertical_8_mmi(uint8_t *src, ptrdiff_t stride)
471 PTR_SUBU "%[addr0], %[src], %[stride] \n\t"
479 PTR_ADDU "%[addr1], %[stride] \n\t"
483 PTR_ADDU "%[addr1], %[stride] \n\t"
487 : [src]"r"((mips_reg)src), [stride]"r"((mips_reg)stride)
492 void ff_pred8x8_horizontal_8_mmi(uint8_t *src, ptrdiff_t stride)
506 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
507 PTR_ADDU "%[addr1], %[addr1], %[stride] \n\t"
513 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
514 PTR_ADDU "%[addr1], %[addr1], %[stride] \n\t"
519 : [src]"r"((mips_reg)src), [stride]"r"((mips_reg)stride),
525 void ff_pred8x8_top_dc_8_mmi(uint8_t *src, ptrdiff_t stride)
535 PTR_SUBU "%[addr0], %[src], %[stride] \n\t"
552 PTR_ADDU "%[src], %[src], %[stride] \n\t"
554 PTR_ADDU "%[src], %[src], %[stride] \n\t"
556 PTR_ADDU "%[src], %[src], %[stride] \n\t"
558 PTR_ADDU "%[src], %[src], %[stride] \n\t"
560 PTR_ADDU "%[src], %[src], %[stride] \n\t"
562 PTR_ADDU "%[src], %[src], %[stride] \n\t"
564 PTR_ADDU "%[src], %[src], %[stride] \n\t"
572 : [stride]"r"((mips_reg)stride)
577 void ff_pred8x8_dc_8_mmi(uint8_t *src, ptrdiff_t stride)
583 "negu %[addr0], %[stride] \n\t"
614 PTR_ADDU "%[addr2], %[addr2], %[stride] \n\t"
617 PTR_ADDU "%[addr2], %[addr2], %[stride] \n\t"
620 PTR_ADDU "%[addr2], %[addr2], %[stride] \n\t"
623 PTR_ADDU "%[addr2], %[addr2], %[stride] \n\t"
626 PTR_ADDU "%[addr2], %[addr2], %[stride] \n\t"
629 PTR_ADDU "%[addr2], %[addr2], %[stride] \n\t"
632 PTR_ADDU "%[addr2], %[addr2], %[stride] \n\t"
657 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
659 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
661 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
663 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
665 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
667 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
669 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
678 : [src]"r"((mips_reg)src), [stride]"r"((mips_reg)stride)
683 void ff_pred8x16_vertical_8_mmi(uint8_t *src, ptrdiff_t stride)
695 PTR_ADDU "%[src], %[src], %[stride] \n\t"
697 PTR_ADDU "%[src], %[src], %[stride] \n\t"
699 PTR_ADDU "%[src], %[src], %[stride] \n\t"
703 PTR_ADDU "%[src], %[src], %[stride] \n\t"
709 : [stride]"r"((mips_reg)stride), [srcA]"r"((mips_reg)(src-stride))
714 void ff_pred8x16_horizontal_8_mmi(uint8_t *src, ptrdiff_t stride)
728 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
729 PTR_ADDU "%[addr1], %[addr1], %[stride] \n\t"
735 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
736 PTR_ADDU "%[addr1], %[addr1], %[stride] \n\t"
741 : [src]"r"((mips_reg)src), [stride]"r"((mips_reg)stride),
747 static inline void pred16x16_plane_compat_mmi(uint8_t *src, int stride,
756 PTR_SUBU "%[addr0], %[src], %[stride] \n\t"
785 PTR_SUBU "%[addr0], %[addr0], %[stride] \n\t"
788 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
790 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
792 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
802 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
804 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
806 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
808 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
818 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
819 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
821 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
823 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
825 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
835 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
837 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
839 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
841 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
954 PTR_ADDU "%[addr0], %[addr0], %[stride] \n\t"
967 : [src]"r"(src), [stride]"r"((mips_reg)stride),
977 void ff_pred16x16_plane_h264_8_mmi(uint8_t *src, ptrdiff_t stride)
979 pred16x16_plane_compat_mmi(src, stride, 0, 0);
982 void ff_pred16x16_plane_svq3_8_mmi(uint8_t *src, ptrdiff_t stride)
984 pred16x16_plane_compat_mmi(src, stride, 1, 0);
987 void ff_pred16x16_plane_rv40_8_mmi(uint8_t *src, ptrdiff_t stride)
989 pred16x16_plane_compat_mmi(src, stride, 0, 1);