21#ifndef AVCODEC_MIPS_VP9DSP_MIPS_H
22#define AVCODEC_MIPS_VP9DSP_MIPS_H
27#define VP9_8TAP_MIPS_MSA_FUNC(SIZE, type, type_idx) \
28void ff_put_8tap_##type##_##SIZE##h_msa(uint8_t *dst, ptrdiff_t dststride, \
30 ptrdiff_t srcstride, \
31 int h, int mx, int my); \
33void ff_put_8tap_##type##_##SIZE##v_msa(uint8_t *dst, ptrdiff_t dststride, \
35 ptrdiff_t srcstride, \
36 int h, int mx, int my); \
38void ff_put_8tap_##type##_##SIZE##hv_msa(uint8_t *dst, ptrdiff_t dststride, \
40 ptrdiff_t srcstride, \
41 int h, int mx, int my); \
43void ff_avg_8tap_##type##_##SIZE##h_msa(uint8_t *dst, ptrdiff_t dststride, \
45 ptrdiff_t srcstride, \
46 int h, int mx, int my); \
48void ff_avg_8tap_##type##_##SIZE##v_msa(uint8_t *dst, ptrdiff_t dststride, \
50 ptrdiff_t srcstride, \
51 int h, int mx, int my); \
53void ff_avg_8tap_##type##_##SIZE##hv_msa(uint8_t *dst, ptrdiff_t dststride, \
55 ptrdiff_t srcstride, \
56 int h, int mx, int my);
58#define VP9_BILINEAR_MIPS_MSA_FUNC(SIZE) \
59void ff_put_bilin_##SIZE##h_msa(uint8_t *dst, ptrdiff_t dststride, \
60 const uint8_t *src, ptrdiff_t srcstride, \
61 int h, int mx, int my); \
63void ff_put_bilin_##SIZE##v_msa(uint8_t *dst, ptrdiff_t dststride, \
64 const uint8_t *src, ptrdiff_t srcstride, \
65 int h, int mx, int my); \
67void ff_put_bilin_##SIZE##hv_msa(uint8_t *dst, ptrdiff_t dststride, \
68 const uint8_t *src, ptrdiff_t srcstride, \
69 int h, int mx, int my); \
71void ff_avg_bilin_##SIZE##h_msa(uint8_t *dst, ptrdiff_t dststride, \
72 const uint8_t *src, ptrdiff_t srcstride, \
73 int h, int mx, int my); \
75void ff_avg_bilin_##SIZE##v_msa(uint8_t *dst, ptrdiff_t dststride, \
76 const uint8_t *src, ptrdiff_t srcstride, \
77 int h, int mx, int my); \
79void ff_avg_bilin_##SIZE##hv_msa(uint8_t *dst, ptrdiff_t dststride, \
80 const uint8_t *src, ptrdiff_t srcstride, \
81 int h, int mx, int my);
83#define VP9_COPY_AVG_MIPS_MSA_FUNC(SIZE) \
84void ff_copy##SIZE##_msa(uint8_t *dst, ptrdiff_t dststride, \
85 const uint8_t *src, ptrdiff_t srcstride, \
86 int h, int mx, int my); \
88void ff_avg##SIZE##_msa(uint8_t *dst, ptrdiff_t dststride, \
89 const uint8_t *src, ptrdiff_t srcstride, \
90 int h, int mx, int my);
122#undef VP9_8TAP_MIPS_MSA_FUNC
123#undef VP9_BILINEAR_MIPS_MSA_FUNC
124#undef VP9_COPY_AVG_MIPS_MSA_FUNC
159 int16_t *
block,
int eob);
161 int16_t *
block,
int eob);
163 int16_t *
block,
int eob);
165 int16_t *
block,
int eob);
167 int16_t *
block,
int eob);
169 int16_t *
block,
int eob);
171 int16_t *
block,
int eob);
173 int16_t *
block,
int eob);
175 int16_t *
block,
int eob);
177 int16_t *
block,
int eob);
179 int16_t *
block,
int eob);
181 int16_t *
block,
int eob);
183 int16_t *
block,
int eob);
185 int16_t *
block,
int eob);
208 const uint8_t *
left,
const uint8_t *top);
210 const uint8_t *
left,
const uint8_t *top);
216 const uint8_t *
left,
const uint8_t *top);
218 const uint8_t *
left,
const uint8_t *top);
220 const uint8_t *
left,
const uint8_t *top);
222 const uint8_t *
left,
const uint8_t *top);
224 const uint8_t *
left,
const uint8_t *top);
226 const uint8_t *
left,
const uint8_t *top);
228 const uint8_t *
left,
const uint8_t *top);
230 const uint8_t *
left,
const uint8_t *top);
240#define VP9_8TAP_MIPS_MMI_FUNC(SIZE, type, type_idx) \
241void ff_put_8tap_##type##_##SIZE##h_mmi(uint8_t *dst, ptrdiff_t dststride, \
242 const uint8_t *src, \
243 ptrdiff_t srcstride, \
244 int h, int mx, int my); \
246void ff_put_8tap_##type##_##SIZE##v_mmi(uint8_t *dst, ptrdiff_t dststride, \
247 const uint8_t *src, \
248 ptrdiff_t srcstride, \
249 int h, int mx, int my); \
251void ff_put_8tap_##type##_##SIZE##hv_mmi(uint8_t *dst, ptrdiff_t dststride, \
252 const uint8_t *src, \
253 ptrdiff_t srcstride, \
254 int h, int mx, int my); \
256void ff_avg_8tap_##type##_##SIZE##h_mmi(uint8_t *dst, ptrdiff_t dststride, \
257 const uint8_t *src, \
258 ptrdiff_t srcstride, \
259 int h, int mx, int my); \
261void ff_avg_8tap_##type##_##SIZE##v_mmi(uint8_t *dst, ptrdiff_t dststride, \
262 const uint8_t *src, \
263 ptrdiff_t srcstride, \
264 int h, int mx, int my); \
266void ff_avg_8tap_##type##_##SIZE##hv_mmi(uint8_t *dst, ptrdiff_t dststride, \
267 const uint8_t *src, \
268 ptrdiff_t srcstride, \
269 int h, int mx, int my);
288#undef VP9_8TAP_MIPS_MMI_FUNC
uint8_t ptrdiff_t const uint8_t ptrdiff_t int intptr_t intptr_t int int16_t * dst
static int BS_FUNC left(const BSCTX *bc)
Return the number of the bits left in a buffer.
#define i(width, name, range_min, range_max)
static float smooth(DeshakeOpenCLContext *deshake_ctx, float *gauss_kernel, int length, float max_val, AVFifo *values)
void ff_dc_left_8x8_msa(uint8_t *dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
void ff_loop_filter_h_4_8_msa(uint8_t *dst, ptrdiff_t stride, int32_t e, int32_t i, int32_t h)
void ff_dc_left_4x4_msa(uint8_t *dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
void ff_loop_filter_v_8_8_msa(uint8_t *dst, ptrdiff_t stride, int32_t e, int32_t i, int32_t h)
void ff_tm_8x8_msa(uint8_t *dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
void ff_dc_top_32x32_msa(uint8_t *dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
void ff_loop_filter_v_48_16_msa(uint8_t *dst, ptrdiff_t stride, int32_t e, int32_t i, int32_t h)
void ff_iadst_idct_4x4_add_msa(uint8_t *dst, ptrdiff_t stride, int16_t *block, int eob)
void ff_vert_32x32_msa(uint8_t *dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
void ff_iadst_idct_16x16_add_msa(uint8_t *dst, ptrdiff_t stride, int16_t *block, int eob)
void ff_tm_32x32_msa(uint8_t *dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
void ff_dc_4x4_msa(uint8_t *dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
void ff_iadst_iadst_4x4_add_msa(uint8_t *dst, ptrdiff_t stride, int16_t *block, int eob)
void ff_loop_filter_h_88_16_msa(uint8_t *dst, ptrdiff_t stride, int32_t e, int32_t i, int32_t h)
#define VP9_BILINEAR_MIPS_MSA_FUNC(SIZE)
void ff_iadst_idct_8x8_add_msa(uint8_t *dst, ptrdiff_t stride, int16_t *block, int eob)
void ff_iadst_iadst_8x8_add_msa(uint8_t *dst, ptrdiff_t stride, int16_t *block, int eob)
void ff_dc_129_16x16_msa(uint8_t *dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
void ff_dc_128_32x32_msa(uint8_t *dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
void ff_loop_filter_v_44_16_msa(uint8_t *dst, ptrdiff_t stride, int32_t e, int32_t i, int32_t h)
void ff_dc_129_32x32_msa(uint8_t *dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
void ff_dc_8x8_msa(uint8_t *dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
void ff_idct_iadst_16x16_add_msa(uint8_t *pu8Dest, ptrdiff_t stride, int16_t *block, int eob)
void ff_loop_filter_v_16_16_msa(uint8_t *dst, ptrdiff_t stride, int32_t e, int32_t i, int32_t h)
void ff_dc_left_16x16_msa(uint8_t *dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
void ff_dc_top_8x8_msa(uint8_t *dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
void ff_dc_127_32x32_msa(uint8_t *dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
#define VP9_8TAP_MIPS_MSA_FUNC(SIZE, type, type_idx)
#define VP9_COPY_AVG_MIPS_MSA_FUNC(SIZE)
void ff_loop_filter_h_16_16_msa(uint8_t *dst, ptrdiff_t stride, int32_t e, int32_t i, int32_t h)
void ff_loop_filter_h_84_16_msa(uint8_t *dst, ptrdiff_t stride, int32_t e, int32_t i, int32_t h)
void ff_iadst_iadst_16x16_add_msa(uint8_t *dst, ptrdiff_t stride, int16_t *block, int eob)
void ff_loop_filter_h_8_8_msa(uint8_t *dst, ptrdiff_t stride, int32_t e, int32_t i, int32_t h)
void ff_loop_filter_v_4_8_msa(uint8_t *dst, ptrdiff_t stride, int32_t e, int32_t i, int32_t h)
void ff_loop_filter_h_44_16_msa(uint8_t *dst, ptrdiff_t stride, int32_t e, int32_t i, int32_t h)
#define VP9_8TAP_MIPS_MMI_FUNC(SIZE, type, type_idx)
void ff_iwht_iwht_4x4_add_msa(uint8_t *dst, ptrdiff_t stride, int16_t *block, int eob)
void ff_idct_iadst_8x8_add_msa(uint8_t *pu8Dest, ptrdiff_t stride, int16_t *block, int eob)
void ff_hor_16x16_msa(uint8_t *dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
void ff_dc_128_16x16_msa(uint8_t *dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
void ff_loop_filter_v_84_16_msa(uint8_t *dst, ptrdiff_t stride, int32_t e, int32_t i, int32_t h)
void ff_hor_32x32_msa(uint8_t *dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
void ff_dc_left_32x32_msa(uint8_t *dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
void ff_tm_16x16_msa(uint8_t *dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
void ff_idct_idct_8x8_add_msa(uint8_t *dst, ptrdiff_t stride, int16_t *block, int eob)
void ff_loop_filter_v_16_8_msa(uint8_t *dst, ptrdiff_t stride, int32_t e, int32_t i, int32_t h)
void ff_idct_idct_32x32_add_msa(uint8_t *dst, ptrdiff_t stride, int16_t *block, int eob)
void ff_idct_idct_16x16_add_msa(uint8_t *dst, ptrdiff_t stride, int16_t *block, int eob)
void ff_dc_32x32_msa(uint8_t *dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
void ff_idct_iadst_4x4_add_msa(uint8_t *pu8Dest, ptrdiff_t stride, int16_t *block, int eob)
void ff_loop_filter_h_16_8_msa(uint8_t *dst, ptrdiff_t stride, int32_t e, int32_t i, int32_t h)
void ff_dc_top_4x4_msa(uint8_t *dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
void ff_idct_idct_4x4_add_msa(uint8_t *dst, ptrdiff_t stride, int16_t *block, int eob)
void ff_vert_16x16_msa(uint8_t *dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
void ff_dc_top_16x16_msa(uint8_t *dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
void ff_tm_4x4_msa(uint8_t *dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
void ff_loop_filter_v_88_16_msa(uint8_t *dst, ptrdiff_t stride, int32_t e, int32_t i, int32_t h)
void ff_loop_filter_h_48_16_msa(uint8_t *dst, ptrdiff_t stride, int32_t e, int32_t i, int32_t h)
void ff_dc_127_16x16_msa(uint8_t *dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
void ff_dc_16x16_msa(uint8_t *dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)