1 // This file is generated. Do not edit.
2 #ifndef VPX_DSP_RTCD_H_
3 #define VPX_DSP_RTCD_H_
4 
5 #ifdef RTCD_C
6 #define RTCD_EXTERN
7 #else
8 #define RTCD_EXTERN extern
9 #endif
10 
11 /*
12  * DSP
13  */
14 
15 #include "vpx/vpx_integer.h"
16 #include "vpx_dsp/vpx_dsp_common.h"
17 #include "vpx_dsp/vpx_filter.h"
18 
19 #ifdef __cplusplus
20 extern "C" {
21 #endif
22 
23 unsigned int vpx_avg_4x4_c(const uint8_t*, int p);
24 #define vpx_avg_4x4 vpx_avg_4x4_c
25 
26 unsigned int vpx_avg_8x8_c(const uint8_t*, int p);
27 #define vpx_avg_8x8 vpx_avg_8x8_c
28 
29 void vpx_comp_avg_pred_c(uint8_t* comp_pred,
30                          const uint8_t* pred,
31                          int width,
32                          int height,
33                          const uint8_t* ref,
34                          int ref_stride);
35 #define vpx_comp_avg_pred vpx_comp_avg_pred_c
36 
37 void vpx_convolve8_c(const uint8_t* src,
38                      ptrdiff_t src_stride,
39                      uint8_t* dst,
40                      ptrdiff_t dst_stride,
41                      const InterpKernel* filter,
42                      int x0_q4,
43                      int x_step_q4,
44                      int y0_q4,
45                      int y_step_q4,
46                      int w,
47                      int h);
48 #define vpx_convolve8 vpx_convolve8_c
49 
50 void vpx_convolve8_avg_c(const uint8_t* src,
51                          ptrdiff_t src_stride,
52                          uint8_t* dst,
53                          ptrdiff_t dst_stride,
54                          const InterpKernel* filter,
55                          int x0_q4,
56                          int x_step_q4,
57                          int y0_q4,
58                          int y_step_q4,
59                          int w,
60                          int h);
61 #define vpx_convolve8_avg vpx_convolve8_avg_c
62 
63 void vpx_convolve8_avg_horiz_c(const uint8_t* src,
64                                ptrdiff_t src_stride,
65                                uint8_t* dst,
66                                ptrdiff_t dst_stride,
67                                const InterpKernel* filter,
68                                int x0_q4,
69                                int x_step_q4,
70                                int y0_q4,
71                                int y_step_q4,
72                                int w,
73                                int h);
74 #define vpx_convolve8_avg_horiz vpx_convolve8_avg_horiz_c
75 
76 void vpx_convolve8_avg_vert_c(const uint8_t* src,
77                               ptrdiff_t src_stride,
78                               uint8_t* dst,
79                               ptrdiff_t dst_stride,
80                               const InterpKernel* filter,
81                               int x0_q4,
82                               int x_step_q4,
83                               int y0_q4,
84                               int y_step_q4,
85                               int w,
86                               int h);
87 #define vpx_convolve8_avg_vert vpx_convolve8_avg_vert_c
88 
89 void vpx_convolve8_horiz_c(const uint8_t* src,
90                            ptrdiff_t src_stride,
91                            uint8_t* dst,
92                            ptrdiff_t dst_stride,
93                            const InterpKernel* filter,
94                            int x0_q4,
95                            int x_step_q4,
96                            int y0_q4,
97                            int y_step_q4,
98                            int w,
99                            int h);
100 #define vpx_convolve8_horiz vpx_convolve8_horiz_c
101 
102 void vpx_convolve8_vert_c(const uint8_t* src,
103                           ptrdiff_t src_stride,
104                           uint8_t* dst,
105                           ptrdiff_t dst_stride,
106                           const InterpKernel* filter,
107                           int x0_q4,
108                           int x_step_q4,
109                           int y0_q4,
110                           int y_step_q4,
111                           int w,
112                           int h);
113 #define vpx_convolve8_vert vpx_convolve8_vert_c
114 
115 void vpx_convolve_avg_c(const uint8_t* src,
116                         ptrdiff_t src_stride,
117                         uint8_t* dst,
118                         ptrdiff_t dst_stride,
119                         const InterpKernel* filter,
120                         int x0_q4,
121                         int x_step_q4,
122                         int y0_q4,
123                         int y_step_q4,
124                         int w,
125                         int h);
126 #define vpx_convolve_avg vpx_convolve_avg_c
127 
128 void vpx_convolve_copy_c(const uint8_t* src,
129                          ptrdiff_t src_stride,
130                          uint8_t* dst,
131                          ptrdiff_t dst_stride,
132                          const InterpKernel* filter,
133                          int x0_q4,
134                          int x_step_q4,
135                          int y0_q4,
136                          int y_step_q4,
137                          int w,
138                          int h);
139 #define vpx_convolve_copy vpx_convolve_copy_c
140 
141 void vpx_d117_predictor_16x16_c(uint8_t* dst,
142                                 ptrdiff_t stride,
143                                 const uint8_t* above,
144                                 const uint8_t* left);
145 #define vpx_d117_predictor_16x16 vpx_d117_predictor_16x16_c
146 
147 void vpx_d117_predictor_32x32_c(uint8_t* dst,
148                                 ptrdiff_t stride,
149                                 const uint8_t* above,
150                                 const uint8_t* left);
151 #define vpx_d117_predictor_32x32 vpx_d117_predictor_32x32_c
152 
153 void vpx_d117_predictor_4x4_c(uint8_t* dst,
154                               ptrdiff_t stride,
155                               const uint8_t* above,
156                               const uint8_t* left);
157 #define vpx_d117_predictor_4x4 vpx_d117_predictor_4x4_c
158 
159 void vpx_d117_predictor_8x8_c(uint8_t* dst,
160                               ptrdiff_t stride,
161                               const uint8_t* above,
162                               const uint8_t* left);
163 #define vpx_d117_predictor_8x8 vpx_d117_predictor_8x8_c
164 
165 void vpx_d135_predictor_16x16_c(uint8_t* dst,
166                                 ptrdiff_t stride,
167                                 const uint8_t* above,
168                                 const uint8_t* left);
169 #define vpx_d135_predictor_16x16 vpx_d135_predictor_16x16_c
170 
171 void vpx_d135_predictor_32x32_c(uint8_t* dst,
172                                 ptrdiff_t stride,
173                                 const uint8_t* above,
174                                 const uint8_t* left);
175 #define vpx_d135_predictor_32x32 vpx_d135_predictor_32x32_c
176 
177 void vpx_d135_predictor_4x4_c(uint8_t* dst,
178                               ptrdiff_t stride,
179                               const uint8_t* above,
180                               const uint8_t* left);
181 #define vpx_d135_predictor_4x4 vpx_d135_predictor_4x4_c
182 
183 void vpx_d135_predictor_8x8_c(uint8_t* dst,
184                               ptrdiff_t stride,
185                               const uint8_t* above,
186                               const uint8_t* left);
187 #define vpx_d135_predictor_8x8 vpx_d135_predictor_8x8_c
188 
189 void vpx_d153_predictor_16x16_c(uint8_t* dst,
190                                 ptrdiff_t stride,
191                                 const uint8_t* above,
192                                 const uint8_t* left);
193 #define vpx_d153_predictor_16x16 vpx_d153_predictor_16x16_c
194 
195 void vpx_d153_predictor_32x32_c(uint8_t* dst,
196                                 ptrdiff_t stride,
197                                 const uint8_t* above,
198                                 const uint8_t* left);
199 #define vpx_d153_predictor_32x32 vpx_d153_predictor_32x32_c
200 
201 void vpx_d153_predictor_4x4_c(uint8_t* dst,
202                               ptrdiff_t stride,
203                               const uint8_t* above,
204                               const uint8_t* left);
205 #define vpx_d153_predictor_4x4 vpx_d153_predictor_4x4_c
206 
207 void vpx_d153_predictor_8x8_c(uint8_t* dst,
208                               ptrdiff_t stride,
209                               const uint8_t* above,
210                               const uint8_t* left);
211 #define vpx_d153_predictor_8x8 vpx_d153_predictor_8x8_c
212 
213 void vpx_d207_predictor_16x16_c(uint8_t* dst,
214                                 ptrdiff_t stride,
215                                 const uint8_t* above,
216                                 const uint8_t* left);
217 #define vpx_d207_predictor_16x16 vpx_d207_predictor_16x16_c
218 
219 void vpx_d207_predictor_32x32_c(uint8_t* dst,
220                                 ptrdiff_t stride,
221                                 const uint8_t* above,
222                                 const uint8_t* left);
223 #define vpx_d207_predictor_32x32 vpx_d207_predictor_32x32_c
224 
225 void vpx_d207_predictor_4x4_c(uint8_t* dst,
226                               ptrdiff_t stride,
227                               const uint8_t* above,
228                               const uint8_t* left);
229 #define vpx_d207_predictor_4x4 vpx_d207_predictor_4x4_c
230 
231 void vpx_d207_predictor_8x8_c(uint8_t* dst,
232                               ptrdiff_t stride,
233                               const uint8_t* above,
234                               const uint8_t* left);
235 #define vpx_d207_predictor_8x8 vpx_d207_predictor_8x8_c
236 
237 void vpx_d45_predictor_16x16_c(uint8_t* dst,
238                                ptrdiff_t stride,
239                                const uint8_t* above,
240                                const uint8_t* left);
241 #define vpx_d45_predictor_16x16 vpx_d45_predictor_16x16_c
242 
243 void vpx_d45_predictor_32x32_c(uint8_t* dst,
244                                ptrdiff_t stride,
245                                const uint8_t* above,
246                                const uint8_t* left);
247 #define vpx_d45_predictor_32x32 vpx_d45_predictor_32x32_c
248 
249 void vpx_d45_predictor_4x4_c(uint8_t* dst,
250                              ptrdiff_t stride,
251                              const uint8_t* above,
252                              const uint8_t* left);
253 #define vpx_d45_predictor_4x4 vpx_d45_predictor_4x4_c
254 
255 void vpx_d45_predictor_8x8_c(uint8_t* dst,
256                              ptrdiff_t stride,
257                              const uint8_t* above,
258                              const uint8_t* left);
259 #define vpx_d45_predictor_8x8 vpx_d45_predictor_8x8_c
260 
261 void vpx_d45e_predictor_4x4_c(uint8_t* dst,
262                               ptrdiff_t stride,
263                               const uint8_t* above,
264                               const uint8_t* left);
265 #define vpx_d45e_predictor_4x4 vpx_d45e_predictor_4x4_c
266 
267 void vpx_d63_predictor_16x16_c(uint8_t* dst,
268                                ptrdiff_t stride,
269                                const uint8_t* above,
270                                const uint8_t* left);
271 #define vpx_d63_predictor_16x16 vpx_d63_predictor_16x16_c
272 
273 void vpx_d63_predictor_32x32_c(uint8_t* dst,
274                                ptrdiff_t stride,
275                                const uint8_t* above,
276                                const uint8_t* left);
277 #define vpx_d63_predictor_32x32 vpx_d63_predictor_32x32_c
278 
279 void vpx_d63_predictor_4x4_c(uint8_t* dst,
280                              ptrdiff_t stride,
281                              const uint8_t* above,
282                              const uint8_t* left);
283 #define vpx_d63_predictor_4x4 vpx_d63_predictor_4x4_c
284 
285 void vpx_d63_predictor_8x8_c(uint8_t* dst,
286                              ptrdiff_t stride,
287                              const uint8_t* above,
288                              const uint8_t* left);
289 #define vpx_d63_predictor_8x8 vpx_d63_predictor_8x8_c
290 
291 void vpx_d63e_predictor_4x4_c(uint8_t* dst,
292                               ptrdiff_t stride,
293                               const uint8_t* above,
294                               const uint8_t* left);
295 #define vpx_d63e_predictor_4x4 vpx_d63e_predictor_4x4_c
296 
297 void vpx_dc_128_predictor_16x16_c(uint8_t* dst,
298                                   ptrdiff_t stride,
299                                   const uint8_t* above,
300                                   const uint8_t* left);
301 #define vpx_dc_128_predictor_16x16 vpx_dc_128_predictor_16x16_c
302 
303 void vpx_dc_128_predictor_32x32_c(uint8_t* dst,
304                                   ptrdiff_t stride,
305                                   const uint8_t* above,
306                                   const uint8_t* left);
307 #define vpx_dc_128_predictor_32x32 vpx_dc_128_predictor_32x32_c
308 
309 void vpx_dc_128_predictor_4x4_c(uint8_t* dst,
310                                 ptrdiff_t stride,
311                                 const uint8_t* above,
312                                 const uint8_t* left);
313 #define vpx_dc_128_predictor_4x4 vpx_dc_128_predictor_4x4_c
314 
315 void vpx_dc_128_predictor_8x8_c(uint8_t* dst,
316                                 ptrdiff_t stride,
317                                 const uint8_t* above,
318                                 const uint8_t* left);
319 #define vpx_dc_128_predictor_8x8 vpx_dc_128_predictor_8x8_c
320 
321 void vpx_dc_left_predictor_16x16_c(uint8_t* dst,
322                                    ptrdiff_t stride,
323                                    const uint8_t* above,
324                                    const uint8_t* left);
325 #define vpx_dc_left_predictor_16x16 vpx_dc_left_predictor_16x16_c
326 
327 void vpx_dc_left_predictor_32x32_c(uint8_t* dst,
328                                    ptrdiff_t stride,
329                                    const uint8_t* above,
330                                    const uint8_t* left);
331 #define vpx_dc_left_predictor_32x32 vpx_dc_left_predictor_32x32_c
332 
333 void vpx_dc_left_predictor_4x4_c(uint8_t* dst,
334                                  ptrdiff_t stride,
335                                  const uint8_t* above,
336                                  const uint8_t* left);
337 #define vpx_dc_left_predictor_4x4 vpx_dc_left_predictor_4x4_c
338 
339 void vpx_dc_left_predictor_8x8_c(uint8_t* dst,
340                                  ptrdiff_t stride,
341                                  const uint8_t* above,
342                                  const uint8_t* left);
343 #define vpx_dc_left_predictor_8x8 vpx_dc_left_predictor_8x8_c
344 
345 void vpx_dc_predictor_16x16_c(uint8_t* dst,
346                               ptrdiff_t stride,
347                               const uint8_t* above,
348                               const uint8_t* left);
349 #define vpx_dc_predictor_16x16 vpx_dc_predictor_16x16_c
350 
351 void vpx_dc_predictor_32x32_c(uint8_t* dst,
352                               ptrdiff_t stride,
353                               const uint8_t* above,
354                               const uint8_t* left);
355 #define vpx_dc_predictor_32x32 vpx_dc_predictor_32x32_c
356 
357 void vpx_dc_predictor_4x4_c(uint8_t* dst,
358                             ptrdiff_t stride,
359                             const uint8_t* above,
360                             const uint8_t* left);
361 #define vpx_dc_predictor_4x4 vpx_dc_predictor_4x4_c
362 
363 void vpx_dc_predictor_8x8_c(uint8_t* dst,
364                             ptrdiff_t stride,
365                             const uint8_t* above,
366                             const uint8_t* left);
367 #define vpx_dc_predictor_8x8 vpx_dc_predictor_8x8_c
368 
369 void vpx_dc_top_predictor_16x16_c(uint8_t* dst,
370                                   ptrdiff_t stride,
371                                   const uint8_t* above,
372                                   const uint8_t* left);
373 #define vpx_dc_top_predictor_16x16 vpx_dc_top_predictor_16x16_c
374 
375 void vpx_dc_top_predictor_32x32_c(uint8_t* dst,
376                                   ptrdiff_t stride,
377                                   const uint8_t* above,
378                                   const uint8_t* left);
379 #define vpx_dc_top_predictor_32x32 vpx_dc_top_predictor_32x32_c
380 
381 void vpx_dc_top_predictor_4x4_c(uint8_t* dst,
382                                 ptrdiff_t stride,
383                                 const uint8_t* above,
384                                 const uint8_t* left);
385 #define vpx_dc_top_predictor_4x4 vpx_dc_top_predictor_4x4_c
386 
387 void vpx_dc_top_predictor_8x8_c(uint8_t* dst,
388                                 ptrdiff_t stride,
389                                 const uint8_t* above,
390                                 const uint8_t* left);
391 #define vpx_dc_top_predictor_8x8 vpx_dc_top_predictor_8x8_c
392 
393 void vpx_fdct16x16_c(const int16_t* input, tran_low_t* output, int stride);
394 #define vpx_fdct16x16 vpx_fdct16x16_c
395 
396 void vpx_fdct16x16_1_c(const int16_t* input, tran_low_t* output, int stride);
397 #define vpx_fdct16x16_1 vpx_fdct16x16_1_c
398 
399 void vpx_fdct32x32_c(const int16_t* input, tran_low_t* output, int stride);
400 #define vpx_fdct32x32 vpx_fdct32x32_c
401 
402 void vpx_fdct32x32_1_c(const int16_t* input, tran_low_t* output, int stride);
403 #define vpx_fdct32x32_1 vpx_fdct32x32_1_c
404 
405 void vpx_fdct32x32_rd_c(const int16_t* input, tran_low_t* output, int stride);
406 #define vpx_fdct32x32_rd vpx_fdct32x32_rd_c
407 
408 void vpx_fdct4x4_c(const int16_t* input, tran_low_t* output, int stride);
409 #define vpx_fdct4x4 vpx_fdct4x4_c
410 
411 void vpx_fdct4x4_1_c(const int16_t* input, tran_low_t* output, int stride);
412 #define vpx_fdct4x4_1 vpx_fdct4x4_1_c
413 
414 void vpx_fdct8x8_c(const int16_t* input, tran_low_t* output, int stride);
415 #define vpx_fdct8x8 vpx_fdct8x8_c
416 
417 void vpx_fdct8x8_1_c(const int16_t* input, tran_low_t* output, int stride);
418 #define vpx_fdct8x8_1 vpx_fdct8x8_1_c
419 
420 void vpx_get16x16var_c(const uint8_t* src_ptr,
421                        int src_stride,
422                        const uint8_t* ref_ptr,
423                        int ref_stride,
424                        unsigned int* sse,
425                        int* sum);
426 #define vpx_get16x16var vpx_get16x16var_c
427 
428 unsigned int vpx_get4x4sse_cs_c(const unsigned char* src_ptr,
429                                 int src_stride,
430                                 const unsigned char* ref_ptr,
431                                 int ref_stride);
432 #define vpx_get4x4sse_cs vpx_get4x4sse_cs_c
433 
434 void vpx_get8x8var_c(const uint8_t* src_ptr,
435                      int src_stride,
436                      const uint8_t* ref_ptr,
437                      int ref_stride,
438                      unsigned int* sse,
439                      int* sum);
440 #define vpx_get8x8var vpx_get8x8var_c
441 
442 unsigned int vpx_get_mb_ss_c(const int16_t*);
443 #define vpx_get_mb_ss vpx_get_mb_ss_c
444 
445 void vpx_h_predictor_16x16_c(uint8_t* dst,
446                              ptrdiff_t stride,
447                              const uint8_t* above,
448                              const uint8_t* left);
449 #define vpx_h_predictor_16x16 vpx_h_predictor_16x16_c
450 
451 void vpx_h_predictor_32x32_c(uint8_t* dst,
452                              ptrdiff_t stride,
453                              const uint8_t* above,
454                              const uint8_t* left);
455 #define vpx_h_predictor_32x32 vpx_h_predictor_32x32_c
456 
457 void vpx_h_predictor_4x4_c(uint8_t* dst,
458                            ptrdiff_t stride,
459                            const uint8_t* above,
460                            const uint8_t* left);
461 #define vpx_h_predictor_4x4 vpx_h_predictor_4x4_c
462 
463 void vpx_h_predictor_8x8_c(uint8_t* dst,
464                            ptrdiff_t stride,
465                            const uint8_t* above,
466                            const uint8_t* left);
467 #define vpx_h_predictor_8x8 vpx_h_predictor_8x8_c
468 
469 void vpx_hadamard_16x16_c(const int16_t* src_diff,
470                           ptrdiff_t src_stride,
471                           int16_t* coeff);
472 #define vpx_hadamard_16x16 vpx_hadamard_16x16_c
473 
474 void vpx_hadamard_32x32_c(const int16_t* src_diff,
475                           ptrdiff_t src_stride,
476                           int16_t* coeff);
477 #define vpx_hadamard_32x32 vpx_hadamard_32x32_c
478 
479 void vpx_hadamard_8x8_c(const int16_t* src_diff,
480                         ptrdiff_t src_stride,
481                         int16_t* coeff);
482 #define vpx_hadamard_8x8 vpx_hadamard_8x8_c
483 
484 void vpx_he_predictor_4x4_c(uint8_t* dst,
485                             ptrdiff_t stride,
486                             const uint8_t* above,
487                             const uint8_t* left);
488 #define vpx_he_predictor_4x4 vpx_he_predictor_4x4_c
489 
490 void vpx_idct16x16_10_add_c(const tran_low_t* input, uint8_t* dest, int stride);
491 #define vpx_idct16x16_10_add vpx_idct16x16_10_add_c
492 
493 void vpx_idct16x16_1_add_c(const tran_low_t* input, uint8_t* dest, int stride);
494 #define vpx_idct16x16_1_add vpx_idct16x16_1_add_c
495 
496 void vpx_idct16x16_256_add_c(const tran_low_t* input,
497                              uint8_t* dest,
498                              int stride);
499 #define vpx_idct16x16_256_add vpx_idct16x16_256_add_c
500 
501 void vpx_idct16x16_38_add_c(const tran_low_t* input, uint8_t* dest, int stride);
502 #define vpx_idct16x16_38_add vpx_idct16x16_38_add_c
503 
504 void vpx_idct32x32_1024_add_c(const tran_low_t* input,
505                               uint8_t* dest,
506                               int stride);
507 #define vpx_idct32x32_1024_add vpx_idct32x32_1024_add_c
508 
509 void vpx_idct32x32_135_add_c(const tran_low_t* input,
510                              uint8_t* dest,
511                              int stride);
512 #define vpx_idct32x32_135_add vpx_idct32x32_135_add_c
513 
514 void vpx_idct32x32_1_add_c(const tran_low_t* input, uint8_t* dest, int stride);
515 #define vpx_idct32x32_1_add vpx_idct32x32_1_add_c
516 
517 void vpx_idct32x32_34_add_c(const tran_low_t* input, uint8_t* dest, int stride);
518 #define vpx_idct32x32_34_add vpx_idct32x32_34_add_c
519 
520 void vpx_idct4x4_16_add_c(const tran_low_t* input, uint8_t* dest, int stride);
521 #define vpx_idct4x4_16_add vpx_idct4x4_16_add_c
522 
523 void vpx_idct4x4_1_add_c(const tran_low_t* input, uint8_t* dest, int stride);
524 #define vpx_idct4x4_1_add vpx_idct4x4_1_add_c
525 
526 void vpx_idct8x8_12_add_c(const tran_low_t* input, uint8_t* dest, int stride);
527 #define vpx_idct8x8_12_add vpx_idct8x8_12_add_c
528 
529 void vpx_idct8x8_1_add_c(const tran_low_t* input, uint8_t* dest, int stride);
530 #define vpx_idct8x8_1_add vpx_idct8x8_1_add_c
531 
532 void vpx_idct8x8_64_add_c(const tran_low_t* input, uint8_t* dest, int stride);
533 #define vpx_idct8x8_64_add vpx_idct8x8_64_add_c
534 
535 int16_t vpx_int_pro_col_c(const uint8_t* ref, const int width);
536 #define vpx_int_pro_col vpx_int_pro_col_c
537 
538 void vpx_int_pro_row_c(int16_t* hbuf,
539                        const uint8_t* ref,
540                        const int ref_stride,
541                        const int height);
542 #define vpx_int_pro_row vpx_int_pro_row_c
543 
544 void vpx_iwht4x4_16_add_c(const tran_low_t* input, uint8_t* dest, int stride);
545 #define vpx_iwht4x4_16_add vpx_iwht4x4_16_add_c
546 
547 void vpx_iwht4x4_1_add_c(const tran_low_t* input, uint8_t* dest, int stride);
548 #define vpx_iwht4x4_1_add vpx_iwht4x4_1_add_c
549 
550 void vpx_lpf_horizontal_16_c(uint8_t* s,
551                              int pitch,
552                              const uint8_t* blimit,
553                              const uint8_t* limit,
554                              const uint8_t* thresh);
555 #define vpx_lpf_horizontal_16 vpx_lpf_horizontal_16_c
556 
557 void vpx_lpf_horizontal_16_dual_c(uint8_t* s,
558                                   int pitch,
559                                   const uint8_t* blimit,
560                                   const uint8_t* limit,
561                                   const uint8_t* thresh);
562 #define vpx_lpf_horizontal_16_dual vpx_lpf_horizontal_16_dual_c
563 
564 void vpx_lpf_horizontal_4_c(uint8_t* s,
565                             int pitch,
566                             const uint8_t* blimit,
567                             const uint8_t* limit,
568                             const uint8_t* thresh);
569 #define vpx_lpf_horizontal_4 vpx_lpf_horizontal_4_c
570 
571 void vpx_lpf_horizontal_4_dual_c(uint8_t* s,
572                                  int pitch,
573                                  const uint8_t* blimit0,
574                                  const uint8_t* limit0,
575                                  const uint8_t* thresh0,
576                                  const uint8_t* blimit1,
577                                  const uint8_t* limit1,
578                                  const uint8_t* thresh1);
579 #define vpx_lpf_horizontal_4_dual vpx_lpf_horizontal_4_dual_c
580 
581 void vpx_lpf_horizontal_8_c(uint8_t* s,
582                             int pitch,
583                             const uint8_t* blimit,
584                             const uint8_t* limit,
585                             const uint8_t* thresh);
586 #define vpx_lpf_horizontal_8 vpx_lpf_horizontal_8_c
587 
588 void vpx_lpf_horizontal_8_dual_c(uint8_t* s,
589                                  int pitch,
590                                  const uint8_t* blimit0,
591                                  const uint8_t* limit0,
592                                  const uint8_t* thresh0,
593                                  const uint8_t* blimit1,
594                                  const uint8_t* limit1,
595                                  const uint8_t* thresh1);
596 #define vpx_lpf_horizontal_8_dual vpx_lpf_horizontal_8_dual_c
597 
598 void vpx_lpf_vertical_16_c(uint8_t* s,
599                            int pitch,
600                            const uint8_t* blimit,
601                            const uint8_t* limit,
602                            const uint8_t* thresh);
603 #define vpx_lpf_vertical_16 vpx_lpf_vertical_16_c
604 
605 void vpx_lpf_vertical_16_dual_c(uint8_t* s,
606                                 int pitch,
607                                 const uint8_t* blimit,
608                                 const uint8_t* limit,
609                                 const uint8_t* thresh);
610 #define vpx_lpf_vertical_16_dual vpx_lpf_vertical_16_dual_c
611 
612 void vpx_lpf_vertical_4_c(uint8_t* s,
613                           int pitch,
614                           const uint8_t* blimit,
615                           const uint8_t* limit,
616                           const uint8_t* thresh);
617 #define vpx_lpf_vertical_4 vpx_lpf_vertical_4_c
618 
619 void vpx_lpf_vertical_4_dual_c(uint8_t* s,
620                                int pitch,
621                                const uint8_t* blimit0,
622                                const uint8_t* limit0,
623                                const uint8_t* thresh0,
624                                const uint8_t* blimit1,
625                                const uint8_t* limit1,
626                                const uint8_t* thresh1);
627 #define vpx_lpf_vertical_4_dual vpx_lpf_vertical_4_dual_c
628 
629 void vpx_lpf_vertical_8_c(uint8_t* s,
630                           int pitch,
631                           const uint8_t* blimit,
632                           const uint8_t* limit,
633                           const uint8_t* thresh);
634 #define vpx_lpf_vertical_8 vpx_lpf_vertical_8_c
635 
636 void vpx_lpf_vertical_8_dual_c(uint8_t* s,
637                                int pitch,
638                                const uint8_t* blimit0,
639                                const uint8_t* limit0,
640                                const uint8_t* thresh0,
641                                const uint8_t* blimit1,
642                                const uint8_t* limit1,
643                                const uint8_t* thresh1);
644 #define vpx_lpf_vertical_8_dual vpx_lpf_vertical_8_dual_c
645 
646 void vpx_mbpost_proc_across_ip_c(unsigned char* src,
647                                  int pitch,
648                                  int rows,
649                                  int cols,
650                                  int flimit);
651 #define vpx_mbpost_proc_across_ip vpx_mbpost_proc_across_ip_c
652 
653 void vpx_mbpost_proc_down_c(unsigned char* dst,
654                             int pitch,
655                             int rows,
656                             int cols,
657                             int flimit);
658 #define vpx_mbpost_proc_down vpx_mbpost_proc_down_c
659 
660 void vpx_minmax_8x8_c(const uint8_t* s,
661                       int p,
662                       const uint8_t* d,
663                       int dp,
664                       int* min,
665                       int* max);
666 #define vpx_minmax_8x8 vpx_minmax_8x8_c
667 
668 unsigned int vpx_mse16x16_c(const uint8_t* src_ptr,
669                             int src_stride,
670                             const uint8_t* ref_ptr,
671                             int ref_stride,
672                             unsigned int* sse);
673 #define vpx_mse16x16 vpx_mse16x16_c
674 
675 unsigned int vpx_mse16x8_c(const uint8_t* src_ptr,
676                            int src_stride,
677                            const uint8_t* ref_ptr,
678                            int ref_stride,
679                            unsigned int* sse);
680 #define vpx_mse16x8 vpx_mse16x8_c
681 
682 unsigned int vpx_mse8x16_c(const uint8_t* src_ptr,
683                            int src_stride,
684                            const uint8_t* ref_ptr,
685                            int ref_stride,
686                            unsigned int* sse);
687 #define vpx_mse8x16 vpx_mse8x16_c
688 
689 unsigned int vpx_mse8x8_c(const uint8_t* src_ptr,
690                           int src_stride,
691                           const uint8_t* ref_ptr,
692                           int ref_stride,
693                           unsigned int* sse);
694 #define vpx_mse8x8 vpx_mse8x8_c
695 
696 void vpx_plane_add_noise_c(uint8_t* start,
697                            const int8_t* noise,
698                            int blackclamp,
699                            int whiteclamp,
700                            int width,
701                            int height,
702                            int pitch);
703 #define vpx_plane_add_noise vpx_plane_add_noise_c
704 
705 void vpx_post_proc_down_and_across_mb_row_c(unsigned char* src,
706                                             unsigned char* dst,
707                                             int src_pitch,
708                                             int dst_pitch,
709                                             int cols,
710                                             unsigned char* flimits,
711                                             int size);
712 #define vpx_post_proc_down_and_across_mb_row \
713   vpx_post_proc_down_and_across_mb_row_c
714 
715 void vpx_quantize_b_c(const tran_low_t* coeff_ptr,
716                       intptr_t n_coeffs,
717                       int skip_block,
718                       const int16_t* zbin_ptr,
719                       const int16_t* round_ptr,
720                       const int16_t* quant_ptr,
721                       const int16_t* quant_shift_ptr,
722                       tran_low_t* qcoeff_ptr,
723                       tran_low_t* dqcoeff_ptr,
724                       const int16_t* dequant_ptr,
725                       uint16_t* eob_ptr,
726                       const int16_t* scan,
727                       const int16_t* iscan);
728 #define vpx_quantize_b vpx_quantize_b_c
729 
730 void vpx_quantize_b_32x32_c(const tran_low_t* coeff_ptr,
731                             intptr_t n_coeffs,
732                             int skip_block,
733                             const int16_t* zbin_ptr,
734                             const int16_t* round_ptr,
735                             const int16_t* quant_ptr,
736                             const int16_t* quant_shift_ptr,
737                             tran_low_t* qcoeff_ptr,
738                             tran_low_t* dqcoeff_ptr,
739                             const int16_t* dequant_ptr,
740                             uint16_t* eob_ptr,
741                             const int16_t* scan,
742                             const int16_t* iscan);
743 #define vpx_quantize_b_32x32 vpx_quantize_b_32x32_c
744 
745 unsigned int vpx_sad16x16_c(const uint8_t* src_ptr,
746                             int src_stride,
747                             const uint8_t* ref_ptr,
748                             int ref_stride);
749 #define vpx_sad16x16 vpx_sad16x16_c
750 
751 unsigned int vpx_sad16x16_avg_c(const uint8_t* src_ptr,
752                                 int src_stride,
753                                 const uint8_t* ref_ptr,
754                                 int ref_stride,
755                                 const uint8_t* second_pred);
756 #define vpx_sad16x16_avg vpx_sad16x16_avg_c
757 
758 void vpx_sad16x16x3_c(const uint8_t* src_ptr,
759                       int src_stride,
760                       const uint8_t* ref_ptr,
761                       int ref_stride,
762                       uint32_t* sad_array);
763 #define vpx_sad16x16x3 vpx_sad16x16x3_c
764 
765 void vpx_sad16x16x4d_c(const uint8_t* src_ptr,
766                        int src_stride,
767                        const uint8_t* const ref_array[],
768                        int ref_stride,
769                        uint32_t* sad_array);
770 #define vpx_sad16x16x4d vpx_sad16x16x4d_c
771 
772 void vpx_sad16x16x8_c(const uint8_t* src_ptr,
773                       int src_stride,
774                       const uint8_t* ref_ptr,
775                       int ref_stride,
776                       uint32_t* sad_array);
777 #define vpx_sad16x16x8 vpx_sad16x16x8_c
778 
779 unsigned int vpx_sad16x32_c(const uint8_t* src_ptr,
780                             int src_stride,
781                             const uint8_t* ref_ptr,
782                             int ref_stride);
783 #define vpx_sad16x32 vpx_sad16x32_c
784 
785 unsigned int vpx_sad16x32_avg_c(const uint8_t* src_ptr,
786                                 int src_stride,
787                                 const uint8_t* ref_ptr,
788                                 int ref_stride,
789                                 const uint8_t* second_pred);
790 #define vpx_sad16x32_avg vpx_sad16x32_avg_c
791 
792 void vpx_sad16x32x4d_c(const uint8_t* src_ptr,
793                        int src_stride,
794                        const uint8_t* const ref_array[],
795                        int ref_stride,
796                        uint32_t* sad_array);
797 #define vpx_sad16x32x4d vpx_sad16x32x4d_c
798 
799 unsigned int vpx_sad16x8_c(const uint8_t* src_ptr,
800                            int src_stride,
801                            const uint8_t* ref_ptr,
802                            int ref_stride);
803 #define vpx_sad16x8 vpx_sad16x8_c
804 
805 unsigned int vpx_sad16x8_avg_c(const uint8_t* src_ptr,
806                                int src_stride,
807                                const uint8_t* ref_ptr,
808                                int ref_stride,
809                                const uint8_t* second_pred);
810 #define vpx_sad16x8_avg vpx_sad16x8_avg_c
811 
812 void vpx_sad16x8x3_c(const uint8_t* src_ptr,
813                      int src_stride,
814                      const uint8_t* ref_ptr,
815                      int ref_stride,
816                      uint32_t* sad_array);
817 #define vpx_sad16x8x3 vpx_sad16x8x3_c
818 
819 void vpx_sad16x8x4d_c(const uint8_t* src_ptr,
820                       int src_stride,
821                       const uint8_t* const ref_array[],
822                       int ref_stride,
823                       uint32_t* sad_array);
824 #define vpx_sad16x8x4d vpx_sad16x8x4d_c
825 
826 void vpx_sad16x8x8_c(const uint8_t* src_ptr,
827                      int src_stride,
828                      const uint8_t* ref_ptr,
829                      int ref_stride,
830                      uint32_t* sad_array);
831 #define vpx_sad16x8x8 vpx_sad16x8x8_c
832 
833 unsigned int vpx_sad32x16_c(const uint8_t* src_ptr,
834                             int src_stride,
835                             const uint8_t* ref_ptr,
836                             int ref_stride);
837 #define vpx_sad32x16 vpx_sad32x16_c
838 
839 unsigned int vpx_sad32x16_avg_c(const uint8_t* src_ptr,
840                                 int src_stride,
841                                 const uint8_t* ref_ptr,
842                                 int ref_stride,
843                                 const uint8_t* second_pred);
844 #define vpx_sad32x16_avg vpx_sad32x16_avg_c
845 
846 void vpx_sad32x16x4d_c(const uint8_t* src_ptr,
847                        int src_stride,
848                        const uint8_t* const ref_array[],
849                        int ref_stride,
850                        uint32_t* sad_array);
851 #define vpx_sad32x16x4d vpx_sad32x16x4d_c
852 
853 unsigned int vpx_sad32x32_c(const uint8_t* src_ptr,
854                             int src_stride,
855                             const uint8_t* ref_ptr,
856                             int ref_stride);
857 #define vpx_sad32x32 vpx_sad32x32_c
858 
859 unsigned int vpx_sad32x32_avg_c(const uint8_t* src_ptr,
860                                 int src_stride,
861                                 const uint8_t* ref_ptr,
862                                 int ref_stride,
863                                 const uint8_t* second_pred);
864 #define vpx_sad32x32_avg vpx_sad32x32_avg_c
865 
866 void vpx_sad32x32x4d_c(const uint8_t* src_ptr,
867                        int src_stride,
868                        const uint8_t* const ref_array[],
869                        int ref_stride,
870                        uint32_t* sad_array);
871 #define vpx_sad32x32x4d vpx_sad32x32x4d_c
872 
873 void vpx_sad32x32x8_c(const uint8_t* src_ptr,
874                       int src_stride,
875                       const uint8_t* ref_ptr,
876                       int ref_stride,
877                       uint32_t* sad_array);
878 #define vpx_sad32x32x8 vpx_sad32x32x8_c
879 
880 unsigned int vpx_sad32x64_c(const uint8_t* src_ptr,
881                             int src_stride,
882                             const uint8_t* ref_ptr,
883                             int ref_stride);
884 #define vpx_sad32x64 vpx_sad32x64_c
885 
886 unsigned int vpx_sad32x64_avg_c(const uint8_t* src_ptr,
887                                 int src_stride,
888                                 const uint8_t* ref_ptr,
889                                 int ref_stride,
890                                 const uint8_t* second_pred);
891 #define vpx_sad32x64_avg vpx_sad32x64_avg_c
892 
893 void vpx_sad32x64x4d_c(const uint8_t* src_ptr,
894                        int src_stride,
895                        const uint8_t* const ref_array[],
896                        int ref_stride,
897                        uint32_t* sad_array);
898 #define vpx_sad32x64x4d vpx_sad32x64x4d_c
899 
900 unsigned int vpx_sad4x4_c(const uint8_t* src_ptr,
901                           int src_stride,
902                           const uint8_t* ref_ptr,
903                           int ref_stride);
904 #define vpx_sad4x4 vpx_sad4x4_c
905 
906 unsigned int vpx_sad4x4_avg_c(const uint8_t* src_ptr,
907                               int src_stride,
908                               const uint8_t* ref_ptr,
909                               int ref_stride,
910                               const uint8_t* second_pred);
911 #define vpx_sad4x4_avg vpx_sad4x4_avg_c
912 
913 void vpx_sad4x4x3_c(const uint8_t* src_ptr,
914                     int src_stride,
915                     const uint8_t* ref_ptr,
916                     int ref_stride,
917                     uint32_t* sad_array);
918 #define vpx_sad4x4x3 vpx_sad4x4x3_c
919 
920 void vpx_sad4x4x4d_c(const uint8_t* src_ptr,
921                      int src_stride,
922                      const uint8_t* const ref_array[],
923                      int ref_stride,
924                      uint32_t* sad_array);
925 #define vpx_sad4x4x4d vpx_sad4x4x4d_c
926 
927 void vpx_sad4x4x8_c(const uint8_t* src_ptr,
928                     int src_stride,
929                     const uint8_t* ref_ptr,
930                     int ref_stride,
931                     uint32_t* sad_array);
932 #define vpx_sad4x4x8 vpx_sad4x4x8_c
933 
934 unsigned int vpx_sad4x8_c(const uint8_t* src_ptr,
935                           int src_stride,
936                           const uint8_t* ref_ptr,
937                           int ref_stride);
938 #define vpx_sad4x8 vpx_sad4x8_c
939 
940 unsigned int vpx_sad4x8_avg_c(const uint8_t* src_ptr,
941                               int src_stride,
942                               const uint8_t* ref_ptr,
943                               int ref_stride,
944                               const uint8_t* second_pred);
945 #define vpx_sad4x8_avg vpx_sad4x8_avg_c
946 
947 void vpx_sad4x8x4d_c(const uint8_t* src_ptr,
948                      int src_stride,
949                      const uint8_t* const ref_array[],
950                      int ref_stride,
951                      uint32_t* sad_array);
952 #define vpx_sad4x8x4d vpx_sad4x8x4d_c
953 
954 unsigned int vpx_sad64x32_c(const uint8_t* src_ptr,
955                             int src_stride,
956                             const uint8_t* ref_ptr,
957                             int ref_stride);
958 #define vpx_sad64x32 vpx_sad64x32_c
959 
960 unsigned int vpx_sad64x32_avg_c(const uint8_t* src_ptr,
961                                 int src_stride,
962                                 const uint8_t* ref_ptr,
963                                 int ref_stride,
964                                 const uint8_t* second_pred);
965 #define vpx_sad64x32_avg vpx_sad64x32_avg_c
966 
967 void vpx_sad64x32x4d_c(const uint8_t* src_ptr,
968                        int src_stride,
969                        const uint8_t* const ref_array[],
970                        int ref_stride,
971                        uint32_t* sad_array);
972 #define vpx_sad64x32x4d vpx_sad64x32x4d_c
973 
974 unsigned int vpx_sad64x64_c(const uint8_t* src_ptr,
975                             int src_stride,
976                             const uint8_t* ref_ptr,
977                             int ref_stride);
978 #define vpx_sad64x64 vpx_sad64x64_c
979 
980 unsigned int vpx_sad64x64_avg_c(const uint8_t* src_ptr,
981                                 int src_stride,
982                                 const uint8_t* ref_ptr,
983                                 int ref_stride,
984                                 const uint8_t* second_pred);
985 #define vpx_sad64x64_avg vpx_sad64x64_avg_c
986 
987 void vpx_sad64x64x4d_c(const uint8_t* src_ptr,
988                        int src_stride,
989                        const uint8_t* const ref_array[],
990                        int ref_stride,
991                        uint32_t* sad_array);
992 #define vpx_sad64x64x4d vpx_sad64x64x4d_c
993 
994 unsigned int vpx_sad8x16_c(const uint8_t* src_ptr,
995                            int src_stride,
996                            const uint8_t* ref_ptr,
997                            int ref_stride);
998 #define vpx_sad8x16 vpx_sad8x16_c
999 
1000 unsigned int vpx_sad8x16_avg_c(const uint8_t* src_ptr,
1001                                int src_stride,
1002                                const uint8_t* ref_ptr,
1003                                int ref_stride,
1004                                const uint8_t* second_pred);
1005 #define vpx_sad8x16_avg vpx_sad8x16_avg_c
1006 
1007 void vpx_sad8x16x3_c(const uint8_t* src_ptr,
1008                      int src_stride,
1009                      const uint8_t* ref_ptr,
1010                      int ref_stride,
1011                      uint32_t* sad_array);
1012 #define vpx_sad8x16x3 vpx_sad8x16x3_c
1013 
1014 void vpx_sad8x16x4d_c(const uint8_t* src_ptr,
1015                       int src_stride,
1016                       const uint8_t* const ref_array[],
1017                       int ref_stride,
1018                       uint32_t* sad_array);
1019 #define vpx_sad8x16x4d vpx_sad8x16x4d_c
1020 
1021 void vpx_sad8x16x8_c(const uint8_t* src_ptr,
1022                      int src_stride,
1023                      const uint8_t* ref_ptr,
1024                      int ref_stride,
1025                      uint32_t* sad_array);
1026 #define vpx_sad8x16x8 vpx_sad8x16x8_c
1027 
1028 unsigned int vpx_sad8x4_c(const uint8_t* src_ptr,
1029                           int src_stride,
1030                           const uint8_t* ref_ptr,
1031                           int ref_stride);
1032 #define vpx_sad8x4 vpx_sad8x4_c
1033 
1034 unsigned int vpx_sad8x4_avg_c(const uint8_t* src_ptr,
1035                               int src_stride,
1036                               const uint8_t* ref_ptr,
1037                               int ref_stride,
1038                               const uint8_t* second_pred);
1039 #define vpx_sad8x4_avg vpx_sad8x4_avg_c
1040 
1041 void vpx_sad8x4x4d_c(const uint8_t* src_ptr,
1042                      int src_stride,
1043                      const uint8_t* const ref_array[],
1044                      int ref_stride,
1045                      uint32_t* sad_array);
1046 #define vpx_sad8x4x4d vpx_sad8x4x4d_c
1047 
1048 unsigned int vpx_sad8x8_c(const uint8_t* src_ptr,
1049                           int src_stride,
1050                           const uint8_t* ref_ptr,
1051                           int ref_stride);
1052 #define vpx_sad8x8 vpx_sad8x8_c
1053 
1054 unsigned int vpx_sad8x8_avg_c(const uint8_t* src_ptr,
1055                               int src_stride,
1056                               const uint8_t* ref_ptr,
1057                               int ref_stride,
1058                               const uint8_t* second_pred);
1059 #define vpx_sad8x8_avg vpx_sad8x8_avg_c
1060 
1061 void vpx_sad8x8x3_c(const uint8_t* src_ptr,
1062                     int src_stride,
1063                     const uint8_t* ref_ptr,
1064                     int ref_stride,
1065                     uint32_t* sad_array);
1066 #define vpx_sad8x8x3 vpx_sad8x8x3_c
1067 
1068 void vpx_sad8x8x4d_c(const uint8_t* src_ptr,
1069                      int src_stride,
1070                      const uint8_t* const ref_array[],
1071                      int ref_stride,
1072                      uint32_t* sad_array);
1073 #define vpx_sad8x8x4d vpx_sad8x8x4d_c
1074 
1075 void vpx_sad8x8x8_c(const uint8_t* src_ptr,
1076                     int src_stride,
1077                     const uint8_t* ref_ptr,
1078                     int ref_stride,
1079                     uint32_t* sad_array);
1080 #define vpx_sad8x8x8 vpx_sad8x8x8_c
1081 
1082 int vpx_satd_c(const int16_t* coeff, int length);
1083 #define vpx_satd vpx_satd_c
1084 
1085 void vpx_scaled_2d_c(const uint8_t* src,
1086                      ptrdiff_t src_stride,
1087                      uint8_t* dst,
1088                      ptrdiff_t dst_stride,
1089                      const InterpKernel* filter,
1090                      int x0_q4,
1091                      int x_step_q4,
1092                      int y0_q4,
1093                      int y_step_q4,
1094                      int w,
1095                      int h);
1096 #define vpx_scaled_2d vpx_scaled_2d_c
1097 
1098 void vpx_scaled_avg_2d_c(const uint8_t* src,
1099                          ptrdiff_t src_stride,
1100                          uint8_t* dst,
1101                          ptrdiff_t dst_stride,
1102                          const InterpKernel* filter,
1103                          int x0_q4,
1104                          int x_step_q4,
1105                          int y0_q4,
1106                          int y_step_q4,
1107                          int w,
1108                          int h);
1109 #define vpx_scaled_avg_2d vpx_scaled_avg_2d_c
1110 
1111 void vpx_scaled_avg_horiz_c(const uint8_t* src,
1112                             ptrdiff_t src_stride,
1113                             uint8_t* dst,
1114                             ptrdiff_t dst_stride,
1115                             const InterpKernel* filter,
1116                             int x0_q4,
1117                             int x_step_q4,
1118                             int y0_q4,
1119                             int y_step_q4,
1120                             int w,
1121                             int h);
1122 #define vpx_scaled_avg_horiz vpx_scaled_avg_horiz_c
1123 
1124 void vpx_scaled_avg_vert_c(const uint8_t* src,
1125                            ptrdiff_t src_stride,
1126                            uint8_t* dst,
1127                            ptrdiff_t dst_stride,
1128                            const InterpKernel* filter,
1129                            int x0_q4,
1130                            int x_step_q4,
1131                            int y0_q4,
1132                            int y_step_q4,
1133                            int w,
1134                            int h);
1135 #define vpx_scaled_avg_vert vpx_scaled_avg_vert_c
1136 
1137 void vpx_scaled_horiz_c(const uint8_t* src,
1138                         ptrdiff_t src_stride,
1139                         uint8_t* dst,
1140                         ptrdiff_t dst_stride,
1141                         const InterpKernel* filter,
1142                         int x0_q4,
1143                         int x_step_q4,
1144                         int y0_q4,
1145                         int y_step_q4,
1146                         int w,
1147                         int h);
1148 #define vpx_scaled_horiz vpx_scaled_horiz_c
1149 
1150 void vpx_scaled_vert_c(const uint8_t* src,
1151                        ptrdiff_t src_stride,
1152                        uint8_t* dst,
1153                        ptrdiff_t dst_stride,
1154                        const InterpKernel* filter,
1155                        int x0_q4,
1156                        int x_step_q4,
1157                        int y0_q4,
1158                        int y_step_q4,
1159                        int w,
1160                        int h);
1161 #define vpx_scaled_vert vpx_scaled_vert_c
1162 
1163 uint32_t vpx_sub_pixel_avg_variance16x16_c(const uint8_t* src_ptr,
1164                                            int src_stride,
1165                                            int x_offset,
1166                                            int y_offset,
1167                                            const uint8_t* ref_ptr,
1168                                            int ref_stride,
1169                                            uint32_t* sse,
1170                                            const uint8_t* second_pred);
1171 #define vpx_sub_pixel_avg_variance16x16 vpx_sub_pixel_avg_variance16x16_c
1172 
1173 uint32_t vpx_sub_pixel_avg_variance16x32_c(const uint8_t* src_ptr,
1174                                            int src_stride,
1175                                            int x_offset,
1176                                            int y_offset,
1177                                            const uint8_t* ref_ptr,
1178                                            int ref_stride,
1179                                            uint32_t* sse,
1180                                            const uint8_t* second_pred);
1181 #define vpx_sub_pixel_avg_variance16x32 vpx_sub_pixel_avg_variance16x32_c
1182 
1183 uint32_t vpx_sub_pixel_avg_variance16x8_c(const uint8_t* src_ptr,
1184                                           int src_stride,
1185                                           int x_offset,
1186                                           int y_offset,
1187                                           const uint8_t* ref_ptr,
1188                                           int ref_stride,
1189                                           uint32_t* sse,
1190                                           const uint8_t* second_pred);
1191 #define vpx_sub_pixel_avg_variance16x8 vpx_sub_pixel_avg_variance16x8_c
1192 
1193 uint32_t vpx_sub_pixel_avg_variance32x16_c(const uint8_t* src_ptr,
1194                                            int src_stride,
1195                                            int x_offset,
1196                                            int y_offset,
1197                                            const uint8_t* ref_ptr,
1198                                            int ref_stride,
1199                                            uint32_t* sse,
1200                                            const uint8_t* second_pred);
1201 #define vpx_sub_pixel_avg_variance32x16 vpx_sub_pixel_avg_variance32x16_c
1202 
1203 uint32_t vpx_sub_pixel_avg_variance32x32_c(const uint8_t* src_ptr,
1204                                            int src_stride,
1205                                            int x_offset,
1206                                            int y_offset,
1207                                            const uint8_t* ref_ptr,
1208                                            int ref_stride,
1209                                            uint32_t* sse,
1210                                            const uint8_t* second_pred);
1211 #define vpx_sub_pixel_avg_variance32x32 vpx_sub_pixel_avg_variance32x32_c
1212 
1213 uint32_t vpx_sub_pixel_avg_variance32x64_c(const uint8_t* src_ptr,
1214                                            int src_stride,
1215                                            int x_offset,
1216                                            int y_offset,
1217                                            const uint8_t* ref_ptr,
1218                                            int ref_stride,
1219                                            uint32_t* sse,
1220                                            const uint8_t* second_pred);
1221 #define vpx_sub_pixel_avg_variance32x64 vpx_sub_pixel_avg_variance32x64_c
1222 
1223 uint32_t vpx_sub_pixel_avg_variance4x4_c(const uint8_t* src_ptr,
1224                                          int src_stride,
1225                                          int x_offset,
1226                                          int y_offset,
1227                                          const uint8_t* ref_ptr,
1228                                          int ref_stride,
1229                                          uint32_t* sse,
1230                                          const uint8_t* second_pred);
1231 #define vpx_sub_pixel_avg_variance4x4 vpx_sub_pixel_avg_variance4x4_c
1232 
1233 uint32_t vpx_sub_pixel_avg_variance4x8_c(const uint8_t* src_ptr,
1234                                          int src_stride,
1235                                          int x_offset,
1236                                          int y_offset,
1237                                          const uint8_t* ref_ptr,
1238                                          int ref_stride,
1239                                          uint32_t* sse,
1240                                          const uint8_t* second_pred);
1241 #define vpx_sub_pixel_avg_variance4x8 vpx_sub_pixel_avg_variance4x8_c
1242 
1243 uint32_t vpx_sub_pixel_avg_variance64x32_c(const uint8_t* src_ptr,
1244                                            int src_stride,
1245                                            int x_offset,
1246                                            int y_offset,
1247                                            const uint8_t* ref_ptr,
1248                                            int ref_stride,
1249                                            uint32_t* sse,
1250                                            const uint8_t* second_pred);
1251 #define vpx_sub_pixel_avg_variance64x32 vpx_sub_pixel_avg_variance64x32_c
1252 
1253 uint32_t vpx_sub_pixel_avg_variance64x64_c(const uint8_t* src_ptr,
1254                                            int src_stride,
1255                                            int x_offset,
1256                                            int y_offset,
1257                                            const uint8_t* ref_ptr,
1258                                            int ref_stride,
1259                                            uint32_t* sse,
1260                                            const uint8_t* second_pred);
1261 #define vpx_sub_pixel_avg_variance64x64 vpx_sub_pixel_avg_variance64x64_c
1262 
1263 uint32_t vpx_sub_pixel_avg_variance8x16_c(const uint8_t* src_ptr,
1264                                           int src_stride,
1265                                           int x_offset,
1266                                           int y_offset,
1267                                           const uint8_t* ref_ptr,
1268                                           int ref_stride,
1269                                           uint32_t* sse,
1270                                           const uint8_t* second_pred);
1271 #define vpx_sub_pixel_avg_variance8x16 vpx_sub_pixel_avg_variance8x16_c
1272 
1273 uint32_t vpx_sub_pixel_avg_variance8x4_c(const uint8_t* src_ptr,
1274                                          int src_stride,
1275                                          int x_offset,
1276                                          int y_offset,
1277                                          const uint8_t* ref_ptr,
1278                                          int ref_stride,
1279                                          uint32_t* sse,
1280                                          const uint8_t* second_pred);
1281 #define vpx_sub_pixel_avg_variance8x4 vpx_sub_pixel_avg_variance8x4_c
1282 
1283 uint32_t vpx_sub_pixel_avg_variance8x8_c(const uint8_t* src_ptr,
1284                                          int src_stride,
1285                                          int x_offset,
1286                                          int y_offset,
1287                                          const uint8_t* ref_ptr,
1288                                          int ref_stride,
1289                                          uint32_t* sse,
1290                                          const uint8_t* second_pred);
1291 #define vpx_sub_pixel_avg_variance8x8 vpx_sub_pixel_avg_variance8x8_c
1292 
1293 uint32_t vpx_sub_pixel_variance16x16_c(const uint8_t* src_ptr,
1294                                        int src_stride,
1295                                        int x_offset,
1296                                        int y_offset,
1297                                        const uint8_t* ref_ptr,
1298                                        int ref_stride,
1299                                        uint32_t* sse);
1300 #define vpx_sub_pixel_variance16x16 vpx_sub_pixel_variance16x16_c
1301 
1302 uint32_t vpx_sub_pixel_variance16x32_c(const uint8_t* src_ptr,
1303                                        int src_stride,
1304                                        int x_offset,
1305                                        int y_offset,
1306                                        const uint8_t* ref_ptr,
1307                                        int ref_stride,
1308                                        uint32_t* sse);
1309 #define vpx_sub_pixel_variance16x32 vpx_sub_pixel_variance16x32_c
1310 
1311 uint32_t vpx_sub_pixel_variance16x8_c(const uint8_t* src_ptr,
1312                                       int src_stride,
1313                                       int x_offset,
1314                                       int y_offset,
1315                                       const uint8_t* ref_ptr,
1316                                       int ref_stride,
1317                                       uint32_t* sse);
1318 #define vpx_sub_pixel_variance16x8 vpx_sub_pixel_variance16x8_c
1319 
1320 uint32_t vpx_sub_pixel_variance32x16_c(const uint8_t* src_ptr,
1321                                        int src_stride,
1322                                        int x_offset,
1323                                        int y_offset,
1324                                        const uint8_t* ref_ptr,
1325                                        int ref_stride,
1326                                        uint32_t* sse);
1327 #define vpx_sub_pixel_variance32x16 vpx_sub_pixel_variance32x16_c
1328 
1329 uint32_t vpx_sub_pixel_variance32x32_c(const uint8_t* src_ptr,
1330                                        int src_stride,
1331                                        int x_offset,
1332                                        int y_offset,
1333                                        const uint8_t* ref_ptr,
1334                                        int ref_stride,
1335                                        uint32_t* sse);
1336 #define vpx_sub_pixel_variance32x32 vpx_sub_pixel_variance32x32_c
1337 
1338 uint32_t vpx_sub_pixel_variance32x64_c(const uint8_t* src_ptr,
1339                                        int src_stride,
1340                                        int x_offset,
1341                                        int y_offset,
1342                                        const uint8_t* ref_ptr,
1343                                        int ref_stride,
1344                                        uint32_t* sse);
1345 #define vpx_sub_pixel_variance32x64 vpx_sub_pixel_variance32x64_c
1346 
1347 uint32_t vpx_sub_pixel_variance4x4_c(const uint8_t* src_ptr,
1348                                      int src_stride,
1349                                      int x_offset,
1350                                      int y_offset,
1351                                      const uint8_t* ref_ptr,
1352                                      int ref_stride,
1353                                      uint32_t* sse);
1354 #define vpx_sub_pixel_variance4x4 vpx_sub_pixel_variance4x4_c
1355 
1356 uint32_t vpx_sub_pixel_variance4x8_c(const uint8_t* src_ptr,
1357                                      int src_stride,
1358                                      int x_offset,
1359                                      int y_offset,
1360                                      const uint8_t* ref_ptr,
1361                                      int ref_stride,
1362                                      uint32_t* sse);
1363 #define vpx_sub_pixel_variance4x8 vpx_sub_pixel_variance4x8_c
1364 
1365 uint32_t vpx_sub_pixel_variance64x32_c(const uint8_t* src_ptr,
1366                                        int src_stride,
1367                                        int x_offset,
1368                                        int y_offset,
1369                                        const uint8_t* ref_ptr,
1370                                        int ref_stride,
1371                                        uint32_t* sse);
1372 #define vpx_sub_pixel_variance64x32 vpx_sub_pixel_variance64x32_c
1373 
1374 uint32_t vpx_sub_pixel_variance64x64_c(const uint8_t* src_ptr,
1375                                        int src_stride,
1376                                        int x_offset,
1377                                        int y_offset,
1378                                        const uint8_t* ref_ptr,
1379                                        int ref_stride,
1380                                        uint32_t* sse);
1381 #define vpx_sub_pixel_variance64x64 vpx_sub_pixel_variance64x64_c
1382 
1383 uint32_t vpx_sub_pixel_variance8x16_c(const uint8_t* src_ptr,
1384                                       int src_stride,
1385                                       int x_offset,
1386                                       int y_offset,
1387                                       const uint8_t* ref_ptr,
1388                                       int ref_stride,
1389                                       uint32_t* sse);
1390 #define vpx_sub_pixel_variance8x16 vpx_sub_pixel_variance8x16_c
1391 
1392 uint32_t vpx_sub_pixel_variance8x4_c(const uint8_t* src_ptr,
1393                                      int src_stride,
1394                                      int x_offset,
1395                                      int y_offset,
1396                                      const uint8_t* ref_ptr,
1397                                      int ref_stride,
1398                                      uint32_t* sse);
1399 #define vpx_sub_pixel_variance8x4 vpx_sub_pixel_variance8x4_c
1400 
1401 uint32_t vpx_sub_pixel_variance8x8_c(const uint8_t* src_ptr,
1402                                      int src_stride,
1403                                      int x_offset,
1404                                      int y_offset,
1405                                      const uint8_t* ref_ptr,
1406                                      int ref_stride,
1407                                      uint32_t* sse);
1408 #define vpx_sub_pixel_variance8x8 vpx_sub_pixel_variance8x8_c
1409 
1410 void vpx_subtract_block_c(int rows,
1411                           int cols,
1412                           int16_t* diff_ptr,
1413                           ptrdiff_t diff_stride,
1414                           const uint8_t* src_ptr,
1415                           ptrdiff_t src_stride,
1416                           const uint8_t* pred_ptr,
1417                           ptrdiff_t pred_stride);
1418 #define vpx_subtract_block vpx_subtract_block_c
1419 
1420 uint64_t vpx_sum_squares_2d_i16_c(const int16_t* src, int stride, int size);
1421 #define vpx_sum_squares_2d_i16 vpx_sum_squares_2d_i16_c
1422 
1423 void vpx_tm_predictor_16x16_c(uint8_t* dst,
1424                               ptrdiff_t stride,
1425                               const uint8_t* above,
1426                               const uint8_t* left);
1427 #define vpx_tm_predictor_16x16 vpx_tm_predictor_16x16_c
1428 
1429 void vpx_tm_predictor_32x32_c(uint8_t* dst,
1430                               ptrdiff_t stride,
1431                               const uint8_t* above,
1432                               const uint8_t* left);
1433 #define vpx_tm_predictor_32x32 vpx_tm_predictor_32x32_c
1434 
1435 void vpx_tm_predictor_4x4_c(uint8_t* dst,
1436                             ptrdiff_t stride,
1437                             const uint8_t* above,
1438                             const uint8_t* left);
1439 #define vpx_tm_predictor_4x4 vpx_tm_predictor_4x4_c
1440 
1441 void vpx_tm_predictor_8x8_c(uint8_t* dst,
1442                             ptrdiff_t stride,
1443                             const uint8_t* above,
1444                             const uint8_t* left);
1445 #define vpx_tm_predictor_8x8 vpx_tm_predictor_8x8_c
1446 
1447 void vpx_v_predictor_16x16_c(uint8_t* dst,
1448                              ptrdiff_t stride,
1449                              const uint8_t* above,
1450                              const uint8_t* left);
1451 #define vpx_v_predictor_16x16 vpx_v_predictor_16x16_c
1452 
1453 void vpx_v_predictor_32x32_c(uint8_t* dst,
1454                              ptrdiff_t stride,
1455                              const uint8_t* above,
1456                              const uint8_t* left);
1457 #define vpx_v_predictor_32x32 vpx_v_predictor_32x32_c
1458 
1459 void vpx_v_predictor_4x4_c(uint8_t* dst,
1460                            ptrdiff_t stride,
1461                            const uint8_t* above,
1462                            const uint8_t* left);
1463 #define vpx_v_predictor_4x4 vpx_v_predictor_4x4_c
1464 
1465 void vpx_v_predictor_8x8_c(uint8_t* dst,
1466                            ptrdiff_t stride,
1467                            const uint8_t* above,
1468                            const uint8_t* left);
1469 #define vpx_v_predictor_8x8 vpx_v_predictor_8x8_c
1470 
1471 unsigned int vpx_variance16x16_c(const uint8_t* src_ptr,
1472                                  int src_stride,
1473                                  const uint8_t* ref_ptr,
1474                                  int ref_stride,
1475                                  unsigned int* sse);
1476 #define vpx_variance16x16 vpx_variance16x16_c
1477 
1478 unsigned int vpx_variance16x32_c(const uint8_t* src_ptr,
1479                                  int src_stride,
1480                                  const uint8_t* ref_ptr,
1481                                  int ref_stride,
1482                                  unsigned int* sse);
1483 #define vpx_variance16x32 vpx_variance16x32_c
1484 
1485 unsigned int vpx_variance16x8_c(const uint8_t* src_ptr,
1486                                 int src_stride,
1487                                 const uint8_t* ref_ptr,
1488                                 int ref_stride,
1489                                 unsigned int* sse);
1490 #define vpx_variance16x8 vpx_variance16x8_c
1491 
1492 unsigned int vpx_variance32x16_c(const uint8_t* src_ptr,
1493                                  int src_stride,
1494                                  const uint8_t* ref_ptr,
1495                                  int ref_stride,
1496                                  unsigned int* sse);
1497 #define vpx_variance32x16 vpx_variance32x16_c
1498 
1499 unsigned int vpx_variance32x32_c(const uint8_t* src_ptr,
1500                                  int src_stride,
1501                                  const uint8_t* ref_ptr,
1502                                  int ref_stride,
1503                                  unsigned int* sse);
1504 #define vpx_variance32x32 vpx_variance32x32_c
1505 
1506 unsigned int vpx_variance32x64_c(const uint8_t* src_ptr,
1507                                  int src_stride,
1508                                  const uint8_t* ref_ptr,
1509                                  int ref_stride,
1510                                  unsigned int* sse);
1511 #define vpx_variance32x64 vpx_variance32x64_c
1512 
1513 unsigned int vpx_variance4x4_c(const uint8_t* src_ptr,
1514                                int src_stride,
1515                                const uint8_t* ref_ptr,
1516                                int ref_stride,
1517                                unsigned int* sse);
1518 #define vpx_variance4x4 vpx_variance4x4_c
1519 
1520 unsigned int vpx_variance4x8_c(const uint8_t* src_ptr,
1521                                int src_stride,
1522                                const uint8_t* ref_ptr,
1523                                int ref_stride,
1524                                unsigned int* sse);
1525 #define vpx_variance4x8 vpx_variance4x8_c
1526 
1527 unsigned int vpx_variance64x32_c(const uint8_t* src_ptr,
1528                                  int src_stride,
1529                                  const uint8_t* ref_ptr,
1530                                  int ref_stride,
1531                                  unsigned int* sse);
1532 #define vpx_variance64x32 vpx_variance64x32_c
1533 
1534 unsigned int vpx_variance64x64_c(const uint8_t* src_ptr,
1535                                  int src_stride,
1536                                  const uint8_t* ref_ptr,
1537                                  int ref_stride,
1538                                  unsigned int* sse);
1539 #define vpx_variance64x64 vpx_variance64x64_c
1540 
1541 unsigned int vpx_variance8x16_c(const uint8_t* src_ptr,
1542                                 int src_stride,
1543                                 const uint8_t* ref_ptr,
1544                                 int ref_stride,
1545                                 unsigned int* sse);
1546 #define vpx_variance8x16 vpx_variance8x16_c
1547 
1548 unsigned int vpx_variance8x4_c(const uint8_t* src_ptr,
1549                                int src_stride,
1550                                const uint8_t* ref_ptr,
1551                                int ref_stride,
1552                                unsigned int* sse);
1553 #define vpx_variance8x4 vpx_variance8x4_c
1554 
1555 unsigned int vpx_variance8x8_c(const uint8_t* src_ptr,
1556                                int src_stride,
1557                                const uint8_t* ref_ptr,
1558                                int ref_stride,
1559                                unsigned int* sse);
1560 #define vpx_variance8x8 vpx_variance8x8_c
1561 
1562 void vpx_ve_predictor_4x4_c(uint8_t* dst,
1563                             ptrdiff_t stride,
1564                             const uint8_t* above,
1565                             const uint8_t* left);
1566 #define vpx_ve_predictor_4x4 vpx_ve_predictor_4x4_c
1567 
1568 int vpx_vector_var_c(const int16_t* ref, const int16_t* src, const int bwl);
1569 #define vpx_vector_var vpx_vector_var_c
1570 
1571 void vpx_dsp_rtcd(void);
1572 
1573 #include "vpx_config.h"
1574 
1575 #ifdef RTCD_C
1576 #include "vpx_ports/arm.h"
setup_rtcd_internal(void)1577 static void setup_rtcd_internal(void) {
1578   int flags = arm_cpu_caps();
1579 
1580   (void)flags;
1581 }
1582 #endif
1583 
1584 #ifdef __cplusplus
1585 }  // extern "C"
1586 #endif
1587 
1588 #endif
1589