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