You've already forked FFmpeg
							
							
				mirror of
				https://github.com/FFmpeg/FFmpeg.git
				synced 2025-10-30 23:18:11 +02:00 
			
		
		
		
	avcodec/vp8dsp: Constify src in vp8_mc_func
Reviewed-by: Peter Ross <pross@xvid.org> Reviewed-by: Ronald S. Bultje <rsbultje@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
This commit is contained in:
		| @@ -53,7 +53,7 @@ | ||||
|  | ||||
| #define VP8_MC(n, opt)                                                  \ | ||||
|     void ff_put_vp8_##n##_##opt(uint8_t *dst, ptrdiff_t dststride,      \ | ||||
|                                 uint8_t *src, ptrdiff_t srcstride,      \ | ||||
|                                 const uint8_t *src, ptrdiff_t srcstride,\ | ||||
|                                 int h, int x, int y) | ||||
|  | ||||
| #define VP8_EPEL(w, opt)                        \ | ||||
|   | ||||
| @@ -58,7 +58,7 @@ void ff_vp8dsp_init_neon(VP8DSPContext *dsp); | ||||
|  | ||||
| #define VP8_MC(n, opt)                                                  \ | ||||
|     void ff_put_vp8_##n##_##opt(uint8_t *dst, ptrdiff_t dststride,      \ | ||||
|                                 uint8_t *src, ptrdiff_t srcstride,      \ | ||||
|                                 const uint8_t *src, ptrdiff_t srcstride,\ | ||||
|                                 int h, int x, int y) | ||||
|  | ||||
| #define VP8_EPEL(w, opt)                        \ | ||||
|   | ||||
| @@ -1113,7 +1113,7 @@ endfunc | ||||
|  | ||||
| @ MC | ||||
|  | ||||
| @ void put_vp8_pixels16(uint8_t *dst, ptrdiff_t dststride, uint8_t *src, | ||||
| @ void put_vp8_pixels16(uint8_t *dst, ptrdiff_t dststride, const uint8_t *src, | ||||
| @                       ptrdiff_t srcstride, int h, int mx, int my) | ||||
| function ff_put_vp8_pixels16_armv6, export=1 | ||||
|         push            {r4-r11} | ||||
| @@ -1137,7 +1137,7 @@ function ff_put_vp8_pixels16_armv6, export=1 | ||||
|         bx              lr | ||||
| endfunc | ||||
|  | ||||
| @ void put_vp8_pixels8(uint8_t *dst, ptrdiff_t dststride, uint8_t *src, | ||||
| @ void put_vp8_pixels8(uint8_t *dst, ptrdiff_t dststride, const uint8_t *src, | ||||
| @                      ptrdiff_t srcstride, int h, int mx, int my) | ||||
| function ff_put_vp8_pixels8_armv6, export=1 | ||||
|         push            {r4-r11} | ||||
| @@ -1161,7 +1161,7 @@ function ff_put_vp8_pixels8_armv6, export=1 | ||||
|         bx              lr | ||||
| endfunc | ||||
|  | ||||
| @ void put_vp8_pixels4(uint8_t *dst, ptrdiff_t dststride, uint8_t *src, | ||||
| @ void put_vp8_pixels4(uint8_t *dst, ptrdiff_t dststride, const uint8_t *src, | ||||
| @                      ptrdiff_t srcstride, int h, int mx, int my) | ||||
| function ff_put_vp8_pixels4_armv6, export=1 | ||||
|         ldr             r12, [sp, #0]           @ h | ||||
|   | ||||
| @@ -122,7 +122,7 @@ static const int8_t subpel_filters_lsx[7][8] = { | ||||
| } ) | ||||
|  | ||||
| void ff_put_vp8_epel8_h6_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                              uint8_t *src, ptrdiff_t src_stride, | ||||
|                              const uint8_t *src, ptrdiff_t src_stride, | ||||
|                              int height, int mx, int my) | ||||
| { | ||||
|     uint32_t loop_cnt; | ||||
| @@ -187,7 +187,7 @@ void ff_put_vp8_epel8_h6_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel16_h6_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                               uint8_t *src, ptrdiff_t src_stride, | ||||
|                               const uint8_t *src, ptrdiff_t src_stride, | ||||
|                               int height, int mx, int my) | ||||
| { | ||||
|     uint32_t loop_cnt; | ||||
| @@ -241,7 +241,7 @@ void ff_put_vp8_epel16_h6_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel8_v6_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                              uint8_t *src, ptrdiff_t src_stride, | ||||
|                              const uint8_t *src, ptrdiff_t src_stride, | ||||
|                              int height, int mx, int my) | ||||
| { | ||||
|     uint32_t loop_cnt; | ||||
| @@ -308,7 +308,7 @@ void ff_put_vp8_epel8_v6_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel16_v6_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                               uint8_t *src, ptrdiff_t src_stride, | ||||
|                               const uint8_t *src, ptrdiff_t src_stride, | ||||
|                               int height, int mx, int my) | ||||
| { | ||||
|     uint32_t loop_cnt; | ||||
| @@ -389,7 +389,7 @@ void ff_put_vp8_epel16_v6_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel8_h6v6_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                uint8_t *src, ptrdiff_t src_stride, | ||||
|                                const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                int height, int mx, int my) | ||||
| { | ||||
|     uint32_t loop_cnt; | ||||
| @@ -491,7 +491,7 @@ void ff_put_vp8_epel8_h6v6_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel16_h6v6_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                 uint8_t *src, ptrdiff_t src_stride, | ||||
|                                 const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                 int height, int mx, int my) | ||||
| { | ||||
|     int32_t multiple8_cnt; | ||||
| @@ -504,7 +504,7 @@ void ff_put_vp8_epel16_h6v6_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel8_v4_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                              uint8_t *src, ptrdiff_t src_stride, | ||||
|                              const uint8_t *src, ptrdiff_t src_stride, | ||||
|                              int height, int mx, int my) | ||||
| { | ||||
|     uint32_t loop_cnt; | ||||
| @@ -561,7 +561,7 @@ void ff_put_vp8_epel8_v4_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel16_v4_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                               uint8_t *src, ptrdiff_t src_stride, | ||||
|                               const uint8_t *src, ptrdiff_t src_stride, | ||||
|                               int height, int mx, int my) | ||||
| { | ||||
|     uint32_t loop_cnt; | ||||
| @@ -631,7 +631,7 @@ void ff_put_vp8_epel16_v4_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel8_h6v4_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                uint8_t *src, ptrdiff_t src_stride, | ||||
|                                const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                int height, int mx, int my) | ||||
| { | ||||
|     uint32_t loop_cnt; | ||||
| @@ -714,7 +714,7 @@ void ff_put_vp8_epel8_h6v4_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel16_h6v4_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                 uint8_t *src, ptrdiff_t src_stride, | ||||
|                                 const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                 int height, int mx, int my) | ||||
| { | ||||
|     int32_t multiple8_cnt; | ||||
| @@ -728,7 +728,7 @@ void ff_put_vp8_epel16_h6v4_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel8_h4v6_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                uint8_t *src, ptrdiff_t src_stride, | ||||
|                                const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                int height, int mx, int my) | ||||
| { | ||||
|     uint32_t loop_cnt; | ||||
| @@ -818,7 +818,7 @@ void ff_put_vp8_epel8_h4v6_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel16_h4v6_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                 uint8_t *src, ptrdiff_t src_stride, | ||||
|                                 const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                 int height, int mx, int my) | ||||
| { | ||||
|     int32_t multiple8_cnt; | ||||
| @@ -832,7 +832,7 @@ void ff_put_vp8_epel16_h4v6_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_pixels8_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                             uint8_t *src, ptrdiff_t src_stride, | ||||
|                             const uint8_t *src, ptrdiff_t src_stride, | ||||
|                             int height, int mx, int my) | ||||
| { | ||||
|     int32_t cnt; | ||||
| @@ -889,12 +889,13 @@ void ff_put_vp8_pixels8_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_pixels16_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                              uint8_t *src, ptrdiff_t src_stride, | ||||
|                              const uint8_t *src, ptrdiff_t src_stride, | ||||
|                              int height, int mx, int my) | ||||
| { | ||||
|     int32_t width = 16; | ||||
|     int32_t cnt, loop_cnt; | ||||
|     uint8_t *src_tmp, *dst_tmp; | ||||
|     const uint8_t *src_tmp; | ||||
|     uint8_t *dst_tmp; | ||||
|     __m128i src0, src1, src2, src3, src4, src5, src6, src7; | ||||
|  | ||||
|     ptrdiff_t src_stride2 = src_stride << 1; | ||||
|   | ||||
| @@ -25,49 +25,49 @@ | ||||
| #include "libavcodec/vp8dsp.h" | ||||
|  | ||||
| void ff_put_vp8_pixels8_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                             uint8_t *src, ptrdiff_t src_stride, | ||||
|                             const uint8_t *src, ptrdiff_t src_stride, | ||||
|                             int h, int x, int y); | ||||
| void ff_put_vp8_pixels16_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                              uint8_t *src, ptrdiff_t src_stride, | ||||
|                              const uint8_t *src, ptrdiff_t src_stride, | ||||
|                              int h, int x, int y); | ||||
|  | ||||
| void ff_put_vp8_epel16_h6_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                               uint8_t *src, ptrdiff_t src_stride, | ||||
|                               const uint8_t *src, ptrdiff_t src_stride, | ||||
|                               int h, int mx, int my); | ||||
| void ff_put_vp8_epel16_v4_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                               uint8_t *src, ptrdiff_t src_stride, | ||||
|                               const uint8_t *src, ptrdiff_t src_stride, | ||||
|                               int h, int mx, int my); | ||||
| void ff_put_vp8_epel16_v6_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                               uint8_t *src, ptrdiff_t src_stride, | ||||
|                               const uint8_t *src, ptrdiff_t src_stride, | ||||
|                               int h, int mx, int my); | ||||
| void ff_put_vp8_epel16_h6v4_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                 uint8_t *src, ptrdiff_t src_stride, | ||||
|                                 const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                 int h, int mx, int my); | ||||
| void ff_put_vp8_epel16_h4v6_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                 uint8_t *src, ptrdiff_t src_stride, | ||||
|                                 const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                 int h, int mx, int my); | ||||
| void ff_put_vp8_epel16_h6v6_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                 uint8_t *src, ptrdiff_t src_stride, | ||||
|                                 const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                 int h, int mx, int my); | ||||
|  | ||||
| void ff_put_vp8_epel8_v4_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                              uint8_t *src, ptrdiff_t src_stride, | ||||
|                              const uint8_t *src, ptrdiff_t src_stride, | ||||
|                              int h, int mx, int my); | ||||
| void ff_put_vp8_epel8_v6_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                              uint8_t *src, ptrdiff_t src_stride, | ||||
|                              const uint8_t *src, ptrdiff_t src_stride, | ||||
|                              int h, int mx, int my); | ||||
| void ff_put_vp8_epel8_h6v4_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                uint8_t *src, ptrdiff_t src_stride, | ||||
|                                const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                int h, int mx, int my); | ||||
| void ff_put_vp8_epel8_h4v6_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                uint8_t *src, ptrdiff_t src_stride, | ||||
|                                const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                int h, int mx, int my); | ||||
| void ff_put_vp8_epel8_h6v6_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                uint8_t *src, ptrdiff_t src_stride, | ||||
|                                const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                int h, int mx, int my); | ||||
|  | ||||
| void ff_put_vp8_epel8_h6_lsx(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                              uint8_t *src, ptrdiff_t src_stride, | ||||
|                              const uint8_t *src, ptrdiff_t src_stride, | ||||
|                              int h, int mx, int my); | ||||
|  | ||||
| /* loop filter */ | ||||
|   | ||||
| @@ -156,7 +156,7 @@ static const int8_t bilinear_filters_msa[7][2] = { | ||||
|                  out0, out1, out2, out3);                                     \ | ||||
| } | ||||
|  | ||||
| static void common_hz_6t_4x4_msa(uint8_t *src, int32_t src_stride, | ||||
| static void common_hz_6t_4x4_msa(const uint8_t *src, int32_t src_stride, | ||||
|                                  uint8_t *dst, int32_t dst_stride, | ||||
|                                  const int8_t *filter) | ||||
| { | ||||
| @@ -184,7 +184,7 @@ static void common_hz_6t_4x4_msa(uint8_t *src, int32_t src_stride, | ||||
|     ST_W4(out, 0, 1, 2, 3, dst, dst_stride); | ||||
| } | ||||
|  | ||||
| static void common_hz_6t_4x8_msa(uint8_t *src, int32_t src_stride, | ||||
| static void common_hz_6t_4x8_msa(const uint8_t *src, int32_t src_stride, | ||||
|                                  uint8_t *dst, int32_t dst_stride, | ||||
|                                  const int8_t *filter) | ||||
| { | ||||
| @@ -220,7 +220,7 @@ static void common_hz_6t_4x8_msa(uint8_t *src, int32_t src_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel4_h6_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                              uint8_t *src, ptrdiff_t src_stride, | ||||
|                              const uint8_t *src, ptrdiff_t src_stride, | ||||
|                              int height, int mx, int my) | ||||
| { | ||||
|     const int8_t *filter = subpel_filters_msa[mx - 1]; | ||||
| @@ -233,7 +233,7 @@ void ff_put_vp8_epel4_h6_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel8_h6_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                              uint8_t *src, ptrdiff_t src_stride, | ||||
|                              const uint8_t *src, ptrdiff_t src_stride, | ||||
|                              int height, int mx, int my) | ||||
| { | ||||
|     uint32_t loop_cnt; | ||||
| @@ -281,7 +281,7 @@ void ff_put_vp8_epel8_h6_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel16_h6_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                               uint8_t *src, ptrdiff_t src_stride, | ||||
|                               const uint8_t *src, ptrdiff_t src_stride, | ||||
|                               int height, int mx, int my) | ||||
| { | ||||
|     uint32_t loop_cnt; | ||||
| @@ -330,7 +330,7 @@ void ff_put_vp8_epel16_h6_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel4_v6_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                              uint8_t *src, ptrdiff_t src_stride, | ||||
|                              const uint8_t *src, ptrdiff_t src_stride, | ||||
|                              int height, int mx, int my) | ||||
| { | ||||
|     uint32_t loop_cnt; | ||||
| @@ -377,7 +377,7 @@ void ff_put_vp8_epel4_v6_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel8_v6_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                              uint8_t *src, ptrdiff_t src_stride, | ||||
|                              const uint8_t *src, ptrdiff_t src_stride, | ||||
|                              int height, int mx, int my) | ||||
| { | ||||
|     uint32_t loop_cnt; | ||||
| @@ -427,7 +427,7 @@ void ff_put_vp8_epel8_v6_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel16_v6_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                               uint8_t *src, ptrdiff_t src_stride, | ||||
|                               const uint8_t *src, ptrdiff_t src_stride, | ||||
|                               int height, int mx, int my) | ||||
| { | ||||
|     uint32_t loop_cnt; | ||||
| @@ -501,7 +501,7 @@ void ff_put_vp8_epel16_v6_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel4_h6v6_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                uint8_t *src, ptrdiff_t src_stride, | ||||
|                                const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                int height, int mx, int my) | ||||
| { | ||||
|     uint32_t loop_cnt; | ||||
| @@ -576,7 +576,7 @@ void ff_put_vp8_epel4_h6v6_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel8_h6v6_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                uint8_t *src, ptrdiff_t src_stride, | ||||
|                                const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                int height, int mx, int my) | ||||
| { | ||||
|     uint32_t loop_cnt; | ||||
| @@ -663,7 +663,7 @@ void ff_put_vp8_epel8_h6v6_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|  | ||||
|  | ||||
| void ff_put_vp8_epel16_h6v6_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                uint8_t *src, ptrdiff_t src_stride, | ||||
|                                 const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                int height, int mx, int my) | ||||
| { | ||||
|     int32_t multiple8_cnt; | ||||
| @@ -677,7 +677,7 @@ void ff_put_vp8_epel16_h6v6_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|     } | ||||
| } | ||||
|  | ||||
| static void common_hz_4t_4x4_msa(uint8_t *src, int32_t src_stride, | ||||
| static void common_hz_4t_4x4_msa(const uint8_t *src, int32_t src_stride, | ||||
|                                  uint8_t *dst, int32_t dst_stride, | ||||
|                                  const int8_t *filter) | ||||
| { | ||||
| @@ -704,7 +704,7 @@ static void common_hz_4t_4x4_msa(uint8_t *src, int32_t src_stride, | ||||
|     ST_W4(out, 0, 1, 2, 3, dst, dst_stride); | ||||
| } | ||||
|  | ||||
| static void common_hz_4t_4x8_msa(uint8_t *src, int32_t src_stride, | ||||
| static void common_hz_4t_4x8_msa(const uint8_t *src, int32_t src_stride, | ||||
|                                  uint8_t *dst, int32_t dst_stride, | ||||
|                                  const int8_t *filter) | ||||
| { | ||||
| @@ -739,7 +739,7 @@ static void common_hz_4t_4x8_msa(uint8_t *src, int32_t src_stride, | ||||
|     ST_W4(out, 0, 1, 2, 3, dst + 4 * dst_stride, dst_stride); | ||||
| } | ||||
|  | ||||
| static void common_hz_4t_4x16_msa(uint8_t *src, int32_t src_stride, | ||||
| static void common_hz_4t_4x16_msa(const uint8_t *src, int32_t src_stride, | ||||
|                                   uint8_t *dst, int32_t dst_stride, | ||||
|                                   const int8_t *filter) | ||||
| { | ||||
| @@ -790,7 +790,7 @@ static void common_hz_4t_4x16_msa(uint8_t *src, int32_t src_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel4_h4_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                              uint8_t *src, ptrdiff_t src_stride, | ||||
|                              const uint8_t *src, ptrdiff_t src_stride, | ||||
|                              int height, int mx, int my) | ||||
| { | ||||
|     const int8_t *filter = subpel_filters_msa[mx - 1]; | ||||
| @@ -805,7 +805,7 @@ void ff_put_vp8_epel4_h4_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel8_h4_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                              uint8_t *src, ptrdiff_t src_stride, | ||||
|                              const uint8_t *src, ptrdiff_t src_stride, | ||||
|                              int height, int mx, int my) | ||||
| { | ||||
|     uint32_t loop_cnt; | ||||
| @@ -840,7 +840,7 @@ void ff_put_vp8_epel8_h4_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel16_h4_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                               uint8_t *src, ptrdiff_t src_stride, | ||||
|                               const uint8_t *src, ptrdiff_t src_stride, | ||||
|                               int height, int mx, int my) | ||||
| { | ||||
|     uint32_t loop_cnt; | ||||
| @@ -889,7 +889,7 @@ void ff_put_vp8_epel16_h4_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel4_v4_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                              uint8_t *src, ptrdiff_t src_stride, | ||||
|                              const uint8_t *src, ptrdiff_t src_stride, | ||||
|                              int height, int mx, int my) | ||||
| { | ||||
|     uint32_t loop_cnt; | ||||
| @@ -936,7 +936,7 @@ void ff_put_vp8_epel4_v4_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel8_v4_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                              uint8_t *src, ptrdiff_t src_stride, | ||||
|                              const uint8_t *src, ptrdiff_t src_stride, | ||||
|                              int height, int mx, int my) | ||||
| { | ||||
|     uint32_t loop_cnt; | ||||
| @@ -982,7 +982,7 @@ void ff_put_vp8_epel8_v4_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel16_v4_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                               uint8_t *src, ptrdiff_t src_stride, | ||||
|                               const uint8_t *src, ptrdiff_t src_stride, | ||||
|                               int height, int mx, int my) | ||||
| { | ||||
|     uint32_t loop_cnt; | ||||
| @@ -1041,7 +1041,7 @@ void ff_put_vp8_epel16_v4_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel4_h4v4_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                uint8_t *src, ptrdiff_t src_stride, | ||||
|                                const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                int height, int mx, int my) | ||||
| { | ||||
|     uint32_t loop_cnt; | ||||
| @@ -1100,7 +1100,7 @@ void ff_put_vp8_epel4_h4v4_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel8_h4v4_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                uint8_t *src, ptrdiff_t src_stride, | ||||
|                                const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                int height, int mx, int my) | ||||
| { | ||||
|     uint32_t loop_cnt; | ||||
| @@ -1167,7 +1167,7 @@ void ff_put_vp8_epel8_h4v4_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel16_h4v4_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                 uint8_t *src, ptrdiff_t src_stride, | ||||
|                                 const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                 int height, int mx, int my) | ||||
| { | ||||
|     int32_t multiple8_cnt; | ||||
| @@ -1182,7 +1182,7 @@ void ff_put_vp8_epel16_h4v4_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel4_h6v4_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                uint8_t *src, ptrdiff_t src_stride, | ||||
|                                const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                int height, int mx, int my) | ||||
| { | ||||
|     uint32_t loop_cnt; | ||||
| @@ -1248,7 +1248,7 @@ void ff_put_vp8_epel4_h6v4_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel8_h6v4_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                uint8_t *src, ptrdiff_t src_stride, | ||||
|                                const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                int height, int mx, int my) | ||||
| { | ||||
|     uint32_t loop_cnt; | ||||
| @@ -1321,7 +1321,7 @@ void ff_put_vp8_epel8_h6v4_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel16_h6v4_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                uint8_t *src, ptrdiff_t src_stride, | ||||
|                                 const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                int height, int mx, int my) | ||||
| { | ||||
|     int32_t multiple8_cnt; | ||||
| @@ -1336,7 +1336,7 @@ void ff_put_vp8_epel16_h6v4_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel4_h4v6_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                uint8_t *src, ptrdiff_t src_stride, | ||||
|                                const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                int height, int mx, int my) | ||||
| { | ||||
|     uint32_t loop_cnt; | ||||
| @@ -1400,7 +1400,7 @@ void ff_put_vp8_epel4_h4v6_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel8_h4v6_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                uint8_t *src, ptrdiff_t src_stride, | ||||
|                                const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                int height, int mx, int my) | ||||
| { | ||||
|     uint32_t loop_cnt; | ||||
| @@ -1475,7 +1475,7 @@ void ff_put_vp8_epel8_h4v6_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_epel16_h4v6_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                 uint8_t *src, ptrdiff_t src_stride, | ||||
|                                 const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                 int height, int mx, int my) | ||||
| { | ||||
|     int32_t multiple8_cnt; | ||||
| @@ -1489,7 +1489,7 @@ void ff_put_vp8_epel16_h4v6_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|     } | ||||
| } | ||||
|  | ||||
| static void common_hz_2t_4x4_msa(uint8_t *src, int32_t src_stride, | ||||
| static void common_hz_2t_4x4_msa(const uint8_t *src, int32_t src_stride, | ||||
|                                  uint8_t *dst, int32_t dst_stride, | ||||
|                                  const int8_t *filter) | ||||
| { | ||||
| @@ -1512,7 +1512,7 @@ static void common_hz_2t_4x4_msa(uint8_t *src, int32_t src_stride, | ||||
|     ST_W2(res1, 0, 1, dst + 2 * dst_stride, dst_stride); | ||||
| } | ||||
|  | ||||
| static void common_hz_2t_4x8_msa(uint8_t *src, int32_t src_stride, | ||||
| static void common_hz_2t_4x8_msa(const uint8_t *src, int32_t src_stride, | ||||
|                                  uint8_t *dst, int32_t dst_stride, | ||||
|                                  const int8_t *filter) | ||||
| { | ||||
| @@ -1542,7 +1542,7 @@ static void common_hz_2t_4x8_msa(uint8_t *src, int32_t src_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_bilinear4_h_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                 uint8_t *src, ptrdiff_t src_stride, | ||||
|                                 const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                 int height, int mx, int my) | ||||
| { | ||||
|     const int8_t *filter = bilinear_filters_msa[mx - 1]; | ||||
| @@ -1554,7 +1554,7 @@ void ff_put_vp8_bilinear4_h_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|     } | ||||
| } | ||||
|  | ||||
| static void common_hz_2t_8x4_msa(uint8_t *src, int32_t src_stride, | ||||
| static void common_hz_2t_8x4_msa(const uint8_t *src, int32_t src_stride, | ||||
|                                  uint8_t *dst, int32_t dst_stride, | ||||
|                                  const int8_t *filter) | ||||
| { | ||||
| @@ -1578,7 +1578,7 @@ static void common_hz_2t_8x4_msa(uint8_t *src, int32_t src_stride, | ||||
|     ST_D4(src0, src1, 0, 1, 0, 1, dst, dst_stride); | ||||
| } | ||||
|  | ||||
| static void common_hz_2t_8x8mult_msa(uint8_t *src, int32_t src_stride, | ||||
| static void common_hz_2t_8x8mult_msa(const uint8_t *src, int32_t src_stride, | ||||
|                                      uint8_t *dst, int32_t dst_stride, | ||||
|                                      const int8_t *filter, int32_t height) | ||||
| { | ||||
| @@ -1642,7 +1642,7 @@ static void common_hz_2t_8x8mult_msa(uint8_t *src, int32_t src_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_bilinear8_h_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                 uint8_t *src, ptrdiff_t src_stride, | ||||
|                                 const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                 int height, int mx, int my) | ||||
| { | ||||
|     const int8_t *filter = bilinear_filters_msa[mx - 1]; | ||||
| @@ -1656,7 +1656,7 @@ void ff_put_vp8_bilinear8_h_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_bilinear16_h_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                  uint8_t *src, ptrdiff_t src_stride, | ||||
|                                  const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                  int height, int mx, int my) | ||||
| { | ||||
|     uint32_t loop_cnt; | ||||
| @@ -1722,7 +1722,7 @@ void ff_put_vp8_bilinear16_h_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|     } | ||||
| } | ||||
|  | ||||
| static void common_vt_2t_4x4_msa(uint8_t *src, int32_t src_stride, | ||||
| static void common_vt_2t_4x4_msa(const uint8_t *src, int32_t src_stride, | ||||
|                                  uint8_t *dst, int32_t dst_stride, | ||||
|                                  const int8_t *filter) | ||||
| { | ||||
| @@ -1748,7 +1748,7 @@ static void common_vt_2t_4x4_msa(uint8_t *src, int32_t src_stride, | ||||
|     ST_W4(src2110, 0, 1, 2, 3, dst, dst_stride); | ||||
| } | ||||
|  | ||||
| static void common_vt_2t_4x8_msa(uint8_t *src, int32_t src_stride, | ||||
| static void common_vt_2t_4x8_msa(const uint8_t *src, int32_t src_stride, | ||||
|                                  uint8_t *dst, int32_t dst_stride, | ||||
|                                  const int8_t *filter) | ||||
| { | ||||
| @@ -1783,7 +1783,7 @@ static void common_vt_2t_4x8_msa(uint8_t *src, int32_t src_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_bilinear4_v_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                 uint8_t *src, ptrdiff_t src_stride, | ||||
|                                 const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                 int height, int mx, int my) | ||||
| { | ||||
|     const int8_t *filter = bilinear_filters_msa[my - 1]; | ||||
| @@ -1795,7 +1795,7 @@ void ff_put_vp8_bilinear4_v_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|     } | ||||
| } | ||||
|  | ||||
| static void common_vt_2t_8x4_msa(uint8_t *src, int32_t src_stride, | ||||
| static void common_vt_2t_8x4_msa(const uint8_t *src, int32_t src_stride, | ||||
|                                  uint8_t *dst, int32_t dst_stride, | ||||
|                                  const int8_t *filter) | ||||
| { | ||||
| @@ -1819,7 +1819,7 @@ static void common_vt_2t_8x4_msa(uint8_t *src, int32_t src_stride, | ||||
|     ST_D4(out0, out1, 0, 1, 0, 1, dst, dst_stride); | ||||
| } | ||||
|  | ||||
| static void common_vt_2t_8x8mult_msa(uint8_t *src, int32_t src_stride, | ||||
| static void common_vt_2t_8x8mult_msa(const uint8_t *src, int32_t src_stride, | ||||
|                                      uint8_t *dst, int32_t dst_stride, | ||||
|                                      const int8_t *filter, int32_t height) | ||||
| { | ||||
| @@ -1865,7 +1865,7 @@ static void common_vt_2t_8x8mult_msa(uint8_t *src, int32_t src_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_bilinear8_v_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                 uint8_t *src, ptrdiff_t src_stride, | ||||
|                                 const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                 int height, int mx, int my) | ||||
| { | ||||
|     const int8_t *filter = bilinear_filters_msa[my - 1]; | ||||
| @@ -1879,7 +1879,7 @@ void ff_put_vp8_bilinear8_v_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_bilinear16_v_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                  uint8_t *src, ptrdiff_t src_stride, | ||||
|                                  const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                  int height, int mx, int my) | ||||
| { | ||||
|     uint32_t loop_cnt; | ||||
| @@ -1932,7 +1932,7 @@ void ff_put_vp8_bilinear16_v_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|     } | ||||
| } | ||||
|  | ||||
| static void common_hv_2ht_2vt_4x4_msa(uint8_t *src, int32_t src_stride, | ||||
| static void common_hv_2ht_2vt_4x4_msa(const uint8_t *src, int32_t src_stride, | ||||
|                                       uint8_t *dst, int32_t dst_stride, | ||||
|                                       const int8_t *filter_horiz, | ||||
|                                       const int8_t *filter_vert) | ||||
| @@ -1966,7 +1966,7 @@ static void common_hv_2ht_2vt_4x4_msa(uint8_t *src, int32_t src_stride, | ||||
|     ST_W2(res1, 0, 1, dst + 2 * dst_stride, dst_stride); | ||||
| } | ||||
|  | ||||
| static void common_hv_2ht_2vt_4x8_msa(uint8_t *src, int32_t src_stride, | ||||
| static void common_hv_2ht_2vt_4x8_msa(const uint8_t *src, int32_t src_stride, | ||||
|                                       uint8_t *dst, int32_t dst_stride, | ||||
|                                       const int8_t *filter_horiz, | ||||
|                                       const int8_t *filter_vert) | ||||
| @@ -2014,7 +2014,7 @@ static void common_hv_2ht_2vt_4x8_msa(uint8_t *src, int32_t src_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_bilinear4_hv_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                  uint8_t *src, ptrdiff_t src_stride, | ||||
|                                  const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                  int height, int mx, int my) | ||||
| { | ||||
|     const int8_t *filter_horiz = bilinear_filters_msa[mx - 1]; | ||||
| @@ -2029,7 +2029,7 @@ void ff_put_vp8_bilinear4_hv_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|     } | ||||
| } | ||||
|  | ||||
| static void common_hv_2ht_2vt_8x4_msa(uint8_t *src, int32_t src_stride, | ||||
| static void common_hv_2ht_2vt_8x4_msa(const uint8_t *src, int32_t src_stride, | ||||
|                                       uint8_t *dst, int32_t dst_stride, | ||||
|                                       const int8_t *filter_horiz, | ||||
|                                       const int8_t *filter_vert) | ||||
| @@ -2073,7 +2073,7 @@ static void common_hv_2ht_2vt_8x4_msa(uint8_t *src, int32_t src_stride, | ||||
|     ST_D4(out0, out1, 0, 1, 0, 1, dst, dst_stride); | ||||
| } | ||||
|  | ||||
| static void common_hv_2ht_2vt_8x8mult_msa(uint8_t *src, int32_t src_stride, | ||||
| static void common_hv_2ht_2vt_8x8mult_msa(const uint8_t *src, int32_t src_stride, | ||||
|                                           uint8_t *dst, int32_t dst_stride, | ||||
|                                           const int8_t *filter_horiz, | ||||
|                                           const int8_t *filter_vert, | ||||
| @@ -2154,7 +2154,7 @@ static void common_hv_2ht_2vt_8x8mult_msa(uint8_t *src, int32_t src_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_bilinear8_hv_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                  uint8_t *src, ptrdiff_t src_stride, | ||||
|                                  const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                  int height, int mx, int my) | ||||
| { | ||||
|     const int8_t *filter_horiz = bilinear_filters_msa[mx - 1]; | ||||
| @@ -2170,7 +2170,7 @@ void ff_put_vp8_bilinear8_hv_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_bilinear16_hv_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                   uint8_t *src, ptrdiff_t src_stride, | ||||
|                                   const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                   int height, int mx, int my) | ||||
| { | ||||
|     uint32_t loop_cnt; | ||||
| @@ -2241,7 +2241,7 @@ void ff_put_vp8_bilinear16_hv_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_pixels8_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                             uint8_t *src, ptrdiff_t src_stride, | ||||
|                             const uint8_t *src, ptrdiff_t src_stride, | ||||
|                             int height, int mx, int my) | ||||
| { | ||||
|     int32_t cnt; | ||||
| @@ -2283,16 +2283,16 @@ void ff_put_vp8_pixels8_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|     } | ||||
| } | ||||
|  | ||||
| static void copy_16multx8mult_msa(uint8_t *src, int32_t src_stride, | ||||
| static void copy_16multx8mult_msa(const uint8_t *src, int32_t src_stride, | ||||
|                                   uint8_t *dst, int32_t dst_stride, | ||||
|                                   int32_t height, int32_t width) | ||||
| { | ||||
|     int32_t cnt, loop_cnt; | ||||
|     uint8_t *src_tmp, *dst_tmp; | ||||
|     uint8_t *dst_tmp; | ||||
|     v16u8 src0, src1, src2, src3, src4, src5, src6, src7; | ||||
|  | ||||
|     for (cnt = (width >> 4); cnt--;) { | ||||
|         src_tmp = src; | ||||
|         const uint8_t *src_tmp = src; | ||||
|         dst_tmp = dst; | ||||
|  | ||||
|         for (loop_cnt = (height >> 3); loop_cnt--;) { | ||||
| @@ -2311,7 +2311,7 @@ static void copy_16multx8mult_msa(uint8_t *src, int32_t src_stride, | ||||
| } | ||||
|  | ||||
| void ff_put_vp8_pixels16_msa(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                             uint8_t *src, ptrdiff_t src_stride, | ||||
|                              const uint8_t *src, ptrdiff_t src_stride, | ||||
|                             int height, int mx, int my) | ||||
| { | ||||
|     int32_t cnt; | ||||
|   | ||||
| @@ -28,118 +28,118 @@ | ||||
| #include "constants.h" | ||||
|  | ||||
| void ff_put_vp8_pixels4_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                             uint8_t *src, ptrdiff_t srcstride, | ||||
|                             const uint8_t *src, ptrdiff_t srcstride, | ||||
|                             int h, int x, int y); | ||||
| void ff_put_vp8_pixels8_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                             uint8_t *src, ptrdiff_t srcstride, | ||||
|                             const uint8_t *src, ptrdiff_t srcstride, | ||||
|                             int h, int x, int y); | ||||
| void ff_put_vp8_pixels16_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                              uint8_t *src, ptrdiff_t srcstride, | ||||
|                              const uint8_t *src, ptrdiff_t srcstride, | ||||
|                              int h, int x, int y); | ||||
|  | ||||
| void ff_put_vp8_epel16_h4_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                               uint8_t *src, ptrdiff_t srcstride, | ||||
|                               const uint8_t *src, ptrdiff_t srcstride, | ||||
|                               int h, int mx, int my); | ||||
| void ff_put_vp8_epel16_h6_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                               uint8_t *src, ptrdiff_t srcstride, | ||||
|                               const uint8_t *src, ptrdiff_t srcstride, | ||||
|                               int h, int mx, int my); | ||||
| void ff_put_vp8_epel16_v4_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                               uint8_t *src, ptrdiff_t srcstride, | ||||
|                               const uint8_t *src, ptrdiff_t srcstride, | ||||
|                               int h, int mx, int my); | ||||
| void ff_put_vp8_epel16_v6_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                               uint8_t *src, ptrdiff_t srcstride, | ||||
|                               const uint8_t *src, ptrdiff_t srcstride, | ||||
|                               int h, int mx, int my); | ||||
| void ff_put_vp8_epel16_h4v4_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                                 uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 int h, int mx, int my); | ||||
| void ff_put_vp8_epel16_h6v4_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                                 uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 int h, int mx, int my); | ||||
| void ff_put_vp8_epel16_h4v6_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                                 uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 int h, int mx, int my); | ||||
| void ff_put_vp8_epel16_h6v6_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                                 uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 int h, int mx, int my); | ||||
|  | ||||
| void ff_put_vp8_epel8_h4_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                              uint8_t *src, ptrdiff_t srcstride, | ||||
|                              const uint8_t *src, ptrdiff_t srcstride, | ||||
|                              int h, int mx, int my); | ||||
| void ff_put_vp8_epel8_h6_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                              uint8_t *src, ptrdiff_t srcstride, | ||||
|                              const uint8_t *src, ptrdiff_t srcstride, | ||||
|                              int h, int mx, int my); | ||||
| void ff_put_vp8_epel8_v4_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                              uint8_t *src, ptrdiff_t srcstride, | ||||
|                              const uint8_t *src, ptrdiff_t srcstride, | ||||
|                              int h, int mx, int my); | ||||
| void ff_put_vp8_epel8_v6_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                              uint8_t *src, ptrdiff_t srcstride, | ||||
|                              const uint8_t *src, ptrdiff_t srcstride, | ||||
|                              int h, int mx, int my); | ||||
| void ff_put_vp8_epel8_h4v4_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                                uint8_t *src, ptrdiff_t srcstride, | ||||
|                                const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                int h, int mx, int my); | ||||
| void ff_put_vp8_epel8_h6v4_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                                uint8_t *src, ptrdiff_t srcstride, | ||||
|                                const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                int h, int mx, int my); | ||||
| void ff_put_vp8_epel8_h4v6_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                                uint8_t *src, ptrdiff_t srcstride, | ||||
|                                const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                int h, int mx, int my); | ||||
| void ff_put_vp8_epel8_h6v6_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                                uint8_t *src, ptrdiff_t srcstride, | ||||
|                                const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                int h, int mx, int my); | ||||
|  | ||||
| void ff_put_vp8_epel4_h4_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                              uint8_t *src, ptrdiff_t srcstride, | ||||
|                              const uint8_t *src, ptrdiff_t srcstride, | ||||
|                              int h, int mx, int my); | ||||
| void ff_put_vp8_epel4_h6_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                              uint8_t *src, ptrdiff_t srcstride, | ||||
|                              const uint8_t *src, ptrdiff_t srcstride, | ||||
|                              int h, int mx, int my); | ||||
| void ff_put_vp8_epel4_v4_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                              uint8_t *src, ptrdiff_t srcstride, | ||||
|                              const uint8_t *src, ptrdiff_t srcstride, | ||||
|                              int h, int mx, int my); | ||||
| void ff_put_vp8_epel4_v6_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                              uint8_t *src, ptrdiff_t srcstride, | ||||
|                              const uint8_t *src, ptrdiff_t srcstride, | ||||
|                              int h, int mx, int my); | ||||
| void ff_put_vp8_epel4_h4v4_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                                uint8_t *src, ptrdiff_t srcstride, | ||||
|                                const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                int h, int mx, int my); | ||||
| void ff_put_vp8_epel4_h6v4_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                                uint8_t *src, ptrdiff_t srcstride, | ||||
|                                const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                int h, int mx, int my); | ||||
| void ff_put_vp8_epel4_h4v6_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                                uint8_t *src, ptrdiff_t srcstride, | ||||
|                                const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                int h, int mx, int my); | ||||
| void ff_put_vp8_epel4_h6v6_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                                uint8_t *src, ptrdiff_t srcstride, | ||||
|                                const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                int h, int mx, int my); | ||||
|  | ||||
| void ff_put_vp8_bilinear16_h_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                                  uint8_t *src, ptrdiff_t srcstride, | ||||
|                                  const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                  int h, int mx, int my); | ||||
| void ff_put_vp8_bilinear16_v_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                                  uint8_t *src, ptrdiff_t srcstride, | ||||
|                                  const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                  int h, int mx, int my); | ||||
| void ff_put_vp8_bilinear16_hv_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                                   uint8_t *src, ptrdiff_t srcstride, | ||||
|                                   const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                   int h, int mx, int my); | ||||
|  | ||||
| void ff_put_vp8_bilinear8_h_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                                 uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 int h, int mx, int my); | ||||
| void ff_put_vp8_bilinear8_v_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                                 uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 int h, int mx, int my); | ||||
| void ff_put_vp8_bilinear8_hv_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                                  uint8_t *src, ptrdiff_t srcstride, | ||||
|                                  const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                  int h, int mx, int my); | ||||
|  | ||||
| void ff_put_vp8_bilinear4_h_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                                 uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 int h, int mx, int my); | ||||
| void ff_put_vp8_bilinear4_v_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                                 uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 int h, int mx, int my); | ||||
| void ff_put_vp8_bilinear4_hv_msa(uint8_t *dst, ptrdiff_t dststride, | ||||
|                                  uint8_t *src, ptrdiff_t srcstride, | ||||
|                                  const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                  int h, int mx, int my); | ||||
|  | ||||
| /* loop filter */ | ||||
| @@ -184,84 +184,84 @@ void ff_vp8_idct_dc_add4y_mmi(uint8_t *dst, int16_t block[4][16], | ||||
| void ff_vp8_idct_dc_add4uv_mmi(uint8_t *dst, int16_t block[4][16], | ||||
|         ptrdiff_t stride); | ||||
|  | ||||
| void ff_put_vp8_pixels4_mmi(uint8_t *dst, ptrdiff_t dststride, uint8_t *src, | ||||
| void ff_put_vp8_pixels4_mmi(uint8_t *dst, ptrdiff_t dststride, const uint8_t *src, | ||||
|         ptrdiff_t srcstride, int h, int x, int y); | ||||
| void ff_put_vp8_pixels8_mmi(uint8_t *dst, ptrdiff_t dststride, uint8_t *src, | ||||
| void ff_put_vp8_pixels8_mmi(uint8_t *dst, ptrdiff_t dststride, const uint8_t *src, | ||||
|         ptrdiff_t srcstride, int h, int x, int y); | ||||
| void ff_put_vp8_pixels16_mmi(uint8_t *dst, ptrdiff_t dststride, uint8_t *src, | ||||
| void ff_put_vp8_pixels16_mmi(uint8_t *dst, ptrdiff_t dststride, const uint8_t *src, | ||||
|         ptrdiff_t srcstride, int h, int x, int y); | ||||
|  | ||||
| void ff_put_vp8_epel16_h4_mmi(uint8_t *dst, ptrdiff_t dststride, uint8_t *src, | ||||
| void ff_put_vp8_epel16_h4_mmi(uint8_t *dst, ptrdiff_t dststride, const uint8_t *src, | ||||
|         ptrdiff_t srcstride, int h, int mx, int my); | ||||
| void ff_put_vp8_epel16_h6_mmi(uint8_t *dst, ptrdiff_t dststride, uint8_t *src, | ||||
| void ff_put_vp8_epel16_h6_mmi(uint8_t *dst, ptrdiff_t dststride, const uint8_t *src, | ||||
|         ptrdiff_t srcstride, int h, int mx, int my); | ||||
| void ff_put_vp8_epel16_v4_mmi(uint8_t *dst, ptrdiff_t dststride, uint8_t *src, | ||||
| void ff_put_vp8_epel16_v4_mmi(uint8_t *dst, ptrdiff_t dststride, const uint8_t *src, | ||||
|         ptrdiff_t srcstride, int h, int mx, int my); | ||||
| void ff_put_vp8_epel16_v6_mmi(uint8_t *dst, ptrdiff_t dststride, uint8_t *src, | ||||
| void ff_put_vp8_epel16_v6_mmi(uint8_t *dst, ptrdiff_t dststride, const uint8_t *src, | ||||
|         ptrdiff_t srcstride, int h, int mx, int my); | ||||
| void ff_put_vp8_epel16_h4v4_mmi(uint8_t *dst, ptrdiff_t dststride, | ||||
|         uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|         const uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
| void ff_put_vp8_epel16_h6v4_mmi(uint8_t *dst, ptrdiff_t dststride, | ||||
|         uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|         const uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
| void ff_put_vp8_epel16_h4v6_mmi(uint8_t *dst, ptrdiff_t dststride, | ||||
|         uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|         const uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
| void ff_put_vp8_epel16_h6v6_mmi(uint8_t *dst, ptrdiff_t dststride, | ||||
|         uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|         const uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|  | ||||
| void ff_put_vp8_epel8_h4_mmi(uint8_t *dst, ptrdiff_t dststride, | ||||
|         uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|         const uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
| void ff_put_vp8_epel8_h6_mmi(uint8_t *dst, ptrdiff_t dststride, | ||||
|         uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|         const uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
| void ff_put_vp8_epel8_v4_mmi(uint8_t *dst, ptrdiff_t dststride, | ||||
|         uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|         const uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
| void ff_put_vp8_epel8_v6_mmi(uint8_t *dst, ptrdiff_t dststride, | ||||
|         uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|         const uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
| void ff_put_vp8_epel8_h4v4_mmi(uint8_t *dst, ptrdiff_t dststride, | ||||
|         uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|         const uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
| void ff_put_vp8_epel8_h6v4_mmi(uint8_t *dst, ptrdiff_t dststride, | ||||
|         uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|         const uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
| void ff_put_vp8_epel8_h4v6_mmi(uint8_t *dst, ptrdiff_t dststride, | ||||
|         uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|         const uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
| void ff_put_vp8_epel8_h6v6_mmi(uint8_t *dst, ptrdiff_t dststride, | ||||
|         uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|         const uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|  | ||||
| void ff_put_vp8_epel4_h4_mmi(uint8_t *dst, ptrdiff_t dststride, | ||||
|         uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|         const uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
| void ff_put_vp8_epel4_h6_mmi(uint8_t *dst, ptrdiff_t dststride, | ||||
|         uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|         const uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
| void ff_put_vp8_epel4_v4_mmi(uint8_t *dst, ptrdiff_t dststride, | ||||
|         uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|         const uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
| void ff_put_vp8_epel4_v6_mmi(uint8_t *dst, ptrdiff_t dststride, | ||||
|         uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|         const uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
| void ff_put_vp8_epel4_h4v4_mmi(uint8_t *dst, ptrdiff_t dststride, | ||||
|         uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|         const uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
| void ff_put_vp8_epel4_h6v4_mmi(uint8_t *dst, ptrdiff_t dststride, | ||||
|         uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|         const uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
| void ff_put_vp8_epel4_h4v6_mmi(uint8_t *dst, ptrdiff_t dststride, | ||||
|         uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|         const uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
| void ff_put_vp8_epel4_h6v6_mmi(uint8_t *dst, ptrdiff_t dststride, | ||||
|         uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|         const uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|  | ||||
| void ff_put_vp8_bilinear16_h_mmi(uint8_t *dst, ptrdiff_t dststride, | ||||
|         uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|         const uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
| void ff_put_vp8_bilinear16_v_mmi(uint8_t *dst, ptrdiff_t dststride, | ||||
|         uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|         const uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
| void ff_put_vp8_bilinear16_hv_mmi(uint8_t *dst, ptrdiff_t dststride, | ||||
|         uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|         const uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|  | ||||
| void ff_put_vp8_bilinear8_h_mmi(uint8_t *dst, ptrdiff_t dststride, | ||||
|         uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|         const uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
| void ff_put_vp8_bilinear8_v_mmi(uint8_t *dst, ptrdiff_t dststride, | ||||
|         uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|         const uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
| void ff_put_vp8_bilinear8_hv_mmi(uint8_t *dst, ptrdiff_t dststride, | ||||
|         uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|         const uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|  | ||||
| void ff_put_vp8_bilinear4_h_mmi(uint8_t *dst, ptrdiff_t dststride, | ||||
|         uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|         const uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
| void ff_put_vp8_bilinear4_v_mmi(uint8_t *dst, ptrdiff_t dststride, | ||||
|         uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|         const uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
| void ff_put_vp8_bilinear4_hv_mmi(uint8_t *dst, ptrdiff_t dststride, | ||||
|         uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|         const uint8_t *src, ptrdiff_t srcstride, int h, int mx, int my); | ||||
|  | ||||
| // loop filter applied to edges between macroblocks | ||||
| void ff_vp8_v_loop_filter16_mmi(uint8_t *dst, ptrdiff_t stride, int flim_E, | ||||
|   | ||||
| @@ -96,7 +96,7 @@ static const vec_s8 h_subpel_filters_outer[3] = | ||||
|  | ||||
| static av_always_inline | ||||
| void put_vp8_epel_h_altivec_core(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                  uint8_t *src, ptrdiff_t src_stride, | ||||
|                                  const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                  int h, int mx, int w, int is6tap) | ||||
| { | ||||
|     LOAD_H_SUBPEL_FILTER(mx-1); | ||||
| @@ -193,7 +193,7 @@ static const vec_u8 v_subpel_filters[7] = | ||||
|  | ||||
| static av_always_inline | ||||
| void put_vp8_epel_v_altivec_core(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|                                  uint8_t *src, ptrdiff_t src_stride, | ||||
|                                  const uint8_t *src, ptrdiff_t src_stride, | ||||
|                                  int h, int my, int w, int is6tap) | ||||
| { | ||||
|     LOAD_V_SUBPEL_FILTER(my-1); | ||||
| @@ -259,19 +259,19 @@ void put_vp8_epel_v_altivec_core(uint8_t *dst, ptrdiff_t dst_stride, | ||||
|  | ||||
| #define EPEL_FUNCS(WIDTH, TAPS) \ | ||||
| static av_noinline \ | ||||
| void put_vp8_epel ## WIDTH ## _h ## TAPS ## _altivec(uint8_t *dst, ptrdiff_t dst_stride, uint8_t *src, ptrdiff_t src_stride, int h, int mx, int my) \ | ||||
| void put_vp8_epel ## WIDTH ## _h ## TAPS ## _altivec(uint8_t *dst, ptrdiff_t dst_stride, const uint8_t *src, ptrdiff_t src_stride, int h, int mx, int my) \ | ||||
| { \ | ||||
|     put_vp8_epel_h_altivec_core(dst, dst_stride, src, src_stride, h, mx, WIDTH, TAPS == 6); \ | ||||
| } \ | ||||
| \ | ||||
| static av_noinline \ | ||||
| void put_vp8_epel ## WIDTH ## _v ## TAPS ## _altivec(uint8_t *dst, ptrdiff_t dst_stride, uint8_t *src, ptrdiff_t src_stride, int h, int mx, int my) \ | ||||
| void put_vp8_epel ## WIDTH ## _v ## TAPS ## _altivec(uint8_t *dst, ptrdiff_t dst_stride, const uint8_t *src, ptrdiff_t src_stride, int h, int mx, int my) \ | ||||
| { \ | ||||
|     put_vp8_epel_v_altivec_core(dst, dst_stride, src, src_stride, h, my, WIDTH, TAPS == 6); \ | ||||
| } | ||||
|  | ||||
| #define EPEL_HV(WIDTH, HTAPS, VTAPS) \ | ||||
| static void put_vp8_epel ## WIDTH ## _h ## HTAPS ## v ## VTAPS ## _altivec(uint8_t *dst, ptrdiff_t dstride, uint8_t *src, ptrdiff_t sstride, int h, int mx, int my) \ | ||||
| static void put_vp8_epel ## WIDTH ## _h ## HTAPS ## v ## VTAPS ## _altivec(uint8_t *dst, ptrdiff_t dstride, const uint8_t *src, ptrdiff_t sstride, int h, int mx, int my) \ | ||||
| { \ | ||||
|     DECLARE_ALIGNED(16, uint8_t, tmp)[(2*WIDTH+5)*16]; \ | ||||
|     if (VTAPS == 6) { \ | ||||
| @@ -299,7 +299,7 @@ EPEL_HV(4,  4,6) | ||||
| EPEL_HV(4,  6,4) | ||||
| EPEL_HV(4,  4,4) | ||||
|  | ||||
| static void put_vp8_pixels16_altivec(uint8_t *dst, ptrdiff_t dstride, uint8_t *src, ptrdiff_t sstride, int h, int mx, int my) | ||||
| static void put_vp8_pixels16_altivec(uint8_t *dst, ptrdiff_t dstride, const uint8_t *src, ptrdiff_t sstride, int h, int mx, int my) | ||||
| { | ||||
|     register vector unsigned char perm; | ||||
|     int i; | ||||
|   | ||||
| @@ -468,7 +468,7 @@ static const uint8_t subpel_filters[7][6] = { | ||||
|  | ||||
| #define PUT_PIXELS(WIDTH)                                                     \ | ||||
| static void put_vp8_pixels ## WIDTH ## _c(uint8_t *dst, ptrdiff_t dststride,  \ | ||||
|                                           uint8_t *src, ptrdiff_t srcstride,  \ | ||||
|                                           const uint8_t *src, ptrdiff_t srcstride, \ | ||||
|                                           int h, int x, int y)                \ | ||||
| {                                                                             \ | ||||
|     int i;                                                                    \ | ||||
| @@ -492,7 +492,7 @@ PUT_PIXELS(4) | ||||
| #define VP8_EPEL_H(SIZE, TAPS)                                                \ | ||||
| static void put_vp8_epel ## SIZE ## _h ## TAPS ## _c(uint8_t *dst,            \ | ||||
|                                                      ptrdiff_t dststride,     \ | ||||
|                                                      uint8_t *src,            \ | ||||
|                                                      const uint8_t *src,      \ | ||||
|                                                      ptrdiff_t srcstride,     \ | ||||
|                                                      int h, int mx, int my)   \ | ||||
| {                                                                             \ | ||||
| @@ -510,7 +510,7 @@ static void put_vp8_epel ## SIZE ## _h ## TAPS ## _c(uint8_t *dst,            \ | ||||
| #define VP8_EPEL_V(SIZE, TAPS)                                                \ | ||||
| static void put_vp8_epel ## SIZE ## _v ## TAPS ## _c(uint8_t *dst,            \ | ||||
|                                                      ptrdiff_t dststride,     \ | ||||
|                                                      uint8_t *src,            \ | ||||
|                                                      const uint8_t *src,      \ | ||||
|                                                      ptrdiff_t srcstride,     \ | ||||
|                                                      int h, int mx, int my)   \ | ||||
| {                                                                             \ | ||||
| @@ -529,7 +529,7 @@ static void put_vp8_epel ## SIZE ## _v ## TAPS ## _c(uint8_t *dst,            \ | ||||
| static void                                                                   \ | ||||
| put_vp8_epel ## SIZE ## _h ## HTAPS ## v ## VTAPS ## _c(uint8_t *dst,         \ | ||||
|                                                         ptrdiff_t dststride,  \ | ||||
|                                                         uint8_t *src,         \ | ||||
|                                                         const uint8_t *src,   \ | ||||
|                                                         ptrdiff_t srcstride,  \ | ||||
|                                                         int h, int mx,        \ | ||||
|                                                         int my)               \ | ||||
| @@ -586,7 +586,7 @@ VP8_EPEL_HV(4,  6, 6) | ||||
|  | ||||
| #define VP8_BILINEAR(SIZE)                                                    \ | ||||
| static void put_vp8_bilinear ## SIZE ## _h_c(uint8_t *dst, ptrdiff_t dstride, \ | ||||
|                                              uint8_t *src, ptrdiff_t sstride, \ | ||||
|                                              const uint8_t *src, ptrdiff_t sstride, \ | ||||
|                                              int h, int mx, int my)           \ | ||||
| {                                                                             \ | ||||
|     int a = 8 - mx, b = mx;                                                   \ | ||||
| @@ -600,7 +600,7 @@ static void put_vp8_bilinear ## SIZE ## _h_c(uint8_t *dst, ptrdiff_t dstride, \ | ||||
| }                                                                             \ | ||||
|                                                                               \ | ||||
| static void put_vp8_bilinear ## SIZE ## _v_c(uint8_t *dst, ptrdiff_t dstride, \ | ||||
|                                              uint8_t *src, ptrdiff_t sstride, \ | ||||
|                                              const uint8_t *src, ptrdiff_t sstride, \ | ||||
|                                              int h, int mx, int my)           \ | ||||
| {                                                                             \ | ||||
|     int c = 8 - my, d = my;                                                   \ | ||||
| @@ -615,7 +615,7 @@ static void put_vp8_bilinear ## SIZE ## _v_c(uint8_t *dst, ptrdiff_t dstride, \ | ||||
|                                                                               \ | ||||
| static void put_vp8_bilinear ## SIZE ## _hv_c(uint8_t *dst,                   \ | ||||
|                                               ptrdiff_t dstride,              \ | ||||
|                                               uint8_t *src,                   \ | ||||
|                                               const uint8_t *src,             \ | ||||
|                                               ptrdiff_t sstride,              \ | ||||
|                                               int h, int mx, int my)          \ | ||||
| {                                                                             \ | ||||
|   | ||||
| @@ -31,7 +31,7 @@ | ||||
| #include <stdint.h> | ||||
|  | ||||
| typedef void (*vp8_mc_func)(uint8_t *dst /* align 8 */, ptrdiff_t dstStride, | ||||
|                             uint8_t *src /* align 1 */, ptrdiff_t srcStride, | ||||
|                             const uint8_t *src /* align 1 */, ptrdiff_t srcStride, | ||||
|                             int h, int x, int y); | ||||
|  | ||||
| typedef struct VP8DSPContext { | ||||
|   | ||||
| @@ -157,7 +157,7 @@ SECTION .text | ||||
| ; subpel MC functions: | ||||
| ; | ||||
| ; void ff_put_vp8_epel<size>_h<htap>v<vtap>_<opt>(uint8_t *dst, ptrdiff_t deststride, | ||||
| ;                                                 uint8_t *src, ptrdiff_t srcstride, | ||||
| ;                                                 const uint8_t *src, ptrdiff_t srcstride, | ||||
| ;                                                 int height,   int mx, int my); | ||||
| ;------------------------------------------------------------------------------- | ||||
|  | ||||
|   | ||||
| @@ -32,93 +32,93 @@ | ||||
|  * MC functions | ||||
|  */ | ||||
| void ff_put_vp8_epel4_h4_mmxext(uint8_t *dst, ptrdiff_t dststride, | ||||
|                                 uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 int height, int mx, int my); | ||||
| void ff_put_vp8_epel4_h6_mmxext(uint8_t *dst, ptrdiff_t dststride, | ||||
|                                 uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 int height, int mx, int my); | ||||
| void ff_put_vp8_epel4_v4_mmxext(uint8_t *dst, ptrdiff_t dststride, | ||||
|                                 uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 int height, int mx, int my); | ||||
| void ff_put_vp8_epel4_v6_mmxext(uint8_t *dst, ptrdiff_t dststride, | ||||
|                                 uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 int height, int mx, int my); | ||||
|  | ||||
| void ff_put_vp8_epel8_h4_sse2  (uint8_t *dst, ptrdiff_t dststride, | ||||
|                                 uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 int height, int mx, int my); | ||||
| void ff_put_vp8_epel8_h6_sse2  (uint8_t *dst, ptrdiff_t dststride, | ||||
|                                 uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 int height, int mx, int my); | ||||
| void ff_put_vp8_epel8_v4_sse2  (uint8_t *dst, ptrdiff_t dststride, | ||||
|                                 uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 int height, int mx, int my); | ||||
| void ff_put_vp8_epel8_v6_sse2  (uint8_t *dst, ptrdiff_t dststride, | ||||
|                                 uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 int height, int mx, int my); | ||||
|  | ||||
| void ff_put_vp8_epel4_h4_ssse3 (uint8_t *dst, ptrdiff_t dststride, | ||||
|                                 uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 int height, int mx, int my); | ||||
| void ff_put_vp8_epel4_h6_ssse3 (uint8_t *dst, ptrdiff_t dststride, | ||||
|                                 uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 int height, int mx, int my); | ||||
| void ff_put_vp8_epel4_v4_ssse3 (uint8_t *dst, ptrdiff_t dststride, | ||||
|                                 uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 int height, int mx, int my); | ||||
| void ff_put_vp8_epel4_v6_ssse3 (uint8_t *dst, ptrdiff_t dststride, | ||||
|                                 uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 int height, int mx, int my); | ||||
| void ff_put_vp8_epel8_h4_ssse3 (uint8_t *dst, ptrdiff_t dststride, | ||||
|                                 uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 int height, int mx, int my); | ||||
| void ff_put_vp8_epel8_h6_ssse3 (uint8_t *dst, ptrdiff_t dststride, | ||||
|                                 uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 int height, int mx, int my); | ||||
| void ff_put_vp8_epel8_v4_ssse3 (uint8_t *dst, ptrdiff_t dststride, | ||||
|                                 uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 int height, int mx, int my); | ||||
| void ff_put_vp8_epel8_v6_ssse3 (uint8_t *dst, ptrdiff_t dststride, | ||||
|                                 uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                 int height, int mx, int my); | ||||
|  | ||||
| void ff_put_vp8_bilinear4_h_mmxext(uint8_t *dst, ptrdiff_t dststride, | ||||
|                                    uint8_t *src, ptrdiff_t srcstride, | ||||
|                                    const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                    int height, int mx, int my); | ||||
| void ff_put_vp8_bilinear8_h_sse2  (uint8_t *dst, ptrdiff_t dststride, | ||||
|                                    uint8_t *src, ptrdiff_t srcstride, | ||||
|                                    const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                    int height, int mx, int my); | ||||
| void ff_put_vp8_bilinear4_h_ssse3 (uint8_t *dst, ptrdiff_t dststride, | ||||
|                                    uint8_t *src, ptrdiff_t srcstride, | ||||
|                                    const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                    int height, int mx, int my); | ||||
| void ff_put_vp8_bilinear8_h_ssse3 (uint8_t *dst, ptrdiff_t dststride, | ||||
|                                    uint8_t *src, ptrdiff_t srcstride, | ||||
|                                    const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                    int height, int mx, int my); | ||||
|  | ||||
| void ff_put_vp8_bilinear4_v_mmxext(uint8_t *dst, ptrdiff_t dststride, | ||||
|                                    uint8_t *src, ptrdiff_t srcstride, | ||||
|                                    const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                    int height, int mx, int my); | ||||
| void ff_put_vp8_bilinear8_v_sse2  (uint8_t *dst, ptrdiff_t dststride, | ||||
|                                    uint8_t *src, ptrdiff_t srcstride, | ||||
|                                    const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                    int height, int mx, int my); | ||||
| void ff_put_vp8_bilinear4_v_ssse3 (uint8_t *dst, ptrdiff_t dststride, | ||||
|                                    uint8_t *src, ptrdiff_t srcstride, | ||||
|                                    const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                    int height, int mx, int my); | ||||
| void ff_put_vp8_bilinear8_v_ssse3 (uint8_t *dst, ptrdiff_t dststride, | ||||
|                                    uint8_t *src, ptrdiff_t srcstride, | ||||
|                                    const uint8_t *src, ptrdiff_t srcstride, | ||||
|                                    int height, int mx, int my); | ||||
|  | ||||
|  | ||||
| void ff_put_vp8_pixels8_mmx (uint8_t *dst, ptrdiff_t dststride, | ||||
|                              uint8_t *src, ptrdiff_t srcstride, | ||||
|                              const uint8_t *src, ptrdiff_t srcstride, | ||||
|                              int height, int mx, int my); | ||||
| void ff_put_vp8_pixels16_sse(uint8_t *dst, ptrdiff_t dststride, | ||||
|                              uint8_t *src, ptrdiff_t srcstride, | ||||
|                              const uint8_t *src, ptrdiff_t srcstride, | ||||
|                              int height, int mx, int my); | ||||
|  | ||||
| #define TAP_W16(OPT, FILTERTYPE, TAPTYPE) \ | ||||
| static void ff_put_vp8_ ## FILTERTYPE ## 16_ ## TAPTYPE ## _ ## OPT( \ | ||||
|     uint8_t *dst,  ptrdiff_t dststride, uint8_t *src, \ | ||||
|     uint8_t *dst,  ptrdiff_t dststride, const uint8_t *src, \ | ||||
|     ptrdiff_t srcstride, int height, int mx, int my) \ | ||||
| { \ | ||||
|     ff_put_vp8_ ## FILTERTYPE ## 8_ ## TAPTYPE ## _ ## OPT( \ | ||||
| @@ -149,7 +149,7 @@ TAP_W16(ssse3, bilinear, v) | ||||
|  | ||||
| #define HVTAP(OPT, ALIGN, TAPNUMX, TAPNUMY, SIZE, MAXHEIGHT) \ | ||||
| static void ff_put_vp8_epel ## SIZE ## _h ## TAPNUMX ## v ## TAPNUMY ## _ ## OPT( \ | ||||
|     uint8_t *dst, ptrdiff_t dststride, uint8_t *src, \ | ||||
|     uint8_t *dst, ptrdiff_t dststride, const uint8_t *src, \ | ||||
|     ptrdiff_t srcstride, int height, int mx, int my) \ | ||||
| { \ | ||||
|     LOCAL_ALIGNED(ALIGN, uint8_t, tmp, [SIZE * (MAXHEIGHT + TAPNUMY - 1)]); \ | ||||
| @@ -186,7 +186,7 @@ HVTAP(ssse3, 16, 6, 6, 4, 8) | ||||
|  | ||||
| #define HVBILIN(OPT, ALIGN, SIZE, MAXHEIGHT) \ | ||||
| static void ff_put_vp8_bilinear ## SIZE ## _hv_ ## OPT( \ | ||||
|     uint8_t *dst, ptrdiff_t dststride, uint8_t *src, \ | ||||
|     uint8_t *dst, ptrdiff_t dststride, const uint8_t *src, \ | ||||
|     ptrdiff_t srcstride, int height, int mx, int my) \ | ||||
| { \ | ||||
|     LOCAL_ALIGNED(ALIGN, uint8_t, tmp, [SIZE * (MAXHEIGHT + 2)]); \ | ||||
|   | ||||
		Reference in New Issue
	
	Block a user