2 * Copyright (c) 2015 Parag Salasakar (Parag.Salasakar@imgtec.com)
3 Zhou Xiaoyong <zhouxiaoyong@loongson.cn>
5 * This file is part of FFmpeg.
7 * FFmpeg is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Lesser General Public
9 * License as published by the Free Software Foundation; either
10 * version 2.1 of the License, or (at your option) any later version.
12 * FFmpeg is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Lesser General Public License for more details.
17 * You should have received a copy of the GNU Lesser General Public
18 * License along with FFmpeg; if not, write to the Free Software
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
22 #ifndef AVCODEC_MIPS_H264DSP_MIPS_H
23 #define AVCODEC_MIPS_H264DSP_MIPS_H
25 #include "libavcodec/h264dec.h"
26 #include "constants.h"
28 void ff_h264_h_lpf_luma_inter_msa(uint8_t *src, int stride,
29 int alpha, int beta, int8_t *tc0);
30 void ff_h264_v_lpf_luma_inter_msa(uint8_t *src, int stride,
31 int alpha, int beta, int8_t *tc0);
32 void ff_h264_h_lpf_chroma_inter_msa(uint8_t *src, int stride,
33 int alpha, int beta, int8_t *tc0);
34 void ff_h264_v_lpf_chroma_inter_msa(uint8_t *src, int stride,
35 int alpha, int beta, int8_t *tc0);
36 void ff_h264_h_loop_filter_chroma422_msa(uint8_t *src, int32_t stride,
37 int32_t alpha, int32_t beta,
39 void ff_h264_h_loop_filter_chroma422_mbaff_msa(uint8_t *src, int32_t stride,
40 int32_t alpha, int32_t beta,
42 void ff_h264_h_loop_filter_luma_mbaff_msa(uint8_t *src, int32_t stride,
43 int32_t alpha, int32_t beta,
46 void ff_h264_idct_add_msa(uint8_t *dst, int16_t *src, int32_t dst_stride);
47 void ff_h264_idct4x4_addblk_dc_msa(uint8_t *dst, int16_t *src,
49 void ff_h264_deq_idct_luma_dc_msa(int16_t *dst, int16_t *src,
51 void ff_h264_idct_add16_msa(uint8_t *dst, const int32_t *blk_offset,
52 int16_t *block, int32_t stride,
53 const uint8_t nnzc[15 * 8]);
54 void ff_h264_idct_add16_intra_msa(uint8_t *dst, const int32_t *blk_offset,
55 int16_t *block, int32_t dst_stride,
56 const uint8_t nnzc[15 * 8]);
57 void ff_h264_idct_add8_msa(uint8_t **dst, const int32_t *blk_offset,
58 int16_t *block, int32_t dst_stride,
59 const uint8_t nnzc[15 * 8]);
60 void ff_h264_idct_add8_422_msa(uint8_t **dst, const int32_t *blk_offset,
61 int16_t *block, int32_t dst_stride,
62 const uint8_t nnzc[15 * 8]);
63 void ff_h264_idct8_addblk_msa(uint8_t *dst, int16_t *src, int32_t dst_stride);
64 void ff_h264_idct8_dc_addblk_msa(uint8_t *dst, int16_t *src,
66 void ff_h264_idct8_add4_msa(uint8_t *dst, const int *blk_offset,
67 int16_t *blk, int dst_stride,
68 const uint8_t nnzc[15 * 8]);
70 void ff_h264_h_lpf_luma_intra_msa(uint8_t *src, int stride,
72 void ff_h264_v_lpf_luma_intra_msa(uint8_t *src, int stride,
74 void ff_h264_h_lpf_chroma_intra_msa(uint8_t *src, int stride,
76 void ff_h264_v_lpf_chroma_intra_msa(uint8_t *src, int stride,
78 void ff_h264_h_loop_filter_luma_mbaff_intra_msa(uint8_t *src, int stride,
81 void ff_biweight_h264_pixels16_8_msa(uint8_t *dst, uint8_t *src,
82 ptrdiff_t stride, int height, int log2_denom,
83 int weightd, int weights, int offset);
84 void ff_biweight_h264_pixels8_8_msa(uint8_t *dst, uint8_t *src,
85 ptrdiff_t stride, int height, int log2_denom,
86 int weightd, int weights, int offset);
87 void ff_biweight_h264_pixels4_8_msa(uint8_t *dst, uint8_t *src,
88 ptrdiff_t stride, int height, int log2_denom,
89 int weightd, int weights, int offset);
90 void ff_weight_h264_pixels16_8_msa(uint8_t *src, ptrdiff_t stride, int height,
91 int log2_denom, int weight, int offset);
92 void ff_weight_h264_pixels8_8_msa(uint8_t *src, ptrdiff_t stride, int height,
93 int log2_denom, int weight, int offset);
94 void ff_weight_h264_pixels4_8_msa(uint8_t *src, ptrdiff_t stride, int height,
95 int log2_denom, int weight, int offset);
97 void ff_put_h264_qpel16_mc00_msa(uint8_t *dst, const uint8_t *src,
98 ptrdiff_t dst_stride);
99 void ff_put_h264_qpel16_mc10_msa(uint8_t *dst, const uint8_t *src,
100 ptrdiff_t dst_stride);
101 void ff_put_h264_qpel16_mc20_msa(uint8_t *dst, const uint8_t *src,
102 ptrdiff_t dst_stride);
103 void ff_put_h264_qpel16_mc30_msa(uint8_t *dst, const uint8_t *src,
104 ptrdiff_t dst_stride);
105 void ff_put_h264_qpel16_mc01_msa(uint8_t *dst, const uint8_t *src,
106 ptrdiff_t dst_stride);
107 void ff_put_h264_qpel16_mc11_msa(uint8_t *dst, const uint8_t *src,
108 ptrdiff_t dst_stride);
109 void ff_put_h264_qpel16_mc21_msa(uint8_t *dst, const uint8_t *src,
110 ptrdiff_t dst_stride);
111 void ff_put_h264_qpel16_mc31_msa(uint8_t *dst, const uint8_t *src,
112 ptrdiff_t dst_stride);
113 void ff_put_h264_qpel16_mc02_msa(uint8_t *dst, const uint8_t *src,
114 ptrdiff_t dst_stride);
115 void ff_put_h264_qpel16_mc12_msa(uint8_t *dst, const uint8_t *src,
116 ptrdiff_t dst_stride);
117 void ff_put_h264_qpel16_mc22_msa(uint8_t *dst, const uint8_t *src,
118 ptrdiff_t dst_stride);
119 void ff_put_h264_qpel16_mc32_msa(uint8_t *dst, const uint8_t *src,
120 ptrdiff_t dst_stride);
121 void ff_put_h264_qpel16_mc03_msa(uint8_t *dst, const uint8_t *src,
122 ptrdiff_t dst_stride);
123 void ff_put_h264_qpel16_mc13_msa(uint8_t *dst, const uint8_t *src,
124 ptrdiff_t dst_stride);
125 void ff_put_h264_qpel16_mc23_msa(uint8_t *dst, const uint8_t *src,
126 ptrdiff_t dst_stride);
127 void ff_put_h264_qpel16_mc33_msa(uint8_t *dst, const uint8_t *src,
128 ptrdiff_t dst_stride);
130 void ff_put_h264_qpel8_mc00_msa(uint8_t *dst, const uint8_t *src,
131 ptrdiff_t dst_stride);
132 void ff_put_h264_qpel8_mc10_msa(uint8_t *dst, const uint8_t *src,
133 ptrdiff_t dst_stride);
134 void ff_put_h264_qpel8_mc20_msa(uint8_t *dst, const uint8_t *src,
135 ptrdiff_t dst_stride);
136 void ff_put_h264_qpel8_mc30_msa(uint8_t *dst, const uint8_t *src,
137 ptrdiff_t dst_stride);
138 void ff_put_h264_qpel8_mc01_msa(uint8_t *dst, const uint8_t *src,
139 ptrdiff_t dst_stride);
140 void ff_put_h264_qpel8_mc11_msa(uint8_t *dst, const uint8_t *src,
141 ptrdiff_t dst_stride);
142 void ff_put_h264_qpel8_mc21_msa(uint8_t *dst, const uint8_t *src,
143 ptrdiff_t dst_stride);
144 void ff_put_h264_qpel8_mc31_msa(uint8_t *dst, const uint8_t *src,
145 ptrdiff_t dst_stride);
146 void ff_put_h264_qpel8_mc02_msa(uint8_t *dst, const uint8_t *src,
147 ptrdiff_t dst_stride);
148 void ff_put_h264_qpel8_mc12_msa(uint8_t *dst, const uint8_t *src,
149 ptrdiff_t dst_stride);
150 void ff_put_h264_qpel8_mc22_msa(uint8_t *dst, const uint8_t *src,
151 ptrdiff_t dst_stride);
152 void ff_put_h264_qpel8_mc32_msa(uint8_t *dst, const uint8_t *src,
153 ptrdiff_t dst_stride);
154 void ff_put_h264_qpel8_mc03_msa(uint8_t *dst, const uint8_t *src,
155 ptrdiff_t dst_stride);
156 void ff_put_h264_qpel8_mc13_msa(uint8_t *dst, const uint8_t *src,
157 ptrdiff_t dst_stride);
158 void ff_put_h264_qpel8_mc23_msa(uint8_t *dst, const uint8_t *src,
159 ptrdiff_t dst_stride);
160 void ff_put_h264_qpel8_mc33_msa(uint8_t *dst, const uint8_t *src,
161 ptrdiff_t dst_stride);
163 void ff_put_h264_qpel4_mc00_msa(uint8_t *dst, const uint8_t *src,
164 ptrdiff_t dst_stride);
165 void ff_put_h264_qpel4_mc10_msa(uint8_t *dst, const uint8_t *src,
166 ptrdiff_t dst_stride);
167 void ff_put_h264_qpel4_mc20_msa(uint8_t *dst, const uint8_t *src,
168 ptrdiff_t dst_stride);
169 void ff_put_h264_qpel4_mc30_msa(uint8_t *dst, const uint8_t *src,
170 ptrdiff_t dst_stride);
171 void ff_put_h264_qpel4_mc01_msa(uint8_t *dst, const uint8_t *src,
172 ptrdiff_t dst_stride);
173 void ff_put_h264_qpel4_mc11_msa(uint8_t *dst, const uint8_t *src,
174 ptrdiff_t dst_stride);
175 void ff_put_h264_qpel4_mc21_msa(uint8_t *dst, const uint8_t *src,
176 ptrdiff_t dst_stride);
177 void ff_put_h264_qpel4_mc31_msa(uint8_t *dst, const uint8_t *src,
178 ptrdiff_t dst_stride);
179 void ff_put_h264_qpel4_mc02_msa(uint8_t *dst, const uint8_t *src,
180 ptrdiff_t dst_stride);
181 void ff_put_h264_qpel4_mc12_msa(uint8_t *dst, const uint8_t *src,
182 ptrdiff_t dst_stride);
183 void ff_put_h264_qpel4_mc22_msa(uint8_t *dst, const uint8_t *src,
184 ptrdiff_t dst_stride);
185 void ff_put_h264_qpel4_mc32_msa(uint8_t *dst, const uint8_t *src,
186 ptrdiff_t dst_stride);
187 void ff_put_h264_qpel4_mc03_msa(uint8_t *dst, const uint8_t *src,
188 ptrdiff_t dst_stride);
189 void ff_put_h264_qpel4_mc13_msa(uint8_t *dst, const uint8_t *src,
190 ptrdiff_t dst_stride);
191 void ff_put_h264_qpel4_mc23_msa(uint8_t *dst, const uint8_t *src,
192 ptrdiff_t dst_stride);
193 void ff_put_h264_qpel4_mc33_msa(uint8_t *dst, const uint8_t *src,
194 ptrdiff_t dst_stride);
196 void ff_avg_h264_qpel16_mc00_msa(uint8_t *dst, const uint8_t *src,
197 ptrdiff_t dst_stride);
198 void ff_avg_h264_qpel16_mc10_msa(uint8_t *dst, const uint8_t *src,
199 ptrdiff_t dst_stride);
200 void ff_avg_h264_qpel16_mc20_msa(uint8_t *dst, const uint8_t *src,
201 ptrdiff_t dst_stride);
202 void ff_avg_h264_qpel16_mc30_msa(uint8_t *dst, const uint8_t *src,
203 ptrdiff_t dst_stride);
204 void ff_avg_h264_qpel16_mc01_msa(uint8_t *dst, const uint8_t *src,
205 ptrdiff_t dst_stride);
206 void ff_avg_h264_qpel16_mc11_msa(uint8_t *dst, const uint8_t *src,
207 ptrdiff_t dst_stride);
208 void ff_avg_h264_qpel16_mc21_msa(uint8_t *dst, const uint8_t *src,
209 ptrdiff_t dst_stride);
210 void ff_avg_h264_qpel16_mc31_msa(uint8_t *dst, const uint8_t *src,
211 ptrdiff_t dst_stride);
212 void ff_avg_h264_qpel16_mc02_msa(uint8_t *dst, const uint8_t *src,
213 ptrdiff_t dst_stride);
214 void ff_avg_h264_qpel16_mc12_msa(uint8_t *dst, const uint8_t *src,
215 ptrdiff_t dst_stride);
216 void ff_avg_h264_qpel16_mc22_msa(uint8_t *dst, const uint8_t *src,
217 ptrdiff_t dst_stride);
218 void ff_avg_h264_qpel16_mc32_msa(uint8_t *dst, const uint8_t *src,
219 ptrdiff_t dst_stride);
220 void ff_avg_h264_qpel16_mc03_msa(uint8_t *dst, const uint8_t *src,
221 ptrdiff_t dst_stride);
222 void ff_avg_h264_qpel16_mc13_msa(uint8_t *dst, const uint8_t *src,
223 ptrdiff_t dst_stride);
224 void ff_avg_h264_qpel16_mc23_msa(uint8_t *dst, const uint8_t *src,
225 ptrdiff_t dst_stride);
226 void ff_avg_h264_qpel16_mc33_msa(uint8_t *dst, const uint8_t *src,
227 ptrdiff_t dst_stride);
229 void ff_avg_h264_qpel8_mc00_msa(uint8_t *dst, const uint8_t *src,
230 ptrdiff_t dst_stride);
231 void ff_avg_h264_qpel8_mc10_msa(uint8_t *dst, const uint8_t *src,
232 ptrdiff_t dst_stride);
233 void ff_avg_h264_qpel8_mc20_msa(uint8_t *dst, const uint8_t *src,
234 ptrdiff_t dst_stride);
235 void ff_avg_h264_qpel8_mc30_msa(uint8_t *dst, const uint8_t *src,
236 ptrdiff_t dst_stride);
237 void ff_avg_h264_qpel8_mc01_msa(uint8_t *dst, const uint8_t *src,
238 ptrdiff_t dst_stride);
239 void ff_avg_h264_qpel8_mc11_msa(uint8_t *dst, const uint8_t *src,
240 ptrdiff_t dst_stride);
241 void ff_avg_h264_qpel8_mc21_msa(uint8_t *dst, const uint8_t *src,
242 ptrdiff_t dst_stride);
243 void ff_avg_h264_qpel8_mc31_msa(uint8_t *dst, const uint8_t *src,
244 ptrdiff_t dst_stride);
245 void ff_avg_h264_qpel8_mc02_msa(uint8_t *dst, const uint8_t *src,
246 ptrdiff_t dst_stride);
247 void ff_avg_h264_qpel8_mc12_msa(uint8_t *dst, const uint8_t *src,
248 ptrdiff_t dst_stride);
249 void ff_avg_h264_qpel8_mc22_msa(uint8_t *dst, const uint8_t *src,
250 ptrdiff_t dst_stride);
251 void ff_avg_h264_qpel8_mc32_msa(uint8_t *dst, const uint8_t *src,
252 ptrdiff_t dst_stride);
253 void ff_avg_h264_qpel8_mc03_msa(uint8_t *dst, const uint8_t *src,
254 ptrdiff_t dst_stride);
255 void ff_avg_h264_qpel8_mc13_msa(uint8_t *dst, const uint8_t *src,
256 ptrdiff_t dst_stride);
257 void ff_avg_h264_qpel8_mc23_msa(uint8_t *dst, const uint8_t *src,
258 ptrdiff_t dst_stride);
259 void ff_avg_h264_qpel8_mc33_msa(uint8_t *dst, const uint8_t *src,
260 ptrdiff_t dst_stride);
262 void ff_avg_h264_qpel4_mc00_msa(uint8_t *dst, const uint8_t *src,
263 ptrdiff_t dst_stride);
264 void ff_avg_h264_qpel4_mc10_msa(uint8_t *dst, const uint8_t *src,
265 ptrdiff_t dst_stride);
266 void ff_avg_h264_qpel4_mc20_msa(uint8_t *dst, const uint8_t *src,
267 ptrdiff_t dst_stride);
268 void ff_avg_h264_qpel4_mc30_msa(uint8_t *dst, const uint8_t *src,
269 ptrdiff_t dst_stride);
270 void ff_avg_h264_qpel4_mc01_msa(uint8_t *dst, const uint8_t *src,
271 ptrdiff_t dst_stride);
272 void ff_avg_h264_qpel4_mc11_msa(uint8_t *dst, const uint8_t *src,
273 ptrdiff_t dst_stride);
274 void ff_avg_h264_qpel4_mc21_msa(uint8_t *dst, const uint8_t *src,
275 ptrdiff_t dst_stride);
276 void ff_avg_h264_qpel4_mc31_msa(uint8_t *dst, const uint8_t *src,
277 ptrdiff_t dst_stride);
278 void ff_avg_h264_qpel4_mc02_msa(uint8_t *dst, const uint8_t *src,
279 ptrdiff_t dst_stride);
280 void ff_avg_h264_qpel4_mc12_msa(uint8_t *dst, const uint8_t *src,
281 ptrdiff_t dst_stride);
282 void ff_avg_h264_qpel4_mc22_msa(uint8_t *dst, const uint8_t *src,
283 ptrdiff_t dst_stride);
284 void ff_avg_h264_qpel4_mc32_msa(uint8_t *dst, const uint8_t *src,
285 ptrdiff_t dst_stride);
286 void ff_avg_h264_qpel4_mc03_msa(uint8_t *dst, const uint8_t *src,
287 ptrdiff_t dst_stride);
288 void ff_avg_h264_qpel4_mc13_msa(uint8_t *dst, const uint8_t *src,
289 ptrdiff_t dst_stride);
290 void ff_avg_h264_qpel4_mc23_msa(uint8_t *dst, const uint8_t *src,
291 ptrdiff_t dst_stride);
292 void ff_avg_h264_qpel4_mc33_msa(uint8_t *dst, const uint8_t *src,
293 ptrdiff_t dst_stride);
295 void ff_h264_intra_predict_plane_8x8_msa(uint8_t *src, ptrdiff_t stride);
296 void ff_h264_intra_predict_dc_4blk_8x8_msa(uint8_t *src, ptrdiff_t stride);
297 void ff_h264_intra_predict_hor_dc_8x8_msa(uint8_t *src, ptrdiff_t stride);
298 void ff_h264_intra_predict_vert_dc_8x8_msa(uint8_t *src, ptrdiff_t stride);
299 void ff_h264_intra_predict_mad_cow_dc_l0t_8x8_msa(uint8_t *src,
301 void ff_h264_intra_predict_mad_cow_dc_0lt_8x8_msa(uint8_t *src,
303 void ff_h264_intra_predict_mad_cow_dc_l00_8x8_msa(uint8_t *src,
305 void ff_h264_intra_predict_mad_cow_dc_0l0_8x8_msa(uint8_t *src,
307 void ff_h264_intra_predict_plane_16x16_msa(uint8_t *src, ptrdiff_t stride);
308 void ff_h264_intra_pred_vert_8x8_msa(uint8_t *src, ptrdiff_t stride);
309 void ff_h264_intra_pred_horiz_8x8_msa(uint8_t *src, ptrdiff_t stride);
310 void ff_h264_intra_pred_dc_16x16_msa(uint8_t *src, ptrdiff_t stride);
311 void ff_h264_intra_pred_vert_16x16_msa(uint8_t *src, ptrdiff_t stride);
312 void ff_h264_intra_pred_horiz_16x16_msa(uint8_t *src, ptrdiff_t stride);
313 void ff_h264_intra_pred_dc_left_16x16_msa(uint8_t *src, ptrdiff_t stride);
314 void ff_h264_intra_pred_dc_top_16x16_msa(uint8_t *src, ptrdiff_t stride);
315 void ff_h264_intra_pred_dc_128_8x8_msa(uint8_t *src, ptrdiff_t stride);
316 void ff_h264_intra_pred_dc_128_16x16_msa(uint8_t *src, ptrdiff_t stride);
317 void ff_vp8_pred8x8_127_dc_8_msa(uint8_t *src, ptrdiff_t stride);
318 void ff_vp8_pred8x8_129_dc_8_msa(uint8_t *src, ptrdiff_t stride);
319 void ff_vp8_pred16x16_127_dc_8_msa(uint8_t *src, ptrdiff_t stride);
320 void ff_vp8_pred16x16_129_dc_8_msa(uint8_t *src, ptrdiff_t stride);
322 void ff_h264_add_pixels4_8_mmi(uint8_t *_dst, int16_t *_src, int stride);
323 void ff_h264_idct_add_8_mmi(uint8_t *dst, int16_t *block, int stride);
324 void ff_h264_idct8_add_8_mmi(uint8_t *dst, int16_t *block, int stride);
325 void ff_h264_idct_dc_add_8_mmi(uint8_t *dst, int16_t *block, int stride);
326 void ff_h264_idct8_dc_add_8_mmi(uint8_t *dst, int16_t *block, int stride);
327 void ff_h264_idct_add16_8_mmi(uint8_t *dst, const int *block_offset,
328 int16_t *block, int stride, const uint8_t nnzc[15*8]);
329 void ff_h264_idct_add16intra_8_mmi(uint8_t *dst, const int *block_offset,
330 int16_t *block, int stride, const uint8_t nnzc[15*8]);
331 void ff_h264_idct8_add4_8_mmi(uint8_t *dst, const int *block_offset,
332 int16_t *block, int stride, const uint8_t nnzc[15*8]);
333 void ff_h264_idct_add8_8_mmi(uint8_t **dest, const int *block_offset,
334 int16_t *block, int stride, const uint8_t nnzc[15*8]);
335 void ff_h264_idct_add8_422_8_mmi(uint8_t **dest, const int *block_offset,
336 int16_t *block, int stride, const uint8_t nnzc[15*8]);
337 void ff_h264_luma_dc_dequant_idct_8_mmi(int16_t *output, int16_t *input,
339 void ff_h264_chroma_dc_dequant_idct_8_mmi(int16_t *block, int qmul);
340 void ff_h264_chroma422_dc_dequant_idct_8_mmi(int16_t *block, int qmul);
342 void ff_h264_weight_pixels16_8_mmi(uint8_t *block, ptrdiff_t stride, int height,
343 int log2_denom, int weight, int offset);
344 void ff_h264_biweight_pixels16_8_mmi(uint8_t *dst, uint8_t *src,
345 ptrdiff_t stride, int height, int log2_denom, int weightd, int weights,
347 void ff_h264_weight_pixels8_8_mmi(uint8_t *block, ptrdiff_t stride, int height,
348 int log2_denom, int weight, int offset);
349 void ff_h264_biweight_pixels8_8_mmi(uint8_t *dst, uint8_t *src,
350 ptrdiff_t stride, int height, int log2_denom, int weightd, int weights,
352 void ff_h264_weight_pixels4_8_mmi(uint8_t *block, ptrdiff_t stride, int height,
353 int log2_denom, int weight, int offset);
354 void ff_h264_biweight_pixels4_8_mmi(uint8_t *dst, uint8_t *src,
355 ptrdiff_t stride, int height, int log2_denom, int weightd, int weights,
358 void ff_deblock_v_chroma_8_mmi(uint8_t *pix, ptrdiff_t stride, int alpha, int beta,
360 void ff_deblock_v_chroma_intra_8_mmi(uint8_t *pix, int stride, int alpha,
362 void ff_deblock_h_chroma_8_mmi(uint8_t *pix, int stride, int alpha, int beta,
364 void ff_deblock_h_chroma_intra_8_mmi(uint8_t *pix, int stride, int alpha,
366 void ff_deblock_v_luma_8_mmi(uint8_t *pix, int stride, int alpha, int beta,
368 void ff_deblock_v_luma_intra_8_mmi(uint8_t *pix, int stride, int alpha,
370 void ff_deblock_h_luma_8_mmi(uint8_t *pix, int stride, int alpha, int beta,
372 void ff_deblock_h_luma_intra_8_mmi(uint8_t *pix, int stride, int alpha,
374 void ff_deblock_v8_luma_8_mmi(uint8_t *pix, int stride, int alpha, int beta,
376 void ff_deblock_v8_luma_intra_8_mmi(uint8_t *pix, int stride, int alpha,
379 void ff_put_h264_qpel16_mc00_mmi(uint8_t *dst, const uint8_t *src,
380 ptrdiff_t dst_stride);
381 void ff_put_h264_qpel16_mc10_mmi(uint8_t *dst, const uint8_t *src,
382 ptrdiff_t dst_stride);
383 void ff_put_h264_qpel16_mc20_mmi(uint8_t *dst, const uint8_t *src,
384 ptrdiff_t dst_stride);
385 void ff_put_h264_qpel16_mc30_mmi(uint8_t *dst, const uint8_t *src,
386 ptrdiff_t dst_stride);
387 void ff_put_h264_qpel16_mc01_mmi(uint8_t *dst, const uint8_t *src,
388 ptrdiff_t dst_stride);
389 void ff_put_h264_qpel16_mc11_mmi(uint8_t *dst, const uint8_t *src,
390 ptrdiff_t dst_stride);
391 void ff_put_h264_qpel16_mc21_mmi(uint8_t *dst, const uint8_t *src,
392 ptrdiff_t dst_stride);
393 void ff_put_h264_qpel16_mc31_mmi(uint8_t *dst, const uint8_t *src,
394 ptrdiff_t dst_stride);
395 void ff_put_h264_qpel16_mc02_mmi(uint8_t *dst, const uint8_t *src,
396 ptrdiff_t dst_stride);
397 void ff_put_h264_qpel16_mc12_mmi(uint8_t *dst, const uint8_t *src,
398 ptrdiff_t dst_stride);
399 void ff_put_h264_qpel16_mc22_mmi(uint8_t *dst, const uint8_t *src,
400 ptrdiff_t dst_stride);
401 void ff_put_h264_qpel16_mc32_mmi(uint8_t *dst, const uint8_t *src,
402 ptrdiff_t dst_stride);
403 void ff_put_h264_qpel16_mc03_mmi(uint8_t *dst, const uint8_t *src,
404 ptrdiff_t dst_stride);
405 void ff_put_h264_qpel16_mc13_mmi(uint8_t *dst, const uint8_t *src,
406 ptrdiff_t dst_stride);
407 void ff_put_h264_qpel16_mc23_mmi(uint8_t *dst, const uint8_t *src,
408 ptrdiff_t dst_stride);
409 void ff_put_h264_qpel16_mc33_mmi(uint8_t *dst, const uint8_t *src,
410 ptrdiff_t dst_stride);
412 void ff_put_h264_qpel8_mc00_mmi(uint8_t *dst, const uint8_t *src,
413 ptrdiff_t dst_stride);
414 void ff_put_h264_qpel8_mc10_mmi(uint8_t *dst, const uint8_t *src,
415 ptrdiff_t dst_stride);
416 void ff_put_h264_qpel8_mc20_mmi(uint8_t *dst, const uint8_t *src,
417 ptrdiff_t dst_stride);
418 void ff_put_h264_qpel8_mc30_mmi(uint8_t *dst, const uint8_t *src,
419 ptrdiff_t dst_stride);
420 void ff_put_h264_qpel8_mc01_mmi(uint8_t *dst, const uint8_t *src,
421 ptrdiff_t dst_stride);
422 void ff_put_h264_qpel8_mc11_mmi(uint8_t *dst, const uint8_t *src,
423 ptrdiff_t dst_stride);
424 void ff_put_h264_qpel8_mc21_mmi(uint8_t *dst, const uint8_t *src,
425 ptrdiff_t dst_stride);
426 void ff_put_h264_qpel8_mc31_mmi(uint8_t *dst, const uint8_t *src,
427 ptrdiff_t dst_stride);
428 void ff_put_h264_qpel8_mc02_mmi(uint8_t *dst, const uint8_t *src,
429 ptrdiff_t dst_stride);
430 void ff_put_h264_qpel8_mc12_mmi(uint8_t *dst, const uint8_t *src,
431 ptrdiff_t dst_stride);
432 void ff_put_h264_qpel8_mc22_mmi(uint8_t *dst, const uint8_t *src,
433 ptrdiff_t dst_stride);
434 void ff_put_h264_qpel8_mc32_mmi(uint8_t *dst, const uint8_t *src,
435 ptrdiff_t dst_stride);
436 void ff_put_h264_qpel8_mc03_mmi(uint8_t *dst, const uint8_t *src,
437 ptrdiff_t dst_stride);
438 void ff_put_h264_qpel8_mc13_mmi(uint8_t *dst, const uint8_t *src,
439 ptrdiff_t dst_stride);
440 void ff_put_h264_qpel8_mc23_mmi(uint8_t *dst, const uint8_t *src,
441 ptrdiff_t dst_stride);
442 void ff_put_h264_qpel8_mc33_mmi(uint8_t *dst, const uint8_t *src,
443 ptrdiff_t dst_stride);
445 void ff_put_h264_qpel4_mc00_mmi(uint8_t *dst, const uint8_t *src,
446 ptrdiff_t dst_stride);
447 void ff_put_h264_qpel4_mc10_mmi(uint8_t *dst, const uint8_t *src,
448 ptrdiff_t dst_stride);
449 void ff_put_h264_qpel4_mc20_mmi(uint8_t *dst, const uint8_t *src,
450 ptrdiff_t dst_stride);
451 void ff_put_h264_qpel4_mc30_mmi(uint8_t *dst, const uint8_t *src,
452 ptrdiff_t dst_stride);
453 void ff_put_h264_qpel4_mc01_mmi(uint8_t *dst, const uint8_t *src,
454 ptrdiff_t dst_stride);
455 void ff_put_h264_qpel4_mc11_mmi(uint8_t *dst, const uint8_t *src,
456 ptrdiff_t dst_stride);
457 void ff_put_h264_qpel4_mc21_mmi(uint8_t *dst, const uint8_t *src,
458 ptrdiff_t dst_stride);
459 void ff_put_h264_qpel4_mc31_mmi(uint8_t *dst, const uint8_t *src,
460 ptrdiff_t dst_stride);
461 void ff_put_h264_qpel4_mc02_mmi(uint8_t *dst, const uint8_t *src,
462 ptrdiff_t dst_stride);
463 void ff_put_h264_qpel4_mc12_mmi(uint8_t *dst, const uint8_t *src,
464 ptrdiff_t dst_stride);
465 void ff_put_h264_qpel4_mc22_mmi(uint8_t *dst, const uint8_t *src,
466 ptrdiff_t dst_stride);
467 void ff_put_h264_qpel4_mc32_mmi(uint8_t *dst, const uint8_t *src,
468 ptrdiff_t dst_stride);
469 void ff_put_h264_qpel4_mc03_mmi(uint8_t *dst, const uint8_t *src,
470 ptrdiff_t dst_stride);
471 void ff_put_h264_qpel4_mc13_mmi(uint8_t *dst, const uint8_t *src,
472 ptrdiff_t dst_stride);
473 void ff_put_h264_qpel4_mc23_mmi(uint8_t *dst, const uint8_t *src,
474 ptrdiff_t dst_stride);
475 void ff_put_h264_qpel4_mc33_mmi(uint8_t *dst, const uint8_t *src,
476 ptrdiff_t dst_stride);
478 void ff_avg_h264_qpel16_mc00_mmi(uint8_t *dst, const uint8_t *src,
479 ptrdiff_t dst_stride);
480 void ff_avg_h264_qpel16_mc10_mmi(uint8_t *dst, const uint8_t *src,
481 ptrdiff_t dst_stride);
482 void ff_avg_h264_qpel16_mc20_mmi(uint8_t *dst, const uint8_t *src,
483 ptrdiff_t dst_stride);
484 void ff_avg_h264_qpel16_mc30_mmi(uint8_t *dst, const uint8_t *src,
485 ptrdiff_t dst_stride);
486 void ff_avg_h264_qpel16_mc01_mmi(uint8_t *dst, const uint8_t *src,
487 ptrdiff_t dst_stride);
488 void ff_avg_h264_qpel16_mc11_mmi(uint8_t *dst, const uint8_t *src,
489 ptrdiff_t dst_stride);
490 void ff_avg_h264_qpel16_mc21_mmi(uint8_t *dst, const uint8_t *src,
491 ptrdiff_t dst_stride);
492 void ff_avg_h264_qpel16_mc31_mmi(uint8_t *dst, const uint8_t *src,
493 ptrdiff_t dst_stride);
494 void ff_avg_h264_qpel16_mc02_mmi(uint8_t *dst, const uint8_t *src,
495 ptrdiff_t dst_stride);
496 void ff_avg_h264_qpel16_mc12_mmi(uint8_t *dst, const uint8_t *src,
497 ptrdiff_t dst_stride);
498 void ff_avg_h264_qpel16_mc22_mmi(uint8_t *dst, const uint8_t *src,
499 ptrdiff_t dst_stride);
500 void ff_avg_h264_qpel16_mc32_mmi(uint8_t *dst, const uint8_t *src,
501 ptrdiff_t dst_stride);
502 void ff_avg_h264_qpel16_mc03_mmi(uint8_t *dst, const uint8_t *src,
503 ptrdiff_t dst_stride);
504 void ff_avg_h264_qpel16_mc13_mmi(uint8_t *dst, const uint8_t *src,
505 ptrdiff_t dst_stride);
506 void ff_avg_h264_qpel16_mc23_mmi(uint8_t *dst, const uint8_t *src,
507 ptrdiff_t dst_stride);
508 void ff_avg_h264_qpel16_mc33_mmi(uint8_t *dst, const uint8_t *src,
509 ptrdiff_t dst_stride);
511 void ff_avg_h264_qpel8_mc00_mmi(uint8_t *dst, const uint8_t *src,
512 ptrdiff_t dst_stride);
513 void ff_avg_h264_qpel8_mc10_mmi(uint8_t *dst, const uint8_t *src,
514 ptrdiff_t dst_stride);
515 void ff_avg_h264_qpel8_mc20_mmi(uint8_t *dst, const uint8_t *src,
516 ptrdiff_t dst_stride);
517 void ff_avg_h264_qpel8_mc30_mmi(uint8_t *dst, const uint8_t *src,
518 ptrdiff_t dst_stride);
519 void ff_avg_h264_qpel8_mc01_mmi(uint8_t *dst, const uint8_t *src,
520 ptrdiff_t dst_stride);
521 void ff_avg_h264_qpel8_mc11_mmi(uint8_t *dst, const uint8_t *src,
522 ptrdiff_t dst_stride);
523 void ff_avg_h264_qpel8_mc21_mmi(uint8_t *dst, const uint8_t *src,
524 ptrdiff_t dst_stride);
525 void ff_avg_h264_qpel8_mc31_mmi(uint8_t *dst, const uint8_t *src,
526 ptrdiff_t dst_stride);
527 void ff_avg_h264_qpel8_mc02_mmi(uint8_t *dst, const uint8_t *src,
528 ptrdiff_t dst_stride);
529 void ff_avg_h264_qpel8_mc12_mmi(uint8_t *dst, const uint8_t *src,
530 ptrdiff_t dst_stride);
531 void ff_avg_h264_qpel8_mc22_mmi(uint8_t *dst, const uint8_t *src,
532 ptrdiff_t dst_stride);
533 void ff_avg_h264_qpel8_mc32_mmi(uint8_t *dst, const uint8_t *src,
534 ptrdiff_t dst_stride);
535 void ff_avg_h264_qpel8_mc03_mmi(uint8_t *dst, const uint8_t *src,
536 ptrdiff_t dst_stride);
537 void ff_avg_h264_qpel8_mc13_mmi(uint8_t *dst, const uint8_t *src,
538 ptrdiff_t dst_stride);
539 void ff_avg_h264_qpel8_mc23_mmi(uint8_t *dst, const uint8_t *src,
540 ptrdiff_t dst_stride);
541 void ff_avg_h264_qpel8_mc33_mmi(uint8_t *dst, const uint8_t *src,
542 ptrdiff_t dst_stride);
544 void ff_avg_h264_qpel4_mc00_mmi(uint8_t *dst, const uint8_t *src,
545 ptrdiff_t dst_stride);
546 void ff_avg_h264_qpel4_mc10_mmi(uint8_t *dst, const uint8_t *src,
547 ptrdiff_t dst_stride);
548 void ff_avg_h264_qpel4_mc20_mmi(uint8_t *dst, const uint8_t *src,
549 ptrdiff_t dst_stride);
550 void ff_avg_h264_qpel4_mc30_mmi(uint8_t *dst, const uint8_t *src,
551 ptrdiff_t dst_stride);
552 void ff_avg_h264_qpel4_mc01_mmi(uint8_t *dst, const uint8_t *src,
553 ptrdiff_t dst_stride);
554 void ff_avg_h264_qpel4_mc11_mmi(uint8_t *dst, const uint8_t *src,
555 ptrdiff_t dst_stride);
556 void ff_avg_h264_qpel4_mc21_mmi(uint8_t *dst, const uint8_t *src,
557 ptrdiff_t dst_stride);
558 void ff_avg_h264_qpel4_mc31_mmi(uint8_t *dst, const uint8_t *src,
559 ptrdiff_t dst_stride);
560 void ff_avg_h264_qpel4_mc02_mmi(uint8_t *dst, const uint8_t *src,
561 ptrdiff_t dst_stride);
562 void ff_avg_h264_qpel4_mc12_mmi(uint8_t *dst, const uint8_t *src,
563 ptrdiff_t dst_stride);
564 void ff_avg_h264_qpel4_mc22_mmi(uint8_t *dst, const uint8_t *src,
565 ptrdiff_t dst_stride);
566 void ff_avg_h264_qpel4_mc32_mmi(uint8_t *dst, const uint8_t *src,
567 ptrdiff_t dst_stride);
568 void ff_avg_h264_qpel4_mc03_mmi(uint8_t *dst, const uint8_t *src,
569 ptrdiff_t dst_stride);
570 void ff_avg_h264_qpel4_mc13_mmi(uint8_t *dst, const uint8_t *src,
571 ptrdiff_t dst_stride);
572 void ff_avg_h264_qpel4_mc23_mmi(uint8_t *dst, const uint8_t *src,
573 ptrdiff_t dst_stride);
574 void ff_avg_h264_qpel4_mc33_mmi(uint8_t *dst, const uint8_t *src,
575 ptrdiff_t dst_stride);
577 #endif // #ifndef AVCODEC_MIPS_H264DSP_MIPS_H