1#ifndef VP9_RTCD_H_
2#define VP9_RTCD_H_
3
4#ifdef RTCD_C
5#define RTCD_EXTERN
6#else
7#define RTCD_EXTERN extern
8#endif
9
10/*
11 * VP9
12 */
13
14#include "vpx/vpx_integer.h"
15#include "vp9/common/vp9_enums.h"
16#include "vp9/common/vp9_idct.h"
17
18struct macroblockd;
19
20/* Encoder forward decls */
21struct macroblock;
22struct vp9_variance_vtable;
23struct search_site_config;
24struct mv;
25union int_mv;
26struct yv12_buffer_config;
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32int64_t vp9_block_error_c(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
33#define vp9_block_error vp9_block_error_c
34
35void vp9_convolve8_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
36#define vp9_convolve8 vp9_convolve8_c
37
38void vp9_convolve8_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
39#define vp9_convolve8_avg vp9_convolve8_avg_c
40
41void vp9_convolve8_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
42#define vp9_convolve8_avg_horiz vp9_convolve8_avg_horiz_c
43
44void vp9_convolve8_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
45#define vp9_convolve8_avg_vert vp9_convolve8_avg_vert_c
46
47void vp9_convolve8_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
48#define vp9_convolve8_horiz vp9_convolve8_horiz_c
49
50void vp9_convolve8_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
51#define vp9_convolve8_vert vp9_convolve8_vert_c
52
53void vp9_convolve_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
54#define vp9_convolve_avg vp9_convolve_avg_c
55
56void vp9_convolve_copy_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h);
57#define vp9_convolve_copy vp9_convolve_copy_c
58
59void vp9_d117_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
60#define vp9_d117_predictor_16x16 vp9_d117_predictor_16x16_c
61
62void vp9_d117_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
63#define vp9_d117_predictor_32x32 vp9_d117_predictor_32x32_c
64
65void vp9_d117_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
66#define vp9_d117_predictor_4x4 vp9_d117_predictor_4x4_c
67
68void vp9_d117_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
69#define vp9_d117_predictor_8x8 vp9_d117_predictor_8x8_c
70
71void vp9_d135_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
72#define vp9_d135_predictor_16x16 vp9_d135_predictor_16x16_c
73
74void vp9_d135_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
75#define vp9_d135_predictor_32x32 vp9_d135_predictor_32x32_c
76
77void vp9_d135_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
78#define vp9_d135_predictor_4x4 vp9_d135_predictor_4x4_c
79
80void vp9_d135_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
81#define vp9_d135_predictor_8x8 vp9_d135_predictor_8x8_c
82
83void vp9_d153_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
84#define vp9_d153_predictor_16x16 vp9_d153_predictor_16x16_c
85
86void vp9_d153_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
87#define vp9_d153_predictor_32x32 vp9_d153_predictor_32x32_c
88
89void vp9_d153_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
90#define vp9_d153_predictor_4x4 vp9_d153_predictor_4x4_c
91
92void vp9_d153_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
93#define vp9_d153_predictor_8x8 vp9_d153_predictor_8x8_c
94
95void vp9_d207_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
96#define vp9_d207_predictor_16x16 vp9_d207_predictor_16x16_c
97
98void vp9_d207_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
99#define vp9_d207_predictor_32x32 vp9_d207_predictor_32x32_c
100
101void vp9_d207_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
102#define vp9_d207_predictor_4x4 vp9_d207_predictor_4x4_c
103
104void vp9_d207_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
105#define vp9_d207_predictor_8x8 vp9_d207_predictor_8x8_c
106
107void vp9_d45_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
108#define vp9_d45_predictor_16x16 vp9_d45_predictor_16x16_c
109
110void vp9_d45_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
111#define vp9_d45_predictor_32x32 vp9_d45_predictor_32x32_c
112
113void vp9_d45_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
114#define vp9_d45_predictor_4x4 vp9_d45_predictor_4x4_c
115
116void vp9_d45_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
117#define vp9_d45_predictor_8x8 vp9_d45_predictor_8x8_c
118
119void vp9_d63_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
120#define vp9_d63_predictor_16x16 vp9_d63_predictor_16x16_c
121
122void vp9_d63_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
123#define vp9_d63_predictor_32x32 vp9_d63_predictor_32x32_c
124
125void vp9_d63_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
126#define vp9_d63_predictor_4x4 vp9_d63_predictor_4x4_c
127
128void vp9_d63_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
129#define vp9_d63_predictor_8x8 vp9_d63_predictor_8x8_c
130
131void vp9_dc_128_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
132#define vp9_dc_128_predictor_16x16 vp9_dc_128_predictor_16x16_c
133
134void vp9_dc_128_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
135#define vp9_dc_128_predictor_32x32 vp9_dc_128_predictor_32x32_c
136
137void vp9_dc_128_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
138#define vp9_dc_128_predictor_4x4 vp9_dc_128_predictor_4x4_c
139
140void vp9_dc_128_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
141#define vp9_dc_128_predictor_8x8 vp9_dc_128_predictor_8x8_c
142
143void vp9_dc_left_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
144#define vp9_dc_left_predictor_16x16 vp9_dc_left_predictor_16x16_c
145
146void vp9_dc_left_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
147#define vp9_dc_left_predictor_32x32 vp9_dc_left_predictor_32x32_c
148
149void vp9_dc_left_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
150#define vp9_dc_left_predictor_4x4 vp9_dc_left_predictor_4x4_c
151
152void vp9_dc_left_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
153#define vp9_dc_left_predictor_8x8 vp9_dc_left_predictor_8x8_c
154
155void vp9_dc_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
156#define vp9_dc_predictor_16x16 vp9_dc_predictor_16x16_c
157
158void vp9_dc_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
159#define vp9_dc_predictor_32x32 vp9_dc_predictor_32x32_c
160
161void vp9_dc_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
162#define vp9_dc_predictor_4x4 vp9_dc_predictor_4x4_c
163
164void vp9_dc_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
165#define vp9_dc_predictor_8x8 vp9_dc_predictor_8x8_c
166
167void vp9_dc_top_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
168#define vp9_dc_top_predictor_16x16 vp9_dc_top_predictor_16x16_c
169
170void vp9_dc_top_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
171#define vp9_dc_top_predictor_32x32 vp9_dc_top_predictor_32x32_c
172
173void vp9_dc_top_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
174#define vp9_dc_top_predictor_4x4 vp9_dc_top_predictor_4x4_c
175
176void vp9_dc_top_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
177#define vp9_dc_top_predictor_8x8 vp9_dc_top_predictor_8x8_c
178
179int vp9_diamond_search_sad_c(const struct macroblock *x, const struct search_site_config *cfg,  struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
180#define vp9_diamond_search_sad vp9_diamond_search_sad_c
181
182void vp9_fdct16x16_c(const int16_t *input, tran_low_t *output, int stride);
183#define vp9_fdct16x16 vp9_fdct16x16_c
184
185void vp9_fdct16x16_1_c(const int16_t *input, tran_low_t *output, int stride);
186#define vp9_fdct16x16_1 vp9_fdct16x16_1_c
187
188void vp9_fdct32x32_c(const int16_t *input, tran_low_t *output, int stride);
189#define vp9_fdct32x32 vp9_fdct32x32_c
190
191void vp9_fdct32x32_1_c(const int16_t *input, tran_low_t *output, int stride);
192#define vp9_fdct32x32_1 vp9_fdct32x32_1_c
193
194void vp9_fdct32x32_rd_c(const int16_t *input, tran_low_t *output, int stride);
195#define vp9_fdct32x32_rd vp9_fdct32x32_rd_c
196
197void vp9_fdct4x4_c(const int16_t *input, tran_low_t *output, int stride);
198#define vp9_fdct4x4 vp9_fdct4x4_c
199
200void vp9_fdct4x4_1_c(const int16_t *input, tran_low_t *output, int stride);
201#define vp9_fdct4x4_1 vp9_fdct4x4_1_c
202
203void vp9_fdct8x8_c(const int16_t *input, tran_low_t *output, int stride);
204void vp9_fdct8x8_neon(const int16_t *input, tran_low_t *output, int stride);
205#define vp9_fdct8x8 vp9_fdct8x8_neon
206
207void vp9_fdct8x8_1_c(const int16_t *input, tran_low_t *output, int stride);
208void vp9_fdct8x8_1_neon(const int16_t *input, tran_low_t *output, int stride);
209#define vp9_fdct8x8_1 vp9_fdct8x8_1_neon
210
211void vp9_fht16x16_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
212#define vp9_fht16x16 vp9_fht16x16_c
213
214void vp9_fht4x4_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
215#define vp9_fht4x4 vp9_fht4x4_c
216
217void vp9_fht8x8_c(const int16_t *input, tran_low_t *output, int stride, int tx_type);
218#define vp9_fht8x8 vp9_fht8x8_c
219
220int vp9_full_range_search_c(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
221#define vp9_full_range_search vp9_full_range_search_c
222
223int vp9_full_search_sad_c(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv);
224#define vp9_full_search_sad vp9_full_search_sad_c
225
226void vp9_fwht4x4_c(const int16_t *input, tran_low_t *output, int stride);
227#define vp9_fwht4x4 vp9_fwht4x4_c
228
229void vp9_get16x16var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
230void vp9_get16x16var_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
231#define vp9_get16x16var vp9_get16x16var_neon
232
233void vp9_get8x8var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
234void vp9_get8x8var_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
235#define vp9_get8x8var vp9_get8x8var_neon
236
237unsigned int vp9_get_mb_ss_c(const int16_t *);
238#define vp9_get_mb_ss vp9_get_mb_ss_c
239
240void vp9_h_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
241#define vp9_h_predictor_16x16 vp9_h_predictor_16x16_c
242
243void vp9_h_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
244#define vp9_h_predictor_32x32 vp9_h_predictor_32x32_c
245
246void vp9_h_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
247#define vp9_h_predictor_4x4 vp9_h_predictor_4x4_c
248
249void vp9_h_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
250#define vp9_h_predictor_8x8 vp9_h_predictor_8x8_c
251
252void vp9_idct16x16_10_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
253#define vp9_idct16x16_10_add vp9_idct16x16_10_add_c
254
255void vp9_idct16x16_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
256#define vp9_idct16x16_1_add vp9_idct16x16_1_add_c
257
258void vp9_idct16x16_256_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
259#define vp9_idct16x16_256_add vp9_idct16x16_256_add_c
260
261void vp9_idct32x32_1024_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
262#define vp9_idct32x32_1024_add vp9_idct32x32_1024_add_c
263
264void vp9_idct32x32_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
265#define vp9_idct32x32_1_add vp9_idct32x32_1_add_c
266
267void vp9_idct32x32_34_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
268#define vp9_idct32x32_34_add vp9_idct32x32_34_add_c
269
270void vp9_idct4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
271#define vp9_idct4x4_16_add vp9_idct4x4_16_add_c
272
273void vp9_idct4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
274#define vp9_idct4x4_1_add vp9_idct4x4_1_add_c
275
276void vp9_idct8x8_12_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
277#define vp9_idct8x8_12_add vp9_idct8x8_12_add_c
278
279void vp9_idct8x8_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
280#define vp9_idct8x8_1_add vp9_idct8x8_1_add_c
281
282void vp9_idct8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
283#define vp9_idct8x8_64_add vp9_idct8x8_64_add_c
284
285void vp9_iht16x16_256_add_c(const tran_low_t *input, uint8_t *output, int pitch, int tx_type);
286#define vp9_iht16x16_256_add vp9_iht16x16_256_add_c
287
288void vp9_iht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
289#define vp9_iht4x4_16_add vp9_iht4x4_16_add_c
290
291void vp9_iht8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride, int tx_type);
292#define vp9_iht8x8_64_add vp9_iht8x8_64_add_c
293
294void vp9_iwht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
295#define vp9_iwht4x4_16_add vp9_iwht4x4_16_add_c
296
297void vp9_iwht4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride);
298#define vp9_iwht4x4_1_add vp9_iwht4x4_1_add_c
299
300void vp9_lpf_horizontal_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
301#define vp9_lpf_horizontal_16 vp9_lpf_horizontal_16_c
302
303void vp9_lpf_horizontal_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
304#define vp9_lpf_horizontal_4 vp9_lpf_horizontal_4_c
305
306void vp9_lpf_horizontal_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
307#define vp9_lpf_horizontal_4_dual vp9_lpf_horizontal_4_dual_c
308
309void vp9_lpf_horizontal_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
310#define vp9_lpf_horizontal_8 vp9_lpf_horizontal_8_c
311
312void vp9_lpf_horizontal_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
313#define vp9_lpf_horizontal_8_dual vp9_lpf_horizontal_8_dual_c
314
315void vp9_lpf_vertical_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
316#define vp9_lpf_vertical_16 vp9_lpf_vertical_16_c
317
318void vp9_lpf_vertical_16_dual_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
319#define vp9_lpf_vertical_16_dual vp9_lpf_vertical_16_dual_c
320
321void vp9_lpf_vertical_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
322#define vp9_lpf_vertical_4 vp9_lpf_vertical_4_c
323
324void vp9_lpf_vertical_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
325#define vp9_lpf_vertical_4_dual vp9_lpf_vertical_4_dual_c
326
327void vp9_lpf_vertical_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
328#define vp9_lpf_vertical_8 vp9_lpf_vertical_8_c
329
330void vp9_lpf_vertical_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1);
331#define vp9_lpf_vertical_8_dual vp9_lpf_vertical_8_dual_c
332
333unsigned int vp9_mse16x16_c(const uint8_t *src_ptr, int  source_stride, const uint8_t *ref_ptr, int  recon_stride, unsigned int *sse);
334#define vp9_mse16x16 vp9_mse16x16_c
335
336unsigned int vp9_mse16x8_c(const uint8_t *src_ptr, int  source_stride, const uint8_t *ref_ptr, int  recon_stride, unsigned int *sse);
337#define vp9_mse16x8 vp9_mse16x8_c
338
339unsigned int vp9_mse8x16_c(const uint8_t *src_ptr, int  source_stride, const uint8_t *ref_ptr, int  recon_stride, unsigned int *sse);
340#define vp9_mse8x16 vp9_mse8x16_c
341
342unsigned int vp9_mse8x8_c(const uint8_t *src_ptr, int  source_stride, const uint8_t *ref_ptr, int  recon_stride, unsigned int *sse);
343#define vp9_mse8x8 vp9_mse8x8_c
344
345void vp9_quantize_b_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, int zbin_oq_value, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
346#define vp9_quantize_b vp9_quantize_b_c
347
348void vp9_quantize_b_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, int zbin_oq_value, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
349#define vp9_quantize_b_32x32 vp9_quantize_b_32x32_c
350
351void vp9_quantize_fp_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, int zbin_oq_value, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
352void vp9_quantize_fp_neon(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, int zbin_oq_value, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
353#define vp9_quantize_fp vp9_quantize_fp_neon
354
355void vp9_quantize_fp_32x32_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, int zbin_oq_value, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
356#define vp9_quantize_fp_32x32 vp9_quantize_fp_32x32_c
357
358int vp9_refining_search_sad_c(const struct macroblock *x, struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv);
359#define vp9_refining_search_sad vp9_refining_search_sad_c
360
361unsigned int vp9_sad16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int  ref_stride);
362unsigned int vp9_sad16x16_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int  ref_stride);
363#define vp9_sad16x16 vp9_sad16x16_neon
364
365unsigned int vp9_sad16x16_avg_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int  ref_stride, const uint8_t *second_pred);
366#define vp9_sad16x16_avg vp9_sad16x16_avg_c
367
368void vp9_sad16x16x3_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int  ref_stride, unsigned int *sad_array);
369#define vp9_sad16x16x3 vp9_sad16x16x3_c
370
371void vp9_sad16x16x4d_c(const uint8_t *src_ptr, int  src_stride, const uint8_t* const ref_ptr[], int  ref_stride, unsigned int *sad_array);
372#define vp9_sad16x16x4d vp9_sad16x16x4d_c
373
374void vp9_sad16x16x8_c(const uint8_t *src_ptr, int  src_stride, const uint8_t *ref_ptr, int  ref_stride, uint32_t *sad_array);
375#define vp9_sad16x16x8 vp9_sad16x16x8_c
376
377unsigned int vp9_sad16x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride);
378#define vp9_sad16x32 vp9_sad16x32_c
379
380unsigned int vp9_sad16x32_avg_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
381#define vp9_sad16x32_avg vp9_sad16x32_avg_c
382
383void vp9_sad16x32x4d_c(const uint8_t *src_ptr, int  src_stride, const uint8_t* const ref_ptr[], int  ref_stride, unsigned int *sad_array);
384#define vp9_sad16x32x4d vp9_sad16x32x4d_c
385
386unsigned int vp9_sad16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int  ref_stride);
387#define vp9_sad16x8 vp9_sad16x8_c
388
389unsigned int vp9_sad16x8_avg_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int  ref_stride, const uint8_t *second_pred);
390#define vp9_sad16x8_avg vp9_sad16x8_avg_c
391
392void vp9_sad16x8x3_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int  ref_stride, unsigned int *sad_array);
393#define vp9_sad16x8x3 vp9_sad16x8x3_c
394
395void vp9_sad16x8x4d_c(const uint8_t *src_ptr, int  src_stride, const uint8_t* const ref_ptr[], int  ref_stride, unsigned int *sad_array);
396#define vp9_sad16x8x4d vp9_sad16x8x4d_c
397
398void vp9_sad16x8x8_c(const uint8_t *src_ptr, int  src_stride, const uint8_t *ref_ptr, int  ref_stride, uint32_t *sad_array);
399#define vp9_sad16x8x8 vp9_sad16x8x8_c
400
401unsigned int vp9_sad32x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride);
402#define vp9_sad32x16 vp9_sad32x16_c
403
404unsigned int vp9_sad32x16_avg_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
405#define vp9_sad32x16_avg vp9_sad32x16_avg_c
406
407void vp9_sad32x16x4d_c(const uint8_t *src_ptr, int  src_stride, const uint8_t* const ref_ptr[], int  ref_stride, unsigned int *sad_array);
408#define vp9_sad32x16x4d vp9_sad32x16x4d_c
409
410unsigned int vp9_sad32x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int  ref_stride);
411unsigned int vp9_sad32x32_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int  ref_stride);
412#define vp9_sad32x32 vp9_sad32x32_neon
413
414unsigned int vp9_sad32x32_avg_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int  ref_stride, const uint8_t *second_pred);
415#define vp9_sad32x32_avg vp9_sad32x32_avg_c
416
417void vp9_sad32x32x3_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int  ref_stride, unsigned int *sad_array);
418#define vp9_sad32x32x3 vp9_sad32x32x3_c
419
420void vp9_sad32x32x4d_c(const uint8_t *src_ptr, int  src_stride, const uint8_t* const ref_ptr[], int  ref_stride, unsigned int *sad_array);
421#define vp9_sad32x32x4d vp9_sad32x32x4d_c
422
423void vp9_sad32x32x8_c(const uint8_t *src_ptr, int  src_stride, const uint8_t *ref_ptr, int  ref_stride, uint32_t *sad_array);
424#define vp9_sad32x32x8 vp9_sad32x32x8_c
425
426unsigned int vp9_sad32x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride);
427#define vp9_sad32x64 vp9_sad32x64_c
428
429unsigned int vp9_sad32x64_avg_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
430#define vp9_sad32x64_avg vp9_sad32x64_avg_c
431
432void vp9_sad32x64x4d_c(const uint8_t *src_ptr, int  src_stride, const uint8_t* const ref_ptr[], int  ref_stride, unsigned int *sad_array);
433#define vp9_sad32x64x4d vp9_sad32x64x4d_c
434
435unsigned int vp9_sad4x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int  ref_stride);
436#define vp9_sad4x4 vp9_sad4x4_c
437
438unsigned int vp9_sad4x4_avg_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int  ref_stride, const uint8_t *second_pred);
439#define vp9_sad4x4_avg vp9_sad4x4_avg_c
440
441void vp9_sad4x4x3_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int  ref_stride, unsigned int *sad_array);
442#define vp9_sad4x4x3 vp9_sad4x4x3_c
443
444void vp9_sad4x4x4d_c(const uint8_t *src_ptr, int  src_stride, const uint8_t* const ref_ptr[], int  ref_stride, unsigned int *sad_array);
445#define vp9_sad4x4x4d vp9_sad4x4x4d_c
446
447void vp9_sad4x4x8_c(const uint8_t *src_ptr, int  src_stride, const uint8_t *ref_ptr, int  ref_stride, uint32_t *sad_array);
448#define vp9_sad4x4x8 vp9_sad4x4x8_c
449
450unsigned int vp9_sad4x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride);
451#define vp9_sad4x8 vp9_sad4x8_c
452
453unsigned int vp9_sad4x8_avg_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
454#define vp9_sad4x8_avg vp9_sad4x8_avg_c
455
456void vp9_sad4x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t* const ref_ptr[], int ref_stride, unsigned int *sad_array);
457#define vp9_sad4x8x4d vp9_sad4x8x4d_c
458
459void vp9_sad4x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
460#define vp9_sad4x8x8 vp9_sad4x8x8_c
461
462unsigned int vp9_sad64x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride);
463#define vp9_sad64x32 vp9_sad64x32_c
464
465unsigned int vp9_sad64x32_avg_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
466#define vp9_sad64x32_avg vp9_sad64x32_avg_c
467
468void vp9_sad64x32x4d_c(const uint8_t *src_ptr, int  src_stride, const uint8_t* const ref_ptr[], int  ref_stride, unsigned int *sad_array);
469#define vp9_sad64x32x4d vp9_sad64x32x4d_c
470
471unsigned int vp9_sad64x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int  ref_stride);
472unsigned int vp9_sad64x64_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int  ref_stride);
473#define vp9_sad64x64 vp9_sad64x64_neon
474
475unsigned int vp9_sad64x64_avg_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int  ref_stride, const uint8_t *second_pred);
476#define vp9_sad64x64_avg vp9_sad64x64_avg_c
477
478void vp9_sad64x64x3_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int  ref_stride, unsigned int *sad_array);
479#define vp9_sad64x64x3 vp9_sad64x64x3_c
480
481void vp9_sad64x64x4d_c(const uint8_t *src_ptr, int  src_stride, const uint8_t* const ref_ptr[], int  ref_stride, unsigned int *sad_array);
482#define vp9_sad64x64x4d vp9_sad64x64x4d_c
483
484void vp9_sad64x64x8_c(const uint8_t *src_ptr, int  src_stride, const uint8_t *ref_ptr, int  ref_stride, uint32_t *sad_array);
485#define vp9_sad64x64x8 vp9_sad64x64x8_c
486
487unsigned int vp9_sad8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int  ref_stride);
488#define vp9_sad8x16 vp9_sad8x16_c
489
490unsigned int vp9_sad8x16_avg_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int  ref_stride, const uint8_t *second_pred);
491#define vp9_sad8x16_avg vp9_sad8x16_avg_c
492
493void vp9_sad8x16x3_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int  ref_stride, unsigned int *sad_array);
494#define vp9_sad8x16x3 vp9_sad8x16x3_c
495
496void vp9_sad8x16x4d_c(const uint8_t *src_ptr, int  src_stride, const uint8_t* const ref_ptr[], int  ref_stride, unsigned int *sad_array);
497#define vp9_sad8x16x4d vp9_sad8x16x4d_c
498
499void vp9_sad8x16x8_c(const uint8_t *src_ptr, int  src_stride, const uint8_t *ref_ptr, int  ref_stride, uint32_t *sad_array);
500#define vp9_sad8x16x8 vp9_sad8x16x8_c
501
502unsigned int vp9_sad8x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride);
503#define vp9_sad8x4 vp9_sad8x4_c
504
505unsigned int vp9_sad8x4_avg_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred);
506#define vp9_sad8x4_avg vp9_sad8x4_avg_c
507
508void vp9_sad8x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t* const ref_ptr[], int ref_stride, unsigned int *sad_array);
509#define vp9_sad8x4x4d vp9_sad8x4x4d_c
510
511void vp9_sad8x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array);
512#define vp9_sad8x4x8 vp9_sad8x4x8_c
513
514unsigned int vp9_sad8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int  ref_stride);
515unsigned int vp9_sad8x8_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int  ref_stride);
516#define vp9_sad8x8 vp9_sad8x8_neon
517
518unsigned int vp9_sad8x8_avg_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int  ref_stride, const uint8_t *second_pred);
519#define vp9_sad8x8_avg vp9_sad8x8_avg_c
520
521void vp9_sad8x8x3_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int  ref_stride, unsigned int *sad_array);
522#define vp9_sad8x8x3 vp9_sad8x8x3_c
523
524void vp9_sad8x8x4d_c(const uint8_t *src_ptr, int  src_stride, const uint8_t* const ref_ptr[], int  ref_stride, unsigned int *sad_array);
525#define vp9_sad8x8x4d vp9_sad8x8x4d_c
526
527void vp9_sad8x8x8_c(const uint8_t *src_ptr, int  src_stride, const uint8_t *ref_ptr, int  ref_stride, uint32_t *sad_array);
528#define vp9_sad8x8x8 vp9_sad8x8x8_c
529
530unsigned int vp9_sub_pixel_avg_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int  yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred);
531#define vp9_sub_pixel_avg_variance16x16 vp9_sub_pixel_avg_variance16x16_c
532
533unsigned int vp9_sub_pixel_avg_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int  yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred);
534#define vp9_sub_pixel_avg_variance16x32 vp9_sub_pixel_avg_variance16x32_c
535
536unsigned int vp9_sub_pixel_avg_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int  yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred);
537#define vp9_sub_pixel_avg_variance16x8 vp9_sub_pixel_avg_variance16x8_c
538
539unsigned int vp9_sub_pixel_avg_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int  yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred);
540#define vp9_sub_pixel_avg_variance32x16 vp9_sub_pixel_avg_variance32x16_c
541
542unsigned int vp9_sub_pixel_avg_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int  yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred);
543#define vp9_sub_pixel_avg_variance32x32 vp9_sub_pixel_avg_variance32x32_c
544
545unsigned int vp9_sub_pixel_avg_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int  yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred);
546#define vp9_sub_pixel_avg_variance32x64 vp9_sub_pixel_avg_variance32x64_c
547
548unsigned int vp9_sub_pixel_avg_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int  yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred);
549#define vp9_sub_pixel_avg_variance4x4 vp9_sub_pixel_avg_variance4x4_c
550
551unsigned int vp9_sub_pixel_avg_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred);
552#define vp9_sub_pixel_avg_variance4x8 vp9_sub_pixel_avg_variance4x8_c
553
554unsigned int vp9_sub_pixel_avg_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int  yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred);
555#define vp9_sub_pixel_avg_variance64x32 vp9_sub_pixel_avg_variance64x32_c
556
557unsigned int vp9_sub_pixel_avg_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int  yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred);
558#define vp9_sub_pixel_avg_variance64x64 vp9_sub_pixel_avg_variance64x64_c
559
560unsigned int vp9_sub_pixel_avg_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int  yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred);
561#define vp9_sub_pixel_avg_variance8x16 vp9_sub_pixel_avg_variance8x16_c
562
563unsigned int vp9_sub_pixel_avg_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred);
564#define vp9_sub_pixel_avg_variance8x4 vp9_sub_pixel_avg_variance8x4_c
565
566unsigned int vp9_sub_pixel_avg_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int  yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred);
567#define vp9_sub_pixel_avg_variance8x8 vp9_sub_pixel_avg_variance8x8_c
568
569unsigned int vp9_sub_pixel_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int  yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
570unsigned int vp9_sub_pixel_variance16x16_neon(const uint8_t *src_ptr, int source_stride, int xoffset, int  yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
571#define vp9_sub_pixel_variance16x16 vp9_sub_pixel_variance16x16_neon
572
573unsigned int vp9_sub_pixel_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int  yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
574#define vp9_sub_pixel_variance16x32 vp9_sub_pixel_variance16x32_c
575
576unsigned int vp9_sub_pixel_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int  yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
577#define vp9_sub_pixel_variance16x8 vp9_sub_pixel_variance16x8_c
578
579unsigned int vp9_sub_pixel_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int  yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
580#define vp9_sub_pixel_variance32x16 vp9_sub_pixel_variance32x16_c
581
582unsigned int vp9_sub_pixel_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int  yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
583unsigned int vp9_sub_pixel_variance32x32_neon(const uint8_t *src_ptr, int source_stride, int xoffset, int  yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
584#define vp9_sub_pixel_variance32x32 vp9_sub_pixel_variance32x32_neon
585
586unsigned int vp9_sub_pixel_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int  yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
587#define vp9_sub_pixel_variance32x64 vp9_sub_pixel_variance32x64_c
588
589unsigned int vp9_sub_pixel_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int  yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
590#define vp9_sub_pixel_variance4x4 vp9_sub_pixel_variance4x4_c
591
592unsigned int vp9_sub_pixel_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
593#define vp9_sub_pixel_variance4x8 vp9_sub_pixel_variance4x8_c
594
595unsigned int vp9_sub_pixel_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int  yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
596#define vp9_sub_pixel_variance64x32 vp9_sub_pixel_variance64x32_c
597
598unsigned int vp9_sub_pixel_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int  yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
599#define vp9_sub_pixel_variance64x64 vp9_sub_pixel_variance64x64_c
600
601unsigned int vp9_sub_pixel_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int  yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
602#define vp9_sub_pixel_variance8x16 vp9_sub_pixel_variance8x16_c
603
604unsigned int vp9_sub_pixel_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
605#define vp9_sub_pixel_variance8x4 vp9_sub_pixel_variance8x4_c
606
607unsigned int vp9_sub_pixel_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int  yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
608unsigned int vp9_sub_pixel_variance8x8_neon(const uint8_t *src_ptr, int source_stride, int xoffset, int  yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
609#define vp9_sub_pixel_variance8x8 vp9_sub_pixel_variance8x8_neon
610
611void vp9_subtract_block_c(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride);
612void vp9_subtract_block_neon(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride);
613#define vp9_subtract_block vp9_subtract_block_neon
614
615void vp9_temporal_filter_apply_c(uint8_t *frame1, unsigned int stride, uint8_t *frame2, unsigned int block_width, unsigned int block_height, int strength, int filter_weight, unsigned int *accumulator, uint16_t *count);
616#define vp9_temporal_filter_apply vp9_temporal_filter_apply_c
617
618void vp9_tm_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
619#define vp9_tm_predictor_16x16 vp9_tm_predictor_16x16_c
620
621void vp9_tm_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
622#define vp9_tm_predictor_32x32 vp9_tm_predictor_32x32_c
623
624void vp9_tm_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
625#define vp9_tm_predictor_4x4 vp9_tm_predictor_4x4_c
626
627void vp9_tm_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
628#define vp9_tm_predictor_8x8 vp9_tm_predictor_8x8_c
629
630void vp9_v_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
631#define vp9_v_predictor_16x16 vp9_v_predictor_16x16_c
632
633void vp9_v_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
634#define vp9_v_predictor_32x32 vp9_v_predictor_32x32_c
635
636void vp9_v_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
637#define vp9_v_predictor_4x4 vp9_v_predictor_4x4_c
638
639void vp9_v_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
640#define vp9_v_predictor_8x8 vp9_v_predictor_8x8_c
641
642unsigned int vp9_variance16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
643unsigned int vp9_variance16x16_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
644#define vp9_variance16x16 vp9_variance16x16_neon
645
646unsigned int vp9_variance16x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
647#define vp9_variance16x32 vp9_variance16x32_c
648
649unsigned int vp9_variance16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
650#define vp9_variance16x8 vp9_variance16x8_c
651
652unsigned int vp9_variance32x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
653#define vp9_variance32x16 vp9_variance32x16_c
654
655unsigned int vp9_variance32x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
656unsigned int vp9_variance32x32_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
657#define vp9_variance32x32 vp9_variance32x32_neon
658
659unsigned int vp9_variance32x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
660#define vp9_variance32x64 vp9_variance32x64_c
661
662unsigned int vp9_variance4x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
663#define vp9_variance4x4 vp9_variance4x4_c
664
665unsigned int vp9_variance4x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
666#define vp9_variance4x8 vp9_variance4x8_c
667
668unsigned int vp9_variance64x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
669#define vp9_variance64x32 vp9_variance64x32_c
670
671unsigned int vp9_variance64x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
672#define vp9_variance64x64 vp9_variance64x64_c
673
674unsigned int vp9_variance8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
675#define vp9_variance8x16 vp9_variance8x16_c
676
677unsigned int vp9_variance8x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
678#define vp9_variance8x4 vp9_variance8x4_c
679
680unsigned int vp9_variance8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
681unsigned int vp9_variance8x8_neon(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
682#define vp9_variance8x8 vp9_variance8x8_neon
683
684void vp9_rtcd(void);
685
686#include "vpx_config.h"
687
688#ifdef RTCD_C
689#include "vpx_ports/arm.h"
690static void setup_rtcd_internal(void)
691{
692    int flags = arm_cpu_caps();
693
694    (void)flags;
695
696}
697#endif
698
699#ifdef __cplusplus
700}  // extern "C"
701#endif
702
703#endif
704