OLD | NEW |
1 #ifndef VPX_DSP_RTCD_H_ | 1 #ifndef VPX_DSP_RTCD_H_ |
2 #define VPX_DSP_RTCD_H_ | 2 #define VPX_DSP_RTCD_H_ |
3 | 3 |
4 #ifdef RTCD_C | 4 #ifdef RTCD_C |
5 #define RTCD_EXTERN | 5 #define RTCD_EXTERN |
6 #else | 6 #else |
7 #define RTCD_EXTERN extern | 7 #define RTCD_EXTERN extern |
8 #endif | 8 #endif |
9 | 9 |
10 /* | 10 /* |
11 * DSP | 11 * DSP |
12 */ | 12 */ |
13 | 13 |
14 #include "vpx/vpx_integer.h" | 14 #include "vpx/vpx_integer.h" |
15 #include "vpx_dsp/vpx_dsp_common.h" | 15 #include "vpx_dsp/vpx_dsp_common.h" |
16 | 16 |
17 | 17 |
18 #ifdef __cplusplus | 18 #ifdef __cplusplus |
19 extern "C" { | 19 extern "C" { |
20 #endif | 20 #endif |
21 | 21 |
22 void vp9_idct16x16_10_add_c(const tran_low_t *input, uint8_t *dest, int dest_str
ide); | |
23 void vp9_idct16x16_10_add_neon(const tran_low_t *input, uint8_t *dest, int dest_
stride); | |
24 RTCD_EXTERN void (*vp9_idct16x16_10_add)(const tran_low_t *input, uint8_t *dest,
int dest_stride); | |
25 | |
26 void vp9_idct16x16_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stri
de); | |
27 void vp9_idct16x16_1_add_neon(const tran_low_t *input, uint8_t *dest, int dest_s
tride); | |
28 RTCD_EXTERN void (*vp9_idct16x16_1_add)(const tran_low_t *input, uint8_t *dest,
int dest_stride); | |
29 | |
30 void vp9_idct16x16_256_add_c(const tran_low_t *input, uint8_t *dest, int dest_st
ride); | |
31 void vp9_idct16x16_256_add_neon(const tran_low_t *input, uint8_t *dest, int dest
_stride); | |
32 RTCD_EXTERN void (*vp9_idct16x16_256_add)(const tran_low_t *input, uint8_t *dest
, int dest_stride); | |
33 | |
34 void vp9_idct32x32_1024_add_c(const tran_low_t *input, uint8_t *dest, int dest_s
tride); | |
35 void vp9_idct32x32_1024_add_neon(const tran_low_t *input, uint8_t *dest, int des
t_stride); | |
36 RTCD_EXTERN void (*vp9_idct32x32_1024_add)(const tran_low_t *input, uint8_t *des
t, int dest_stride); | |
37 | |
38 void vp9_idct32x32_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stri
de); | |
39 void vp9_idct32x32_1_add_neon(const tran_low_t *input, uint8_t *dest, int dest_s
tride); | |
40 RTCD_EXTERN void (*vp9_idct32x32_1_add)(const tran_low_t *input, uint8_t *dest,
int dest_stride); | |
41 | |
42 void vp9_idct32x32_34_add_c(const tran_low_t *input, uint8_t *dest, int dest_str
ide); | |
43 void vp9_idct32x32_1024_add_neon(const tran_low_t *input, uint8_t *dest, int des
t_stride); | |
44 RTCD_EXTERN void (*vp9_idct32x32_34_add)(const tran_low_t *input, uint8_t *dest,
int dest_stride); | |
45 | |
46 void vp9_idct4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_strid
e); | |
47 void vp9_idct4x4_16_add_neon(const tran_low_t *input, uint8_t *dest, int dest_st
ride); | |
48 RTCD_EXTERN void (*vp9_idct4x4_16_add)(const tran_low_t *input, uint8_t *dest, i
nt dest_stride); | |
49 | |
50 void vp9_idct4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride
); | |
51 void vp9_idct4x4_1_add_neon(const tran_low_t *input, uint8_t *dest, int dest_str
ide); | |
52 RTCD_EXTERN void (*vp9_idct4x4_1_add)(const tran_low_t *input, uint8_t *dest, in
t dest_stride); | |
53 | |
54 void vp9_idct8x8_12_add_c(const tran_low_t *input, uint8_t *dest, int dest_strid
e); | |
55 void vp9_idct8x8_12_add_neon(const tran_low_t *input, uint8_t *dest, int dest_st
ride); | |
56 RTCD_EXTERN void (*vp9_idct8x8_12_add)(const tran_low_t *input, uint8_t *dest, i
nt dest_stride); | |
57 | |
58 void vp9_idct8x8_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride
); | |
59 void vp9_idct8x8_1_add_neon(const tran_low_t *input, uint8_t *dest, int dest_str
ide); | |
60 RTCD_EXTERN void (*vp9_idct8x8_1_add)(const tran_low_t *input, uint8_t *dest, in
t dest_stride); | |
61 | |
62 void vp9_idct8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_strid
e); | |
63 void vp9_idct8x8_64_add_neon(const tran_low_t *input, uint8_t *dest, int dest_st
ride); | |
64 RTCD_EXTERN void (*vp9_idct8x8_64_add)(const tran_low_t *input, uint8_t *dest, i
nt dest_stride); | |
65 | |
66 void vp9_iwht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_strid
e); | |
67 #define vp9_iwht4x4_16_add vp9_iwht4x4_16_add_c | |
68 | |
69 void vp9_iwht4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride
); | |
70 #define vp9_iwht4x4_1_add vp9_iwht4x4_1_add_c | |
71 | |
72 void vp9_quantize_b_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_b
lock, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_pt
r, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_p
tr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const in
t16_t *iscan); | |
73 #define vp9_quantize_b vp9_quantize_b_c | |
74 | |
75 void 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 *qu
ant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqc
oeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, co
nst int16_t *iscan); | |
76 #define vp9_quantize_b_32x32 vp9_quantize_b_32x32_c | |
77 | |
78 void vpx_comp_avg_pred_c(uint8_t *comp_pred, const uint8_t *pred, int width, int
height, const uint8_t *ref, int ref_stride); | 22 void vpx_comp_avg_pred_c(uint8_t *comp_pred, const uint8_t *pred, int width, int
height, const uint8_t *ref, int ref_stride); |
79 #define vpx_comp_avg_pred vpx_comp_avg_pred_c | 23 #define vpx_comp_avg_pred vpx_comp_avg_pred_c |
80 | 24 |
81 void vpx_convolve8_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptr
diff_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); | 25 void vpx_convolve8_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptr
diff_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); |
82 void vpx_convolve8_neon(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 *fil
ter_y, int y_step_q4, int w, int h); | 26 void vpx_convolve8_neon(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 *fil
ter_y, int y_step_q4, int w, int h); |
83 RTCD_EXTERN void (*vpx_convolve8)(const uint8_t *src, ptrdiff_t src_stride, uint
8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const in
t16_t *filter_y, int y_step_q4, int w, int h); | 27 RTCD_EXTERN void (*vpx_convolve8)(const uint8_t *src, ptrdiff_t src_stride, uint
8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const in
t16_t *filter_y, int y_step_q4, int w, int h); |
84 | 28 |
85 void vpx_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 *fi
lter_y, int y_step_q4, int w, int h); | 29 void vpx_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 *fi
lter_y, int y_step_q4, int w, int h); |
86 void vpx_convolve8_avg_neon(const uint8_t *src, ptrdiff_t src_stride, uint8_t *d
st, 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); | 30 void vpx_convolve8_avg_neon(const uint8_t *src, ptrdiff_t src_stride, uint8_t *d
st, 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); |
87 RTCD_EXTERN void (*vpx_convolve8_avg)(const uint8_t *src, ptrdiff_t src_stride,
uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, cons
t int16_t *filter_y, int y_step_q4, int w, int h); | 31 RTCD_EXTERN void (*vpx_convolve8_avg)(const uint8_t *src, ptrdiff_t src_stride,
uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, cons
t int16_t *filter_y, int y_step_q4, int w, int h); |
(...skipping 215 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
303 RTCD_EXTERN void (*vpx_h_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, cons
t uint8_t *above, const uint8_t *left); | 247 RTCD_EXTERN void (*vpx_h_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, cons
t uint8_t *above, const uint8_t *left); |
304 | 248 |
305 void vpx_h_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *abov
e, const uint8_t *left); | 249 void vpx_h_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *abov
e, const uint8_t *left); |
306 void vpx_h_predictor_4x4_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *a
bove, const uint8_t *left); | 250 void vpx_h_predictor_4x4_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *a
bove, const uint8_t *left); |
307 RTCD_EXTERN void (*vpx_h_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const
uint8_t *above, const uint8_t *left); | 251 RTCD_EXTERN void (*vpx_h_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const
uint8_t *above, const uint8_t *left); |
308 | 252 |
309 void vpx_h_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *abov
e, const uint8_t *left); | 253 void vpx_h_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *abov
e, const uint8_t *left); |
310 void vpx_h_predictor_8x8_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *a
bove, const uint8_t *left); | 254 void vpx_h_predictor_8x8_neon(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *a
bove, const uint8_t *left); |
311 RTCD_EXTERN void (*vpx_h_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const
uint8_t *above, const uint8_t *left); | 255 RTCD_EXTERN void (*vpx_h_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const
uint8_t *above, const uint8_t *left); |
312 | 256 |
| 257 void vpx_idct16x16_10_add_c(const tran_low_t *input, uint8_t *dest, int dest_str
ide); |
| 258 void vpx_idct16x16_10_add_neon(const tran_low_t *input, uint8_t *dest, int dest_
stride); |
| 259 RTCD_EXTERN void (*vpx_idct16x16_10_add)(const tran_low_t *input, uint8_t *dest,
int dest_stride); |
| 260 |
| 261 void vpx_idct16x16_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stri
de); |
| 262 void vpx_idct16x16_1_add_neon(const tran_low_t *input, uint8_t *dest, int dest_s
tride); |
| 263 RTCD_EXTERN void (*vpx_idct16x16_1_add)(const tran_low_t *input, uint8_t *dest,
int dest_stride); |
| 264 |
| 265 void vpx_idct16x16_256_add_c(const tran_low_t *input, uint8_t *dest, int dest_st
ride); |
| 266 void vpx_idct16x16_256_add_neon(const tran_low_t *input, uint8_t *dest, int dest
_stride); |
| 267 RTCD_EXTERN void (*vpx_idct16x16_256_add)(const tran_low_t *input, uint8_t *dest
, int dest_stride); |
| 268 |
| 269 void vpx_idct32x32_1024_add_c(const tran_low_t *input, uint8_t *dest, int dest_s
tride); |
| 270 void vpx_idct32x32_1024_add_neon(const tran_low_t *input, uint8_t *dest, int des
t_stride); |
| 271 RTCD_EXTERN void (*vpx_idct32x32_1024_add)(const tran_low_t *input, uint8_t *des
t, int dest_stride); |
| 272 |
| 273 void vpx_idct32x32_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stri
de); |
| 274 void vpx_idct32x32_1_add_neon(const tran_low_t *input, uint8_t *dest, int dest_s
tride); |
| 275 RTCD_EXTERN void (*vpx_idct32x32_1_add)(const tran_low_t *input, uint8_t *dest,
int dest_stride); |
| 276 |
| 277 void vpx_idct32x32_34_add_c(const tran_low_t *input, uint8_t *dest, int dest_str
ide); |
| 278 void vpx_idct32x32_1024_add_neon(const tran_low_t *input, uint8_t *dest, int des
t_stride); |
| 279 RTCD_EXTERN void (*vpx_idct32x32_34_add)(const tran_low_t *input, uint8_t *dest,
int dest_stride); |
| 280 |
| 281 void vpx_idct4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_strid
e); |
| 282 void vpx_idct4x4_16_add_neon(const tran_low_t *input, uint8_t *dest, int dest_st
ride); |
| 283 RTCD_EXTERN void (*vpx_idct4x4_16_add)(const tran_low_t *input, uint8_t *dest, i
nt dest_stride); |
| 284 |
| 285 void vpx_idct4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride
); |
| 286 void vpx_idct4x4_1_add_neon(const tran_low_t *input, uint8_t *dest, int dest_str
ide); |
| 287 RTCD_EXTERN void (*vpx_idct4x4_1_add)(const tran_low_t *input, uint8_t *dest, in
t dest_stride); |
| 288 |
| 289 void vpx_idct8x8_12_add_c(const tran_low_t *input, uint8_t *dest, int dest_strid
e); |
| 290 void vpx_idct8x8_12_add_neon(const tran_low_t *input, uint8_t *dest, int dest_st
ride); |
| 291 RTCD_EXTERN void (*vpx_idct8x8_12_add)(const tran_low_t *input, uint8_t *dest, i
nt dest_stride); |
| 292 |
| 293 void vpx_idct8x8_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride
); |
| 294 void vpx_idct8x8_1_add_neon(const tran_low_t *input, uint8_t *dest, int dest_str
ide); |
| 295 RTCD_EXTERN void (*vpx_idct8x8_1_add)(const tran_low_t *input, uint8_t *dest, in
t dest_stride); |
| 296 |
| 297 void vpx_idct8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_strid
e); |
| 298 void vpx_idct8x8_64_add_neon(const tran_low_t *input, uint8_t *dest, int dest_st
ride); |
| 299 RTCD_EXTERN void (*vpx_idct8x8_64_add)(const tran_low_t *input, uint8_t *dest, i
nt dest_stride); |
| 300 |
| 301 void vpx_iwht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_strid
e); |
| 302 #define vpx_iwht4x4_16_add vpx_iwht4x4_16_add_c |
| 303 |
| 304 void vpx_iwht4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride
); |
| 305 #define vpx_iwht4x4_1_add vpx_iwht4x4_1_add_c |
| 306 |
313 void vpx_lpf_horizontal_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const
uint8_t *limit, const uint8_t *thresh, int count); | 307 void vpx_lpf_horizontal_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const
uint8_t *limit, const uint8_t *thresh, int count); |
314 void vpx_lpf_horizontal_16_neon(uint8_t *s, int pitch, const uint8_t *blimit, co
nst uint8_t *limit, const uint8_t *thresh, int count); | 308 void vpx_lpf_horizontal_16_neon(uint8_t *s, int pitch, const uint8_t *blimit, co
nst uint8_t *limit, const uint8_t *thresh, int count); |
315 RTCD_EXTERN void (*vpx_lpf_horizontal_16)(uint8_t *s, int pitch, const uint8_t *
blimit, const uint8_t *limit, const uint8_t *thresh, int count); | 309 RTCD_EXTERN void (*vpx_lpf_horizontal_16)(uint8_t *s, int pitch, const uint8_t *
blimit, const uint8_t *limit, const uint8_t *thresh, int count); |
316 | 310 |
317 void vpx_lpf_horizontal_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const
uint8_t *limit, const uint8_t *thresh, int count); | 311 void vpx_lpf_horizontal_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const
uint8_t *limit, const uint8_t *thresh, int count); |
318 void vpx_lpf_horizontal_4_neon(uint8_t *s, int pitch, const uint8_t *blimit, con
st uint8_t *limit, const uint8_t *thresh, int count); | 312 void vpx_lpf_horizontal_4_neon(uint8_t *s, int pitch, const uint8_t *blimit, con
st uint8_t *limit, const uint8_t *thresh, int count); |
319 RTCD_EXTERN void (*vpx_lpf_horizontal_4)(uint8_t *s, int pitch, const uint8_t *b
limit, const uint8_t *limit, const uint8_t *thresh, int count); | 313 RTCD_EXTERN void (*vpx_lpf_horizontal_4)(uint8_t *s, int pitch, const uint8_t *b
limit, const uint8_t *limit, const uint8_t *thresh, int count); |
320 | 314 |
321 void vpx_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 uin
t8_t *limit1, const uint8_t *thresh1); | 315 void vpx_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 uin
t8_t *limit1, const uint8_t *thresh1); |
322 void vpx_lpf_horizontal_4_dual_neon(uint8_t *s, int pitch, const uint8_t *blimit
0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const
uint8_t *limit1, const uint8_t *thresh1); | 316 void vpx_lpf_horizontal_4_dual_neon(uint8_t *s, int pitch, const uint8_t *blimit
0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const
uint8_t *limit1, const uint8_t *thresh1); |
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
361 | 355 |
362 unsigned int vpx_mse16x8_c(const uint8_t *src_ptr, int source_stride, const uin
t8_t *ref_ptr, int recon_stride, unsigned int *sse); | 356 unsigned int vpx_mse16x8_c(const uint8_t *src_ptr, int source_stride, const uin
t8_t *ref_ptr, int recon_stride, unsigned int *sse); |
363 #define vpx_mse16x8 vpx_mse16x8_c | 357 #define vpx_mse16x8 vpx_mse16x8_c |
364 | 358 |
365 unsigned int vpx_mse8x16_c(const uint8_t *src_ptr, int source_stride, const uin
t8_t *ref_ptr, int recon_stride, unsigned int *sse); | 359 unsigned int vpx_mse8x16_c(const uint8_t *src_ptr, int source_stride, const uin
t8_t *ref_ptr, int recon_stride, unsigned int *sse); |
366 #define vpx_mse8x16 vpx_mse8x16_c | 360 #define vpx_mse8x16 vpx_mse8x16_c |
367 | 361 |
368 unsigned int vpx_mse8x8_c(const uint8_t *src_ptr, int source_stride, const uint
8_t *ref_ptr, int recon_stride, unsigned int *sse); | 362 unsigned int vpx_mse8x8_c(const uint8_t *src_ptr, int source_stride, const uint
8_t *ref_ptr, int recon_stride, unsigned int *sse); |
369 #define vpx_mse8x8 vpx_mse8x8_c | 363 #define vpx_mse8x8 vpx_mse8x8_c |
370 | 364 |
| 365 void vpx_quantize_b_c(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_b
lock, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_pt
r, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_p
tr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const in
t16_t *iscan); |
| 366 #define vpx_quantize_b vpx_quantize_b_c |
| 367 |
| 368 void vpx_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 *qu
ant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqc
oeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, co
nst int16_t *iscan); |
| 369 #define vpx_quantize_b_32x32 vpx_quantize_b_32x32_c |
| 370 |
371 unsigned int vpx_sad16x16_c(const uint8_t *src_ptr, int src_stride, const uint8_
t *ref_ptr, int ref_stride); | 371 unsigned int vpx_sad16x16_c(const uint8_t *src_ptr, int src_stride, const uint8_
t *ref_ptr, int ref_stride); |
372 unsigned int vpx_sad16x16_media(const uint8_t *src_ptr, int src_stride, const ui
nt8_t *ref_ptr, int ref_stride); | 372 unsigned int vpx_sad16x16_media(const uint8_t *src_ptr, int src_stride, const ui
nt8_t *ref_ptr, int ref_stride); |
373 unsigned int vpx_sad16x16_neon(const uint8_t *src_ptr, int src_stride, const uin
t8_t *ref_ptr, int ref_stride); | 373 unsigned int vpx_sad16x16_neon(const uint8_t *src_ptr, int src_stride, const uin
t8_t *ref_ptr, int ref_stride); |
374 RTCD_EXTERN unsigned int (*vpx_sad16x16)(const uint8_t *src_ptr, int src_stride,
const uint8_t *ref_ptr, int ref_stride); | 374 RTCD_EXTERN unsigned int (*vpx_sad16x16)(const uint8_t *src_ptr, int src_stride,
const uint8_t *ref_ptr, int ref_stride); |
375 | 375 |
376 unsigned int vpx_sad16x16_avg_c(const uint8_t *src_ptr, int src_stride, const ui
nt8_t *ref_ptr, int ref_stride, const uint8_t *second_pred); | 376 unsigned int vpx_sad16x16_avg_c(const uint8_t *src_ptr, int src_stride, const ui
nt8_t *ref_ptr, int ref_stride, const uint8_t *second_pred); |
377 #define vpx_sad16x16_avg vpx_sad16x16_avg_c | 377 #define vpx_sad16x16_avg vpx_sad16x16_avg_c |
378 | 378 |
379 void vpx_sad16x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref
_ptr, int ref_stride, uint32_t *sad_array); | 379 void vpx_sad16x16x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref
_ptr, int ref_stride, uint32_t *sad_array); |
380 #define vpx_sad16x16x3 vpx_sad16x16x3_c | 380 #define vpx_sad16x16x3 vpx_sad16x16x3_c |
(...skipping 156 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
537 | 537 |
538 void vpx_sad8x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_p
tr, int ref_stride, uint32_t *sad_array); | 538 void vpx_sad8x8x3_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_p
tr, int ref_stride, uint32_t *sad_array); |
539 #define vpx_sad8x8x3 vpx_sad8x8x3_c | 539 #define vpx_sad8x8x3 vpx_sad8x8x3_c |
540 | 540 |
541 void vpx_sad8x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * con
st ref_ptr[], int ref_stride, uint32_t *sad_array); | 541 void vpx_sad8x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t * con
st ref_ptr[], int ref_stride, uint32_t *sad_array); |
542 #define vpx_sad8x8x4d vpx_sad8x8x4d_c | 542 #define vpx_sad8x8x4d vpx_sad8x8x4d_c |
543 | 543 |
544 void vpx_sad8x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_p
tr, int ref_stride, uint32_t *sad_array); | 544 void vpx_sad8x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_p
tr, int ref_stride, uint32_t *sad_array); |
545 #define vpx_sad8x8x8 vpx_sad8x8x8_c | 545 #define vpx_sad8x8x8 vpx_sad8x8x8_c |
546 | 546 |
| 547 void vpx_scaled_2d_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptr
diff_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); |
| 548 #define vpx_scaled_2d vpx_scaled_2d_c |
| 549 |
| 550 void vpx_scaled_avg_2d_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 *fi
lter_y, int y_step_q4, int w, int h); |
| 551 #define vpx_scaled_avg_2d vpx_scaled_avg_2d_c |
| 552 |
| 553 void vpx_scaled_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *d
st, 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); |
| 554 #define vpx_scaled_avg_horiz vpx_scaled_avg_horiz_c |
| 555 |
| 556 void vpx_scaled_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *ds
t, 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); |
| 557 #define vpx_scaled_avg_vert vpx_scaled_avg_vert_c |
| 558 |
| 559 void vpx_scaled_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 *fil
ter_y, int y_step_q4, int w, int h); |
| 560 #define vpx_scaled_horiz vpx_scaled_horiz_c |
| 561 |
| 562 void vpx_scaled_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, p
trdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filt
er_y, int y_step_q4, int w, int h); |
| 563 #define vpx_scaled_vert vpx_scaled_vert_c |
| 564 |
547 uint32_t vpx_sub_pixel_avg_variance16x16_c(const uint8_t *src_ptr, int source_st
ride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_
t *sse, const uint8_t *second_pred); | 565 uint32_t vpx_sub_pixel_avg_variance16x16_c(const uint8_t *src_ptr, int source_st
ride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_
t *sse, const uint8_t *second_pred); |
548 #define vpx_sub_pixel_avg_variance16x16 vpx_sub_pixel_avg_variance16x16_c | 566 #define vpx_sub_pixel_avg_variance16x16 vpx_sub_pixel_avg_variance16x16_c |
549 | 567 |
550 uint32_t vpx_sub_pixel_avg_variance16x32_c(const uint8_t *src_ptr, int source_st
ride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_
t *sse, const uint8_t *second_pred); | 568 uint32_t vpx_sub_pixel_avg_variance16x32_c(const uint8_t *src_ptr, int source_st
ride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_
t *sse, const uint8_t *second_pred); |
551 #define vpx_sub_pixel_avg_variance16x32 vpx_sub_pixel_avg_variance16x32_c | 569 #define vpx_sub_pixel_avg_variance16x32 vpx_sub_pixel_avg_variance16x32_c |
552 | 570 |
553 uint32_t vpx_sub_pixel_avg_variance16x8_c(const uint8_t *src_ptr, int source_str
ide, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t
*sse, const uint8_t *second_pred); | 571 uint32_t vpx_sub_pixel_avg_variance16x8_c(const uint8_t *src_ptr, int source_str
ide, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_t
*sse, const uint8_t *second_pred); |
554 #define vpx_sub_pixel_avg_variance16x8 vpx_sub_pixel_avg_variance16x8_c | 572 #define vpx_sub_pixel_avg_variance16x8 vpx_sub_pixel_avg_variance16x8_c |
555 | 573 |
556 uint32_t vpx_sub_pixel_avg_variance32x16_c(const uint8_t *src_ptr, int source_st
ride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_
t *sse, const uint8_t *second_pred); | 574 uint32_t vpx_sub_pixel_avg_variance32x16_c(const uint8_t *src_ptr, int source_st
ride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uint32_
t *sse, const uint8_t *second_pred); |
(...skipping 173 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
730 #include "vpx_config.h" | 748 #include "vpx_config.h" |
731 | 749 |
732 #ifdef RTCD_C | 750 #ifdef RTCD_C |
733 #include "vpx_ports/arm.h" | 751 #include "vpx_ports/arm.h" |
734 static void setup_rtcd_internal(void) | 752 static void setup_rtcd_internal(void) |
735 { | 753 { |
736 int flags = arm_cpu_caps(); | 754 int flags = arm_cpu_caps(); |
737 | 755 |
738 (void)flags; | 756 (void)flags; |
739 | 757 |
740 vp9_idct16x16_10_add = vp9_idct16x16_10_add_c; | |
741 if (flags & HAS_NEON) vp9_idct16x16_10_add = vp9_idct16x16_10_add_neon; | |
742 vp9_idct16x16_1_add = vp9_idct16x16_1_add_c; | |
743 if (flags & HAS_NEON) vp9_idct16x16_1_add = vp9_idct16x16_1_add_neon; | |
744 vp9_idct16x16_256_add = vp9_idct16x16_256_add_c; | |
745 if (flags & HAS_NEON) vp9_idct16x16_256_add = vp9_idct16x16_256_add_neon; | |
746 vp9_idct32x32_1024_add = vp9_idct32x32_1024_add_c; | |
747 if (flags & HAS_NEON) vp9_idct32x32_1024_add = vp9_idct32x32_1024_add_neon; | |
748 vp9_idct32x32_1_add = vp9_idct32x32_1_add_c; | |
749 if (flags & HAS_NEON) vp9_idct32x32_1_add = vp9_idct32x32_1_add_neon; | |
750 vp9_idct32x32_34_add = vp9_idct32x32_34_add_c; | |
751 if (flags & HAS_NEON) vp9_idct32x32_34_add = vp9_idct32x32_1024_add_neon; | |
752 vp9_idct4x4_16_add = vp9_idct4x4_16_add_c; | |
753 if (flags & HAS_NEON) vp9_idct4x4_16_add = vp9_idct4x4_16_add_neon; | |
754 vp9_idct4x4_1_add = vp9_idct4x4_1_add_c; | |
755 if (flags & HAS_NEON) vp9_idct4x4_1_add = vp9_idct4x4_1_add_neon; | |
756 vp9_idct8x8_12_add = vp9_idct8x8_12_add_c; | |
757 if (flags & HAS_NEON) vp9_idct8x8_12_add = vp9_idct8x8_12_add_neon; | |
758 vp9_idct8x8_1_add = vp9_idct8x8_1_add_c; | |
759 if (flags & HAS_NEON) vp9_idct8x8_1_add = vp9_idct8x8_1_add_neon; | |
760 vp9_idct8x8_64_add = vp9_idct8x8_64_add_c; | |
761 if (flags & HAS_NEON) vp9_idct8x8_64_add = vp9_idct8x8_64_add_neon; | |
762 vpx_convolve8 = vpx_convolve8_c; | 758 vpx_convolve8 = vpx_convolve8_c; |
763 if (flags & HAS_NEON) vpx_convolve8 = vpx_convolve8_neon; | 759 if (flags & HAS_NEON) vpx_convolve8 = vpx_convolve8_neon; |
764 vpx_convolve8_avg = vpx_convolve8_avg_c; | 760 vpx_convolve8_avg = vpx_convolve8_avg_c; |
765 if (flags & HAS_NEON) vpx_convolve8_avg = vpx_convolve8_avg_neon; | 761 if (flags & HAS_NEON) vpx_convolve8_avg = vpx_convolve8_avg_neon; |
766 vpx_convolve8_avg_horiz = vpx_convolve8_avg_horiz_c; | 762 vpx_convolve8_avg_horiz = vpx_convolve8_avg_horiz_c; |
767 if (flags & HAS_NEON) vpx_convolve8_avg_horiz = vpx_convolve8_avg_horiz_neon
; | 763 if (flags & HAS_NEON) vpx_convolve8_avg_horiz = vpx_convolve8_avg_horiz_neon
; |
768 vpx_convolve8_avg_vert = vpx_convolve8_avg_vert_c; | 764 vpx_convolve8_avg_vert = vpx_convolve8_avg_vert_c; |
769 if (flags & HAS_NEON) vpx_convolve8_avg_vert = vpx_convolve8_avg_vert_neon; | 765 if (flags & HAS_NEON) vpx_convolve8_avg_vert = vpx_convolve8_avg_vert_neon; |
770 vpx_convolve8_horiz = vpx_convolve8_horiz_c; | 766 vpx_convolve8_horiz = vpx_convolve8_horiz_c; |
771 if (flags & HAS_NEON) vpx_convolve8_horiz = vpx_convolve8_horiz_neon; | 767 if (flags & HAS_NEON) vpx_convolve8_horiz = vpx_convolve8_horiz_neon; |
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
826 vpx_get8x8var = vpx_get8x8var_c; | 822 vpx_get8x8var = vpx_get8x8var_c; |
827 if (flags & HAS_NEON) vpx_get8x8var = vpx_get8x8var_neon; | 823 if (flags & HAS_NEON) vpx_get8x8var = vpx_get8x8var_neon; |
828 vpx_h_predictor_16x16 = vpx_h_predictor_16x16_c; | 824 vpx_h_predictor_16x16 = vpx_h_predictor_16x16_c; |
829 if (flags & HAS_NEON) vpx_h_predictor_16x16 = vpx_h_predictor_16x16_neon; | 825 if (flags & HAS_NEON) vpx_h_predictor_16x16 = vpx_h_predictor_16x16_neon; |
830 vpx_h_predictor_32x32 = vpx_h_predictor_32x32_c; | 826 vpx_h_predictor_32x32 = vpx_h_predictor_32x32_c; |
831 if (flags & HAS_NEON) vpx_h_predictor_32x32 = vpx_h_predictor_32x32_neon; | 827 if (flags & HAS_NEON) vpx_h_predictor_32x32 = vpx_h_predictor_32x32_neon; |
832 vpx_h_predictor_4x4 = vpx_h_predictor_4x4_c; | 828 vpx_h_predictor_4x4 = vpx_h_predictor_4x4_c; |
833 if (flags & HAS_NEON) vpx_h_predictor_4x4 = vpx_h_predictor_4x4_neon; | 829 if (flags & HAS_NEON) vpx_h_predictor_4x4 = vpx_h_predictor_4x4_neon; |
834 vpx_h_predictor_8x8 = vpx_h_predictor_8x8_c; | 830 vpx_h_predictor_8x8 = vpx_h_predictor_8x8_c; |
835 if (flags & HAS_NEON) vpx_h_predictor_8x8 = vpx_h_predictor_8x8_neon; | 831 if (flags & HAS_NEON) vpx_h_predictor_8x8 = vpx_h_predictor_8x8_neon; |
| 832 vpx_idct16x16_10_add = vpx_idct16x16_10_add_c; |
| 833 if (flags & HAS_NEON) vpx_idct16x16_10_add = vpx_idct16x16_10_add_neon; |
| 834 vpx_idct16x16_1_add = vpx_idct16x16_1_add_c; |
| 835 if (flags & HAS_NEON) vpx_idct16x16_1_add = vpx_idct16x16_1_add_neon; |
| 836 vpx_idct16x16_256_add = vpx_idct16x16_256_add_c; |
| 837 if (flags & HAS_NEON) vpx_idct16x16_256_add = vpx_idct16x16_256_add_neon; |
| 838 vpx_idct32x32_1024_add = vpx_idct32x32_1024_add_c; |
| 839 if (flags & HAS_NEON) vpx_idct32x32_1024_add = vpx_idct32x32_1024_add_neon; |
| 840 vpx_idct32x32_1_add = vpx_idct32x32_1_add_c; |
| 841 if (flags & HAS_NEON) vpx_idct32x32_1_add = vpx_idct32x32_1_add_neon; |
| 842 vpx_idct32x32_34_add = vpx_idct32x32_34_add_c; |
| 843 if (flags & HAS_NEON) vpx_idct32x32_34_add = vpx_idct32x32_1024_add_neon; |
| 844 vpx_idct4x4_16_add = vpx_idct4x4_16_add_c; |
| 845 if (flags & HAS_NEON) vpx_idct4x4_16_add = vpx_idct4x4_16_add_neon; |
| 846 vpx_idct4x4_1_add = vpx_idct4x4_1_add_c; |
| 847 if (flags & HAS_NEON) vpx_idct4x4_1_add = vpx_idct4x4_1_add_neon; |
| 848 vpx_idct8x8_12_add = vpx_idct8x8_12_add_c; |
| 849 if (flags & HAS_NEON) vpx_idct8x8_12_add = vpx_idct8x8_12_add_neon; |
| 850 vpx_idct8x8_1_add = vpx_idct8x8_1_add_c; |
| 851 if (flags & HAS_NEON) vpx_idct8x8_1_add = vpx_idct8x8_1_add_neon; |
| 852 vpx_idct8x8_64_add = vpx_idct8x8_64_add_c; |
| 853 if (flags & HAS_NEON) vpx_idct8x8_64_add = vpx_idct8x8_64_add_neon; |
836 vpx_lpf_horizontal_16 = vpx_lpf_horizontal_16_c; | 854 vpx_lpf_horizontal_16 = vpx_lpf_horizontal_16_c; |
837 if (flags & HAS_NEON) vpx_lpf_horizontal_16 = vpx_lpf_horizontal_16_neon; | 855 if (flags & HAS_NEON) vpx_lpf_horizontal_16 = vpx_lpf_horizontal_16_neon; |
838 vpx_lpf_horizontal_4 = vpx_lpf_horizontal_4_c; | 856 vpx_lpf_horizontal_4 = vpx_lpf_horizontal_4_c; |
839 if (flags & HAS_NEON) vpx_lpf_horizontal_4 = vpx_lpf_horizontal_4_neon; | 857 if (flags & HAS_NEON) vpx_lpf_horizontal_4 = vpx_lpf_horizontal_4_neon; |
840 vpx_lpf_horizontal_4_dual = vpx_lpf_horizontal_4_dual_c; | 858 vpx_lpf_horizontal_4_dual = vpx_lpf_horizontal_4_dual_c; |
841 if (flags & HAS_NEON) vpx_lpf_horizontal_4_dual = vpx_lpf_horizontal_4_dual_
neon; | 859 if (flags & HAS_NEON) vpx_lpf_horizontal_4_dual = vpx_lpf_horizontal_4_dual_
neon; |
842 vpx_lpf_horizontal_8 = vpx_lpf_horizontal_8_c; | 860 vpx_lpf_horizontal_8 = vpx_lpf_horizontal_8_c; |
843 if (flags & HAS_NEON) vpx_lpf_horizontal_8 = vpx_lpf_horizontal_8_neon; | 861 if (flags & HAS_NEON) vpx_lpf_horizontal_8 = vpx_lpf_horizontal_8_neon; |
844 vpx_lpf_horizontal_8_dual = vpx_lpf_horizontal_8_dual_c; | 862 vpx_lpf_horizontal_8_dual = vpx_lpf_horizontal_8_dual_c; |
845 if (flags & HAS_NEON) vpx_lpf_horizontal_8_dual = vpx_lpf_horizontal_8_dual_
neon; | 863 if (flags & HAS_NEON) vpx_lpf_horizontal_8_dual = vpx_lpf_horizontal_8_dual_
neon; |
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
920 vpx_variance8x8 = vpx_variance8x8_media; | 938 vpx_variance8x8 = vpx_variance8x8_media; |
921 if (flags & HAS_NEON) vpx_variance8x8 = vpx_variance8x8_neon; | 939 if (flags & HAS_NEON) vpx_variance8x8 = vpx_variance8x8_neon; |
922 } | 940 } |
923 #endif | 941 #endif |
924 | 942 |
925 #ifdef __cplusplus | 943 #ifdef __cplusplus |
926 } // extern "C" | 944 } // extern "C" |
927 #endif | 945 #endif |
928 | 946 |
929 #endif | 947 #endif |
OLD | NEW |