Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(283)

Side by Side Diff: third_party/libvpx/source/config/linux/x64/vp9_rtcd.h

Issue 1158913006: Move libvpx from DEPS to src (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: add DEPS file with #include paths Created 5 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
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_common.h"
16 #include "vp9/common/vp9_enums.h"
17
18 struct macroblockd;
19
20 /* Encoder forward decls */
21 struct macroblock;
22 struct vp9_variance_vtable;
23 struct search_site_config;
24 struct mv;
25 union int_mv;
26 struct yv12_buffer_config;
27
28 #ifdef __cplusplus
29 extern "C" {
30 #endif
31
32 unsigned int vp9_avg_4x4_c(const uint8_t *, int p);
33 unsigned int vp9_avg_4x4_sse2(const uint8_t *, int p);
34 #define vp9_avg_4x4 vp9_avg_4x4_sse2
35
36 unsigned int vp9_avg_8x8_c(const uint8_t *, int p);
37 unsigned int vp9_avg_8x8_sse2(const uint8_t *, int p);
38 #define vp9_avg_8x8 vp9_avg_8x8_sse2
39
40 int64_t vp9_block_error_c(const tran_low_t *coeff, const tran_low_t *dqcoeff, in tptr_t block_size, int64_t *ssz);
41 int64_t vp9_block_error_sse2(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
42 int64_t vp9_block_error_avx2(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
43 RTCD_EXTERN int64_t (*vp9_block_error)(const tran_low_t *coeff, const tran_low_t *dqcoeff, intptr_t block_size, int64_t *ssz);
44
45 int64_t vp9_block_error_fp_c(const int16_t *coeff, const int16_t *dqcoeff, int b lock_size);
46 int64_t vp9_block_error_fp_sse2(const int16_t *coeff, const int16_t *dqcoeff, in t block_size);
47 #define vp9_block_error_fp vp9_block_error_fp_sse2
48
49 void vp9_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);
50 void vp9_convolve8_sse2(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);
51 void vp9_convolve8_ssse3(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);
52 void vp9_convolve8_avx2(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);
53 RTCD_EXTERN void (*vp9_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);
54
55 void 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 *fi lter_y, int y_step_q4, int w, int h);
56 void vp9_convolve8_avg_sse2(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);
57 void vp9_convolve8_avg_ssse3(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);
58 RTCD_EXTERN void (*vp9_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);
59
60 void 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);
61 void vp9_convolve8_avg_horiz_sse2(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);
62 void vp9_convolve8_avg_horiz_ssse3(const uint8_t *src, ptrdiff_t src_stride, uin t8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const i nt16_t *filter_y, int y_step_q4, int w, int h);
63 RTCD_EXTERN void (*vp9_convolve8_avg_horiz)(const uint8_t *src, ptrdiff_t src_st ride, 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);
64
65 void 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);
66 void vp9_convolve8_avg_vert_sse2(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 int 16_t *filter_y, int y_step_q4, int w, int h);
67 void vp9_convolve8_avg_vert_ssse3(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);
68 RTCD_EXTERN void (*vp9_convolve8_avg_vert)(const uint8_t *src, ptrdiff_t src_str ide, 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);
69
70 void vp9_convolve8_horiz_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);
71 void vp9_convolve8_horiz_sse2(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);
72 void vp9_convolve8_horiz_ssse3(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);
73 void vp9_convolve8_horiz_avx2(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);
74 RTCD_EXTERN void (*vp9_convolve8_horiz)(const uint8_t *src, ptrdiff_t src_stride , uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, co nst int16_t *filter_y, int y_step_q4, int w, int h);
75
76 void 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 *f ilter_y, int y_step_q4, int w, int h);
77 void vp9_convolve8_vert_sse2(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);
78 void vp9_convolve8_vert_ssse3(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);
79 void vp9_convolve8_vert_avx2(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);
80 RTCD_EXTERN void (*vp9_convolve8_vert)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, con st int16_t *filter_y, int y_step_q4, int w, int h);
81
82 void 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 *fil ter_y, int y_step_q4, int w, int h);
83 void vp9_convolve_avg_sse2(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);
84 #define vp9_convolve_avg vp9_convolve_avg_sse2
85
86 void 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 *fi lter_y, int y_step_q4, int w, int h);
87 void vp9_convolve_copy_sse2(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);
88 #define vp9_convolve_copy vp9_convolve_copy_sse2
89
90 void vp9_d117_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
91 #define vp9_d117_predictor_16x16 vp9_d117_predictor_16x16_c
92
93 void vp9_d117_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
94 #define vp9_d117_predictor_32x32 vp9_d117_predictor_32x32_c
95
96 void vp9_d117_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *a bove, const uint8_t *left);
97 #define vp9_d117_predictor_4x4 vp9_d117_predictor_4x4_c
98
99 void vp9_d117_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *a bove, const uint8_t *left);
100 #define vp9_d117_predictor_8x8 vp9_d117_predictor_8x8_c
101
102 void vp9_d135_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
103 #define vp9_d135_predictor_16x16 vp9_d135_predictor_16x16_c
104
105 void vp9_d135_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
106 #define vp9_d135_predictor_32x32 vp9_d135_predictor_32x32_c
107
108 void vp9_d135_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *a bove, const uint8_t *left);
109 #define vp9_d135_predictor_4x4 vp9_d135_predictor_4x4_c
110
111 void vp9_d135_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *a bove, const uint8_t *left);
112 #define vp9_d135_predictor_8x8 vp9_d135_predictor_8x8_c
113
114 void vp9_d153_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
115 void vp9_d153_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint 8_t *above, const uint8_t *left);
116 RTCD_EXTERN void (*vp9_d153_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, c onst uint8_t *above, const uint8_t *left);
117
118 void vp9_d153_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
119 #define vp9_d153_predictor_32x32 vp9_d153_predictor_32x32_c
120
121 void vp9_d153_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *a bove, const uint8_t *left);
122 void vp9_d153_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_ t *above, const uint8_t *left);
123 RTCD_EXTERN void (*vp9_d153_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, con st uint8_t *above, const uint8_t *left);
124
125 void vp9_d153_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *a bove, const uint8_t *left);
126 void vp9_d153_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_ t *above, const uint8_t *left);
127 RTCD_EXTERN void (*vp9_d153_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, con st uint8_t *above, const uint8_t *left);
128
129 void vp9_d207_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
130 void vp9_d207_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint 8_t *above, const uint8_t *left);
131 RTCD_EXTERN void (*vp9_d207_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, c onst uint8_t *above, const uint8_t *left);
132
133 void vp9_d207_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
134 void vp9_d207_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint 8_t *above, const uint8_t *left);
135 RTCD_EXTERN void (*vp9_d207_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, c onst uint8_t *above, const uint8_t *left);
136
137 void vp9_d207_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *a bove, const uint8_t *left);
138 void vp9_d207_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_ t *above, const uint8_t *left);
139 RTCD_EXTERN void (*vp9_d207_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, con st uint8_t *above, const uint8_t *left);
140
141 void vp9_d207_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *a bove, const uint8_t *left);
142 void vp9_d207_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_ t *above, const uint8_t *left);
143 RTCD_EXTERN void (*vp9_d207_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, con st uint8_t *above, const uint8_t *left);
144
145 void vp9_d45_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t * above, const uint8_t *left);
146 void vp9_d45_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8 _t *above, const uint8_t *left);
147 RTCD_EXTERN void (*vp9_d45_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, co nst uint8_t *above, const uint8_t *left);
148
149 void vp9_d45_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t * above, const uint8_t *left);
150 void vp9_d45_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8 _t *above, const uint8_t *left);
151 RTCD_EXTERN void (*vp9_d45_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, co nst uint8_t *above, const uint8_t *left);
152
153 void vp9_d45_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *ab ove, const uint8_t *left);
154 void vp9_d45_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
155 RTCD_EXTERN void (*vp9_d45_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, cons t uint8_t *above, const uint8_t *left);
156
157 void vp9_d45_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *ab ove, const uint8_t *left);
158 void vp9_d45_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
159 RTCD_EXTERN void (*vp9_d45_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, cons t uint8_t *above, const uint8_t *left);
160
161 void vp9_d63_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t * above, const uint8_t *left);
162 void vp9_d63_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8 _t *above, const uint8_t *left);
163 RTCD_EXTERN void (*vp9_d63_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, co nst uint8_t *above, const uint8_t *left);
164
165 void vp9_d63_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t * above, const uint8_t *left);
166 void vp9_d63_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8 _t *above, const uint8_t *left);
167 RTCD_EXTERN void (*vp9_d63_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, co nst uint8_t *above, const uint8_t *left);
168
169 void vp9_d63_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *ab ove, const uint8_t *left);
170 void vp9_d63_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
171 RTCD_EXTERN void (*vp9_d63_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, cons t uint8_t *above, const uint8_t *left);
172
173 void vp9_d63_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *ab ove, const uint8_t *left);
174 void vp9_d63_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
175 RTCD_EXTERN void (*vp9_d63_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, cons t uint8_t *above, const uint8_t *left);
176
177 void vp9_dc_128_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_ t *above, const uint8_t *left);
178 void vp9_dc_128_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uin t8_t *above, const uint8_t *left);
179 #define vp9_dc_128_predictor_16x16 vp9_dc_128_predictor_16x16_sse2
180
181 void vp9_dc_128_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_ t *above, const uint8_t *left);
182 void vp9_dc_128_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uin t8_t *above, const uint8_t *left);
183 #define vp9_dc_128_predictor_32x32 vp9_dc_128_predictor_32x32_sse2
184
185 void vp9_dc_128_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
186 void vp9_dc_128_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_ t *above, const uint8_t *left);
187 #define vp9_dc_128_predictor_4x4 vp9_dc_128_predictor_4x4_sse
188
189 void vp9_dc_128_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
190 void vp9_dc_128_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_ t *above, const uint8_t *left);
191 #define vp9_dc_128_predictor_8x8 vp9_dc_128_predictor_8x8_sse
192
193 void vp9_dc_left_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8 _t *above, const uint8_t *left);
194 void vp9_dc_left_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const ui nt8_t *above, const uint8_t *left);
195 #define vp9_dc_left_predictor_16x16 vp9_dc_left_predictor_16x16_sse2
196
197 void vp9_dc_left_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8 _t *above, const uint8_t *left);
198 void vp9_dc_left_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const ui nt8_t *above, const uint8_t *left);
199 #define vp9_dc_left_predictor_32x32 vp9_dc_left_predictor_32x32_sse2
200
201 void vp9_dc_left_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
202 void vp9_dc_left_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8 _t *above, const uint8_t *left);
203 #define vp9_dc_left_predictor_4x4 vp9_dc_left_predictor_4x4_sse
204
205 void vp9_dc_left_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
206 void vp9_dc_left_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8 _t *above, const uint8_t *left);
207 #define vp9_dc_left_predictor_8x8 vp9_dc_left_predictor_8x8_sse
208
209 void vp9_dc_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *a bove, const uint8_t *left);
210 void vp9_dc_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
211 #define vp9_dc_predictor_16x16 vp9_dc_predictor_16x16_sse2
212
213 void vp9_dc_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *a bove, const uint8_t *left);
214 void vp9_dc_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
215 #define vp9_dc_predictor_32x32 vp9_dc_predictor_32x32_sse2
216
217 void vp9_dc_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *abo ve, const uint8_t *left);
218 void vp9_dc_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *a bove, const uint8_t *left);
219 #define vp9_dc_predictor_4x4 vp9_dc_predictor_4x4_sse
220
221 void vp9_dc_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *abo ve, const uint8_t *left);
222 void vp9_dc_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *a bove, const uint8_t *left);
223 #define vp9_dc_predictor_8x8 vp9_dc_predictor_8x8_sse
224
225 void vp9_dc_top_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_ t *above, const uint8_t *left);
226 void vp9_dc_top_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uin t8_t *above, const uint8_t *left);
227 #define vp9_dc_top_predictor_16x16 vp9_dc_top_predictor_16x16_sse2
228
229 void vp9_dc_top_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_ t *above, const uint8_t *left);
230 void vp9_dc_top_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uin t8_t *above, const uint8_t *left);
231 #define vp9_dc_top_predictor_32x32 vp9_dc_top_predictor_32x32_sse2
232
233 void vp9_dc_top_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
234 void vp9_dc_top_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_ t *above, const uint8_t *left);
235 #define vp9_dc_top_predictor_4x4 vp9_dc_top_predictor_4x4_sse
236
237 void vp9_dc_top_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
238 void vp9_dc_top_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_ t *above, const uint8_t *left);
239 #define vp9_dc_top_predictor_8x8 vp9_dc_top_predictor_8x8_sse
240
241 int vp9_denoiser_filter_c(const uint8_t *sig, int sig_stride, const uint8_t *mc_ avg, int mc_avg_stride, uint8_t *avg, int avg_stride, int increase_denoising, BL OCK_SIZE bs, int motion_magnitude);
242 int vp9_denoiser_filter_sse2(const uint8_t *sig, int sig_stride, const uint8_t * mc_avg, int mc_avg_stride, uint8_t *avg, int avg_stride, int increase_denoising, BLOCK_SIZE bs, int motion_magnitude);
243 #define vp9_denoiser_filter vp9_denoiser_filter_sse2
244
245 int vp9_diamond_search_sad_c(const struct macroblock *x, const struct search_sit e_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);
246 #define vp9_diamond_search_sad vp9_diamond_search_sad_c
247
248 void vp9_fdct16x16_c(const int16_t *input, tran_low_t *output, int stride);
249 void vp9_fdct16x16_sse2(const int16_t *input, tran_low_t *output, int stride);
250 #define vp9_fdct16x16 vp9_fdct16x16_sse2
251
252 void vp9_fdct16x16_1_c(const int16_t *input, tran_low_t *output, int stride);
253 void vp9_fdct16x16_1_sse2(const int16_t *input, tran_low_t *output, int stride);
254 #define vp9_fdct16x16_1 vp9_fdct16x16_1_sse2
255
256 void vp9_fdct32x32_c(const int16_t *input, tran_low_t *output, int stride);
257 void vp9_fdct32x32_sse2(const int16_t *input, tran_low_t *output, int stride);
258 void vp9_fdct32x32_avx2(const int16_t *input, tran_low_t *output, int stride);
259 RTCD_EXTERN void (*vp9_fdct32x32)(const int16_t *input, tran_low_t *output, int stride);
260
261 void vp9_fdct32x32_1_c(const int16_t *input, tran_low_t *output, int stride);
262 void vp9_fdct32x32_1_sse2(const int16_t *input, tran_low_t *output, int stride);
263 #define vp9_fdct32x32_1 vp9_fdct32x32_1_sse2
264
265 void vp9_fdct32x32_rd_c(const int16_t *input, tran_low_t *output, int stride);
266 void vp9_fdct32x32_rd_sse2(const int16_t *input, tran_low_t *output, int stride) ;
267 void vp9_fdct32x32_rd_avx2(const int16_t *input, tran_low_t *output, int stride) ;
268 RTCD_EXTERN void (*vp9_fdct32x32_rd)(const int16_t *input, tran_low_t *output, i nt stride);
269
270 void vp9_fdct4x4_c(const int16_t *input, tran_low_t *output, int stride);
271 void vp9_fdct4x4_sse2(const int16_t *input, tran_low_t *output, int stride);
272 #define vp9_fdct4x4 vp9_fdct4x4_sse2
273
274 void vp9_fdct4x4_1_c(const int16_t *input, tran_low_t *output, int stride);
275 void vp9_fdct4x4_1_sse2(const int16_t *input, tran_low_t *output, int stride);
276 #define vp9_fdct4x4_1 vp9_fdct4x4_1_sse2
277
278 void vp9_fdct8x8_c(const int16_t *input, tran_low_t *output, int stride);
279 void vp9_fdct8x8_sse2(const int16_t *input, tran_low_t *output, int stride);
280 void vp9_fdct8x8_ssse3(const int16_t *input, tran_low_t *output, int stride);
281 RTCD_EXTERN void (*vp9_fdct8x8)(const int16_t *input, tran_low_t *output, int st ride);
282
283 void vp9_fdct8x8_1_c(const int16_t *input, tran_low_t *output, int stride);
284 void vp9_fdct8x8_1_sse2(const int16_t *input, tran_low_t *output, int stride);
285 #define vp9_fdct8x8_1 vp9_fdct8x8_1_sse2
286
287 void vp9_fdct8x8_quant_c(const int16_t *input, int stride, tran_low_t *coeff_ptr , intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *rou nd_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qc oeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr , const int16_t *scan, const int16_t *iscan);
288 void vp9_fdct8x8_quant_sse2(const int16_t *input, int stride, 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, uint16_t *eob_ ptr, const int16_t *scan, const int16_t *iscan);
289 void vp9_fdct8x8_quant_ssse3(const int16_t *input, int stride, 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, uint16_t *eob _ptr, const int16_t *scan, const int16_t *iscan);
290 RTCD_EXTERN void (*vp9_fdct8x8_quant)(const int16_t *input, int stride, 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, t ran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint 16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
291
292 void vp9_fht16x16_c(const int16_t *input, tran_low_t *output, int stride, int tx _type);
293 void vp9_fht16x16_sse2(const int16_t *input, tran_low_t *output, int stride, int tx_type);
294 #define vp9_fht16x16 vp9_fht16x16_sse2
295
296 void vp9_fht4x4_c(const int16_t *input, tran_low_t *output, int stride, int tx_t ype);
297 void vp9_fht4x4_sse2(const int16_t *input, tran_low_t *output, int stride, int t x_type);
298 #define vp9_fht4x4 vp9_fht4x4_sse2
299
300 void vp9_fht8x8_c(const int16_t *input, tran_low_t *output, int stride, int tx_t ype);
301 void vp9_fht8x8_sse2(const int16_t *input, tran_low_t *output, int stride, int t x_type);
302 #define vp9_fht8x8 vp9_fht8x8_sse2
303
304 void vp9_filter_by_weight16x16_c(const uint8_t *src, int src_stride, uint8_t *ds t, int dst_stride, int src_weight);
305 void vp9_filter_by_weight16x16_sse2(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
306 #define vp9_filter_by_weight16x16 vp9_filter_by_weight16x16_sse2
307
308 void vp9_filter_by_weight8x8_c(const uint8_t *src, int src_stride, uint8_t *dst, int dst_stride, int src_weight);
309 void vp9_filter_by_weight8x8_sse2(const uint8_t *src, int src_stride, uint8_t *d st, int dst_stride, int src_weight);
310 #define vp9_filter_by_weight8x8 vp9_filter_by_weight8x8_sse2
311
312 int 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_p er_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *c enter_mv);
313 #define vp9_full_range_search vp9_full_range_search_c
314
315 int vp9_full_search_sad_c(const struct macroblock *x, const struct mv *ref_mv, i nt sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const st ruct mv *center_mv, struct mv *best_mv);
316 int vp9_full_search_sadx3(const struct macroblock *x, const struct mv *ref_mv, i nt sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const st ruct mv *center_mv, struct mv *best_mv);
317 int vp9_full_search_sadx8(const struct macroblock *x, const struct mv *ref_mv, i nt sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const st ruct mv *center_mv, struct mv *best_mv);
318 RTCD_EXTERN int (*vp9_full_search_sad)(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);
319
320 void vp9_fwht4x4_c(const int16_t *input, tran_low_t *output, int stride);
321 void vp9_fwht4x4_mmx(const int16_t *input, tran_low_t *output, int stride);
322 #define vp9_fwht4x4 vp9_fwht4x4_mmx
323
324 void vp9_get16x16var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
325 void vp9_get16x16var_sse2(const uint8_t *src_ptr, int source_stride, const uint8 _t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
326 void vp9_get16x16var_avx2(const uint8_t *src_ptr, int source_stride, const uint8 _t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
327 RTCD_EXTERN void (*vp9_get16x16var)(const uint8_t *src_ptr, int source_stride, c onst uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
328
329 void vp9_get8x8var_c(const uint8_t *src_ptr, int source_stride, const uint8_t *r ef_ptr, int ref_stride, unsigned int *sse, int *sum);
330 void vp9_get8x8var_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, int *sum);
331 #define vp9_get8x8var vp9_get8x8var_sse2
332
333 unsigned int vp9_get_mb_ss_c(const int16_t *);
334 unsigned int vp9_get_mb_ss_sse2(const int16_t *);
335 #define vp9_get_mb_ss vp9_get_mb_ss_sse2
336
337 void vp9_h_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *ab ove, const uint8_t *left);
338 void vp9_h_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
339 RTCD_EXTERN void (*vp9_h_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, cons t uint8_t *above, const uint8_t *left);
340
341 void vp9_h_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *ab ove, const uint8_t *left);
342 void vp9_h_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
343 RTCD_EXTERN void (*vp9_h_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, cons t uint8_t *above, const uint8_t *left);
344
345 void vp9_h_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *abov e, const uint8_t *left);
346 void vp9_h_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t * above, const uint8_t *left);
347 RTCD_EXTERN void (*vp9_h_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
348
349 void vp9_h_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *abov e, const uint8_t *left);
350 void vp9_h_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t * above, const uint8_t *left);
351 RTCD_EXTERN void (*vp9_h_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
352
353 void vp9_hadamard_16x16_c(int16_t const *src_diff, int src_stride, int16_t *coef f);
354 void vp9_hadamard_16x16_sse2(int16_t const *src_diff, int src_stride, int16_t *c oeff);
355 #define vp9_hadamard_16x16 vp9_hadamard_16x16_sse2
356
357 void vp9_hadamard_8x8_c(int16_t const *src_diff, int src_stride, int16_t *coeff) ;
358 void vp9_hadamard_8x8_sse2(int16_t const *src_diff, int src_stride, int16_t *coe ff);
359 void vp9_hadamard_8x8_ssse3(int16_t const *src_diff, int src_stride, int16_t *co eff);
360 RTCD_EXTERN void (*vp9_hadamard_8x8)(int16_t const *src_diff, int src_stride, in t16_t *coeff);
361
362 void vp9_idct16x16_10_add_c(const tran_low_t *input, uint8_t *dest, int dest_str ide);
363 void vp9_idct16x16_10_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_ stride);
364 #define vp9_idct16x16_10_add vp9_idct16x16_10_add_sse2
365
366 void vp9_idct16x16_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stri de);
367 void vp9_idct16x16_1_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_s tride);
368 #define vp9_idct16x16_1_add vp9_idct16x16_1_add_sse2
369
370 void vp9_idct16x16_256_add_c(const tran_low_t *input, uint8_t *dest, int dest_st ride);
371 void vp9_idct16x16_256_add_sse2(const tran_low_t *input, uint8_t *dest, int dest _stride);
372 #define vp9_idct16x16_256_add vp9_idct16x16_256_add_sse2
373
374 void vp9_idct32x32_1024_add_c(const tran_low_t *input, uint8_t *dest, int dest_s tride);
375 void vp9_idct32x32_1024_add_sse2(const tran_low_t *input, uint8_t *dest, int des t_stride);
376 #define vp9_idct32x32_1024_add vp9_idct32x32_1024_add_sse2
377
378 void vp9_idct32x32_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stri de);
379 void vp9_idct32x32_1_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_s tride);
380 #define vp9_idct32x32_1_add vp9_idct32x32_1_add_sse2
381
382 void vp9_idct32x32_34_add_c(const tran_low_t *input, uint8_t *dest, int dest_str ide);
383 void vp9_idct32x32_34_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_ stride);
384 #define vp9_idct32x32_34_add vp9_idct32x32_34_add_sse2
385
386 void vp9_idct4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_strid e);
387 void vp9_idct4x4_16_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_st ride);
388 #define vp9_idct4x4_16_add vp9_idct4x4_16_add_sse2
389
390 void vp9_idct4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride );
391 void vp9_idct4x4_1_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_str ide);
392 #define vp9_idct4x4_1_add vp9_idct4x4_1_add_sse2
393
394 void vp9_idct8x8_12_add_c(const tran_low_t *input, uint8_t *dest, int dest_strid e);
395 void vp9_idct8x8_12_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_st ride);
396 void vp9_idct8x8_12_add_ssse3(const tran_low_t *input, uint8_t *dest, int dest_s tride);
397 RTCD_EXTERN void (*vp9_idct8x8_12_add)(const tran_low_t *input, uint8_t *dest, i nt dest_stride);
398
399 void vp9_idct8x8_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride );
400 void vp9_idct8x8_1_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_str ide);
401 #define vp9_idct8x8_1_add vp9_idct8x8_1_add_sse2
402
403 void vp9_idct8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_strid e);
404 void vp9_idct8x8_64_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_st ride);
405 void vp9_idct8x8_64_add_ssse3(const tran_low_t *input, uint8_t *dest, int dest_s tride);
406 RTCD_EXTERN void (*vp9_idct8x8_64_add)(const tran_low_t *input, uint8_t *dest, i nt dest_stride);
407
408 void vp9_iht16x16_256_add_c(const tran_low_t *input, uint8_t *output, int pitch, int tx_type);
409 void vp9_iht16x16_256_add_sse2(const tran_low_t *input, uint8_t *output, int pit ch, int tx_type);
410 #define vp9_iht16x16_256_add vp9_iht16x16_256_add_sse2
411
412 void vp9_iht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride , int tx_type);
413 void vp9_iht4x4_16_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_str ide, int tx_type);
414 #define vp9_iht4x4_16_add vp9_iht4x4_16_add_sse2
415
416 void vp9_iht8x8_64_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride , int tx_type);
417 void vp9_iht8x8_64_add_sse2(const tran_low_t *input, uint8_t *dest, int dest_str ide, int tx_type);
418 #define vp9_iht8x8_64_add vp9_iht8x8_64_add_sse2
419
420 int16_t vp9_int_pro_col_c(uint8_t const *ref, const int width);
421 int16_t vp9_int_pro_col_sse2(uint8_t const *ref, const int width);
422 #define vp9_int_pro_col vp9_int_pro_col_sse2
423
424 void vp9_int_pro_row_c(int16_t *hbuf, uint8_t const *ref, const int ref_stride, const int height);
425 void vp9_int_pro_row_sse2(int16_t *hbuf, uint8_t const *ref, const int ref_strid e, const int height);
426 #define vp9_int_pro_row vp9_int_pro_row_sse2
427
428 void vp9_iwht4x4_16_add_c(const tran_low_t *input, uint8_t *dest, int dest_strid e);
429 #define vp9_iwht4x4_16_add vp9_iwht4x4_16_add_c
430
431 void vp9_iwht4x4_1_add_c(const tran_low_t *input, uint8_t *dest, int dest_stride );
432 #define vp9_iwht4x4_1_add vp9_iwht4x4_1_add_c
433
434 void vp9_lpf_horizontal_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
435 void vp9_lpf_horizontal_16_sse2(uint8_t *s, int pitch, const uint8_t *blimit, co nst uint8_t *limit, const uint8_t *thresh, int count);
436 void vp9_lpf_horizontal_16_avx2(uint8_t *s, int pitch, const uint8_t *blimit, co nst uint8_t *limit, const uint8_t *thresh, int count);
437 RTCD_EXTERN void (*vp9_lpf_horizontal_16)(uint8_t *s, int pitch, const uint8_t * blimit, const uint8_t *limit, const uint8_t *thresh, int count);
438
439 void vp9_lpf_horizontal_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
440 void vp9_lpf_horizontal_4_mmx(uint8_t *s, int pitch, const uint8_t *blimit, cons t uint8_t *limit, const uint8_t *thresh, int count);
441 #define vp9_lpf_horizontal_4 vp9_lpf_horizontal_4_mmx
442
443 void 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 uin t8_t *limit1, const uint8_t *thresh1);
444 void vp9_lpf_horizontal_4_dual_sse2(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);
445 #define vp9_lpf_horizontal_4_dual vp9_lpf_horizontal_4_dual_sse2
446
447 void vp9_lpf_horizontal_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
448 void vp9_lpf_horizontal_8_sse2(uint8_t *s, int pitch, const uint8_t *blimit, con st uint8_t *limit, const uint8_t *thresh, int count);
449 #define vp9_lpf_horizontal_8 vp9_lpf_horizontal_8_sse2
450
451 void 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 uin t8_t *limit1, const uint8_t *thresh1);
452 void vp9_lpf_horizontal_8_dual_sse2(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);
453 #define vp9_lpf_horizontal_8_dual vp9_lpf_horizontal_8_dual_sse2
454
455 void vp9_lpf_vertical_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const u int8_t *limit, const uint8_t *thresh);
456 void vp9_lpf_vertical_16_sse2(uint8_t *s, int pitch, const uint8_t *blimit, cons t uint8_t *limit, const uint8_t *thresh);
457 #define vp9_lpf_vertical_16 vp9_lpf_vertical_16_sse2
458
459 void vp9_lpf_vertical_16_dual_c(uint8_t *s, int pitch, const uint8_t *blimit, co nst uint8_t *limit, const uint8_t *thresh);
460 void vp9_lpf_vertical_16_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh);
461 #define vp9_lpf_vertical_16_dual vp9_lpf_vertical_16_dual_sse2
462
463 void vp9_lpf_vertical_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const ui nt8_t *limit, const uint8_t *thresh, int count);
464 void vp9_lpf_vertical_4_mmx(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
465 #define vp9_lpf_vertical_4 vp9_lpf_vertical_4_mmx
466
467 void vp9_lpf_vertical_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, co nst uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8 _t *limit1, const uint8_t *thresh1);
468 void vp9_lpf_vertical_4_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const ui nt8_t *limit1, const uint8_t *thresh1);
469 #define vp9_lpf_vertical_4_dual vp9_lpf_vertical_4_dual_sse2
470
471 void vp9_lpf_vertical_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const ui nt8_t *limit, const uint8_t *thresh, int count);
472 void vp9_lpf_vertical_8_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count);
473 #define vp9_lpf_vertical_8 vp9_lpf_vertical_8_sse2
474
475 void vp9_lpf_vertical_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, co nst uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8 _t *limit1, const uint8_t *thresh1);
476 void vp9_lpf_vertical_8_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const ui nt8_t *limit1, const uint8_t *thresh1);
477 #define vp9_lpf_vertical_8_dual vp9_lpf_vertical_8_dual_sse2
478
479 void vp9_mbpost_proc_across_ip_c(uint8_t *src, int pitch, int rows, int cols, in t flimit);
480 void vp9_mbpost_proc_across_ip_xmm(uint8_t *src, int pitch, int rows, int cols, int flimit);
481 #define vp9_mbpost_proc_across_ip vp9_mbpost_proc_across_ip_xmm
482
483 void vp9_mbpost_proc_down_c(uint8_t *dst, int pitch, int rows, int cols, int fli mit);
484 void vp9_mbpost_proc_down_xmm(uint8_t *dst, int pitch, int rows, int cols, int f limit);
485 #define vp9_mbpost_proc_down vp9_mbpost_proc_down_xmm
486
487 void vp9_minmax_8x8_c(const uint8_t *s, int p, const uint8_t *d, int dp, int *mi n, int *max);
488 void vp9_minmax_8x8_sse2(const uint8_t *s, int p, const uint8_t *d, int dp, int *min, int *max);
489 #define vp9_minmax_8x8 vp9_minmax_8x8_sse2
490
491 unsigned int vp9_mse16x16_c(const uint8_t *src_ptr, int source_stride, const ui nt8_t *ref_ptr, int recon_stride, unsigned int *sse);
492 unsigned int vp9_mse16x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
493 unsigned int vp9_mse16x16_avx2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
494 RTCD_EXTERN unsigned int (*vp9_mse16x16)(const uint8_t *src_ptr, int source_str ide, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
495
496 unsigned int vp9_mse16x8_c(const uint8_t *src_ptr, int source_stride, const uin t8_t *ref_ptr, int recon_stride, unsigned int *sse);
497 unsigned int vp9_mse16x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
498 #define vp9_mse16x8 vp9_mse16x8_sse2
499
500 unsigned int vp9_mse8x16_c(const uint8_t *src_ptr, int source_stride, const uin t8_t *ref_ptr, int recon_stride, unsigned int *sse);
501 unsigned int vp9_mse8x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse);
502 #define vp9_mse8x16 vp9_mse8x16_sse2
503
504 unsigned int vp9_mse8x8_c(const uint8_t *src_ptr, int source_stride, const uint 8_t *ref_ptr, int recon_stride, unsigned int *sse);
505 unsigned int vp9_mse8x8_sse2(const uint8_t *src_ptr, int source_stride, const u int8_t *ref_ptr, int recon_stride, unsigned int *sse);
506 #define vp9_mse8x8 vp9_mse8x8_sse2
507
508 void vp9_plane_add_noise_c(uint8_t *Start, char *noise, char blackclamp[16], cha r whiteclamp[16], char bothclamp[16], unsigned int Width, unsigned int Height, i nt Pitch);
509 void vp9_plane_add_noise_wmt(uint8_t *Start, char *noise, char blackclamp[16], c har whiteclamp[16], char bothclamp[16], unsigned int Width, unsigned int Height, int Pitch);
510 #define vp9_plane_add_noise vp9_plane_add_noise_wmt
511
512 void vp9_post_proc_down_and_across_c(const uint8_t *src_ptr, uint8_t *dst_ptr, i nt src_pixels_per_line, int dst_pixels_per_line, int rows, int cols, int flimit) ;
513 void vp9_post_proc_down_and_across_xmm(const uint8_t *src_ptr, uint8_t *dst_ptr, int src_pixels_per_line, int dst_pixels_per_line, int rows, int cols, int flimi t);
514 #define vp9_post_proc_down_and_across vp9_post_proc_down_and_across_xmm
515
516 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);
517 void vp9_quantize_b_sse2(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int ski p_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 *dqcoef f_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan);
518 void vp9_quantize_b_ssse3(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int sk ip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quan t_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoe ff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, cons t int16_t *iscan);
519 RTCD_EXTERN void (*vp9_quantize_b)(const tran_low_t *coeff_ptr, intptr_t n_coeff s, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int1 6_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low _t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *s can, const int16_t *iscan);
520
521 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);
522 void vp9_quantize_b_32x32_ssse3(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, uint16_t *eob_ptr, const int16_t *scan , const int16_t *iscan);
523 RTCD_EXTERN void (*vp9_quantize_b_32x32)(const tran_low_t *coeff_ptr, intptr_t n _coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, cons t int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tr an_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int1 6_t *scan, const int16_t *iscan);
524
525 void 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_p tr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoeff_ ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, const i nt16_t *iscan);
526 void vp9_quantize_fp_sse2(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int sk ip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quan t_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqcoe ff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, cons t int16_t *iscan);
527 void vp9_quantize_fp_ssse3(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int s kip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *qua nt_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dqco eff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, con st int16_t *iscan);
528 RTCD_EXTERN void (*vp9_quantize_fp)(const tran_low_t *coeff_ptr, intptr_t n_coef fs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int 16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_lo w_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t * scan, const int16_t *iscan);
529
530 void 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 *q uant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, tran_low_t *dq coeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int16_t *scan, c onst int16_t *iscan);
531 void vp9_quantize_fp_32x32_ssse3(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, uint16_t *eob_ptr, const int16_t *sca n, const int16_t *iscan);
532 RTCD_EXTERN void (*vp9_quantize_fp_32x32)(const tran_low_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, con st int16_t *quant_ptr, const int16_t *quant_shift_ptr, tran_low_t *qcoeff_ptr, t ran_low_t *dqcoeff_ptr, const int16_t *dequant_ptr, uint16_t *eob_ptr, const int 16_t *scan, const int16_t *iscan);
533
534 int16_t vp9_satd_c(const int16_t *coeff, int length);
535 int16_t vp9_satd_sse2(const int16_t *coeff, int length);
536 #define vp9_satd vp9_satd_sse2
537
538 unsigned int vp9_sub_pixel_avg_variance16x16_c(const uint8_t *src_ptr, int sourc e_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uns igned int *sse, const uint8_t *second_pred);
539 unsigned int vp9_sub_pixel_avg_variance16x16_sse2(const uint8_t *src_ptr, int so urce_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred);
540 unsigned int vp9_sub_pixel_avg_variance16x16_ssse3(const uint8_t *src_ptr, int s ource_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred);
541 RTCD_EXTERN unsigned int (*vp9_sub_pixel_avg_variance16x16)(const uint8_t *src_p tr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int re f_stride, unsigned int *sse, const uint8_t *second_pred);
542
543 unsigned int vp9_sub_pixel_avg_variance16x32_c(const uint8_t *src_ptr, int sourc e_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uns igned int *sse, const uint8_t *second_pred);
544 unsigned int vp9_sub_pixel_avg_variance16x32_sse2(const uint8_t *src_ptr, int so urce_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred);
545 unsigned int vp9_sub_pixel_avg_variance16x32_ssse3(const uint8_t *src_ptr, int s ource_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred);
546 RTCD_EXTERN unsigned int (*vp9_sub_pixel_avg_variance16x32)(const uint8_t *src_p tr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int re f_stride, unsigned int *sse, const uint8_t *second_pred);
547
548 unsigned 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, unsi gned int *sse, const uint8_t *second_pred);
549 unsigned int vp9_sub_pixel_avg_variance16x8_sse2(const uint8_t *src_ptr, int sou rce_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, u nsigned int *sse, const uint8_t *second_pred);
550 unsigned int vp9_sub_pixel_avg_variance16x8_ssse3(const uint8_t *src_ptr, int so urce_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred);
551 RTCD_EXTERN unsigned int (*vp9_sub_pixel_avg_variance16x8)(const uint8_t *src_pt r, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref _stride, unsigned int *sse, const uint8_t *second_pred);
552
553 unsigned int vp9_sub_pixel_avg_variance32x16_c(const uint8_t *src_ptr, int sourc e_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uns igned int *sse, const uint8_t *second_pred);
554 unsigned int vp9_sub_pixel_avg_variance32x16_sse2(const uint8_t *src_ptr, int so urce_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred);
555 unsigned int vp9_sub_pixel_avg_variance32x16_ssse3(const uint8_t *src_ptr, int s ource_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred);
556 RTCD_EXTERN unsigned int (*vp9_sub_pixel_avg_variance32x16)(const uint8_t *src_p tr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int re f_stride, unsigned int *sse, const uint8_t *second_pred);
557
558 unsigned int vp9_sub_pixel_avg_variance32x32_c(const uint8_t *src_ptr, int sourc e_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uns igned int *sse, const uint8_t *second_pred);
559 unsigned int vp9_sub_pixel_avg_variance32x32_sse2(const uint8_t *src_ptr, int so urce_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred);
560 unsigned int vp9_sub_pixel_avg_variance32x32_ssse3(const uint8_t *src_ptr, int s ource_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred);
561 unsigned int vp9_sub_pixel_avg_variance32x32_avx2(const uint8_t *src_ptr, int so urce_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred);
562 RTCD_EXTERN unsigned int (*vp9_sub_pixel_avg_variance32x32)(const uint8_t *src_p tr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int re f_stride, unsigned int *sse, const uint8_t *second_pred);
563
564 unsigned int vp9_sub_pixel_avg_variance32x64_c(const uint8_t *src_ptr, int sourc e_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uns igned int *sse, const uint8_t *second_pred);
565 unsigned int vp9_sub_pixel_avg_variance32x64_sse2(const uint8_t *src_ptr, int so urce_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred);
566 unsigned int vp9_sub_pixel_avg_variance32x64_ssse3(const uint8_t *src_ptr, int s ource_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred);
567 RTCD_EXTERN unsigned int (*vp9_sub_pixel_avg_variance32x64)(const uint8_t *src_p tr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int re f_stride, unsigned int *sse, const uint8_t *second_pred);
568
569 unsigned 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, unsig ned int *sse, const uint8_t *second_pred);
570 unsigned int vp9_sub_pixel_avg_variance4x4_sse(const uint8_t *src_ptr, int sourc e_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uns igned int *sse, const uint8_t *second_pred);
571 unsigned int vp9_sub_pixel_avg_variance4x4_ssse3(const uint8_t *src_ptr, int sou rce_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, u nsigned int *sse, const uint8_t *second_pred);
572 RTCD_EXTERN unsigned int (*vp9_sub_pixel_avg_variance4x4)(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);
573
574 unsigned 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, unsign ed int *sse, const uint8_t *second_pred);
575 unsigned int vp9_sub_pixel_avg_variance4x8_sse(const uint8_t *src_ptr, int sourc e_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsi gned int *sse, const uint8_t *second_pred);
576 unsigned int vp9_sub_pixel_avg_variance4x8_ssse3(const uint8_t *src_ptr, int sou rce_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, un signed int *sse, const uint8_t *second_pred);
577 RTCD_EXTERN unsigned int (*vp9_sub_pixel_avg_variance4x8)(const uint8_t *src_ptr , int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_s tride, unsigned int *sse, const uint8_t *second_pred);
578
579 unsigned int vp9_sub_pixel_avg_variance64x32_c(const uint8_t *src_ptr, int sourc e_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uns igned int *sse, const uint8_t *second_pred);
580 unsigned int vp9_sub_pixel_avg_variance64x32_sse2(const uint8_t *src_ptr, int so urce_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred);
581 unsigned int vp9_sub_pixel_avg_variance64x32_ssse3(const uint8_t *src_ptr, int s ource_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred);
582 RTCD_EXTERN unsigned int (*vp9_sub_pixel_avg_variance64x32)(const uint8_t *src_p tr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int re f_stride, unsigned int *sse, const uint8_t *second_pred);
583
584 unsigned int vp9_sub_pixel_avg_variance64x64_c(const uint8_t *src_ptr, int sourc e_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uns igned int *sse, const uint8_t *second_pred);
585 unsigned int vp9_sub_pixel_avg_variance64x64_sse2(const uint8_t *src_ptr, int so urce_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred);
586 unsigned int vp9_sub_pixel_avg_variance64x64_ssse3(const uint8_t *src_ptr, int s ource_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred);
587 unsigned int vp9_sub_pixel_avg_variance64x64_avx2(const uint8_t *src_ptr, int so urce_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred);
588 RTCD_EXTERN unsigned int (*vp9_sub_pixel_avg_variance64x64)(const uint8_t *src_p tr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int re f_stride, unsigned int *sse, const uint8_t *second_pred);
589
590 unsigned 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, unsi gned int *sse, const uint8_t *second_pred);
591 unsigned int vp9_sub_pixel_avg_variance8x16_sse2(const uint8_t *src_ptr, int sou rce_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, u nsigned int *sse, const uint8_t *second_pred);
592 unsigned int vp9_sub_pixel_avg_variance8x16_ssse3(const uint8_t *src_ptr, int so urce_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred);
593 RTCD_EXTERN unsigned int (*vp9_sub_pixel_avg_variance8x16)(const uint8_t *src_pt r, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref _stride, unsigned int *sse, const uint8_t *second_pred);
594
595 unsigned 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, unsign ed int *sse, const uint8_t *second_pred);
596 unsigned int vp9_sub_pixel_avg_variance8x4_sse2(const uint8_t *src_ptr, int sour ce_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uns igned int *sse, const uint8_t *second_pred);
597 unsigned int vp9_sub_pixel_avg_variance8x4_ssse3(const uint8_t *src_ptr, int sou rce_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, un signed int *sse, const uint8_t *second_pred);
598 RTCD_EXTERN unsigned int (*vp9_sub_pixel_avg_variance8x4)(const uint8_t *src_ptr , int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_s tride, unsigned int *sse, const uint8_t *second_pred);
599
600 unsigned 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, unsig ned int *sse, const uint8_t *second_pred);
601 unsigned int vp9_sub_pixel_avg_variance8x8_sse2(const uint8_t *src_ptr, int sour ce_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, un signed int *sse, const uint8_t *second_pred);
602 unsigned int vp9_sub_pixel_avg_variance8x8_ssse3(const uint8_t *src_ptr, int sou rce_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, u nsigned int *sse, const uint8_t *second_pred);
603 RTCD_EXTERN unsigned int (*vp9_sub_pixel_avg_variance8x8)(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);
604
605 unsigned int vp9_sub_pixel_variance16x16_c(const uint8_t *src_ptr, int source_st ride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigne d int *sse);
606 unsigned int vp9_sub_pixel_variance16x16_sse2(const uint8_t *src_ptr, int source _stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsi gned int *sse);
607 unsigned int vp9_sub_pixel_variance16x16_ssse3(const uint8_t *src_ptr, int sourc e_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uns igned int *sse);
608 RTCD_EXTERN unsigned int (*vp9_sub_pixel_variance16x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_st ride, unsigned int *sse);
609
610 unsigned int vp9_sub_pixel_variance16x32_c(const uint8_t *src_ptr, int source_st ride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigne d int *sse);
611 unsigned int vp9_sub_pixel_variance16x32_sse2(const uint8_t *src_ptr, int source _stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsi gned int *sse);
612 unsigned int vp9_sub_pixel_variance16x32_ssse3(const uint8_t *src_ptr, int sourc e_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uns igned int *sse);
613 RTCD_EXTERN unsigned int (*vp9_sub_pixel_variance16x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_st ride, unsigned int *sse);
614
615 unsigned int vp9_sub_pixel_variance16x8_c(const uint8_t *src_ptr, int source_str ide, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
616 unsigned int vp9_sub_pixel_variance16x8_sse2(const uint8_t *src_ptr, int source_ stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsig ned int *sse);
617 unsigned int vp9_sub_pixel_variance16x8_ssse3(const uint8_t *src_ptr, int source _stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsi gned int *sse);
618 RTCD_EXTERN unsigned int (*vp9_sub_pixel_variance16x8)(const uint8_t *src_ptr, i nt source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_str ide, unsigned int *sse);
619
620 unsigned int vp9_sub_pixel_variance32x16_c(const uint8_t *src_ptr, int source_st ride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigne d int *sse);
621 unsigned int vp9_sub_pixel_variance32x16_sse2(const uint8_t *src_ptr, int source _stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsi gned int *sse);
622 unsigned int vp9_sub_pixel_variance32x16_ssse3(const uint8_t *src_ptr, int sourc e_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uns igned int *sse);
623 RTCD_EXTERN unsigned int (*vp9_sub_pixel_variance32x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_st ride, unsigned int *sse);
624
625 unsigned int vp9_sub_pixel_variance32x32_c(const uint8_t *src_ptr, int source_st ride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigne d int *sse);
626 unsigned int vp9_sub_pixel_variance32x32_sse2(const uint8_t *src_ptr, int source _stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsi gned int *sse);
627 unsigned int vp9_sub_pixel_variance32x32_ssse3(const uint8_t *src_ptr, int sourc e_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uns igned int *sse);
628 unsigned int vp9_sub_pixel_variance32x32_avx2(const uint8_t *src_ptr, int source _stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsi gned int *sse);
629 RTCD_EXTERN unsigned int (*vp9_sub_pixel_variance32x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_st ride, unsigned int *sse);
630
631 unsigned int vp9_sub_pixel_variance32x64_c(const uint8_t *src_ptr, int source_st ride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigne d int *sse);
632 unsigned int vp9_sub_pixel_variance32x64_sse2(const uint8_t *src_ptr, int source _stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsi gned int *sse);
633 unsigned int vp9_sub_pixel_variance32x64_ssse3(const uint8_t *src_ptr, int sourc e_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uns igned int *sse);
634 RTCD_EXTERN unsigned int (*vp9_sub_pixel_variance32x64)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_st ride, unsigned int *sse);
635
636 unsigned int vp9_sub_pixel_variance4x4_c(const uint8_t *src_ptr, int source_stri de, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
637 unsigned int vp9_sub_pixel_variance4x4_sse(const uint8_t *src_ptr, int source_st ride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigne d int *sse);
638 unsigned int vp9_sub_pixel_variance4x4_ssse3(const uint8_t *src_ptr, int source_ stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsig ned int *sse);
639 RTCD_EXTERN unsigned int (*vp9_sub_pixel_variance4x4)(const uint8_t *src_ptr, in t source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stri de, unsigned int *sse);
640
641 unsigned int vp9_sub_pixel_variance4x8_c(const uint8_t *src_ptr, int source_stri de, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned i nt *sse);
642 unsigned int vp9_sub_pixel_variance4x8_sse(const uint8_t *src_ptr, int source_st ride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
643 unsigned int vp9_sub_pixel_variance4x8_ssse3(const uint8_t *src_ptr, int source_ stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsign ed int *sse);
644 RTCD_EXTERN unsigned int (*vp9_sub_pixel_variance4x8)(const uint8_t *src_ptr, in t source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_strid e, unsigned int *sse);
645
646 unsigned int vp9_sub_pixel_variance64x32_c(const uint8_t *src_ptr, int source_st ride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigne d int *sse);
647 unsigned int vp9_sub_pixel_variance64x32_sse2(const uint8_t *src_ptr, int source _stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsi gned int *sse);
648 unsigned int vp9_sub_pixel_variance64x32_ssse3(const uint8_t *src_ptr, int sourc e_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uns igned int *sse);
649 RTCD_EXTERN unsigned int (*vp9_sub_pixel_variance64x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_st ride, unsigned int *sse);
650
651 unsigned int vp9_sub_pixel_variance64x64_c(const uint8_t *src_ptr, int source_st ride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigne d int *sse);
652 unsigned int vp9_sub_pixel_variance64x64_sse2(const uint8_t *src_ptr, int source _stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsi gned int *sse);
653 unsigned int vp9_sub_pixel_variance64x64_ssse3(const uint8_t *src_ptr, int sourc e_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, uns igned int *sse);
654 unsigned int vp9_sub_pixel_variance64x64_avx2(const uint8_t *src_ptr, int source _stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsi gned int *sse);
655 RTCD_EXTERN unsigned int (*vp9_sub_pixel_variance64x64)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_st ride, unsigned int *sse);
656
657 unsigned int vp9_sub_pixel_variance8x16_c(const uint8_t *src_ptr, int source_str ide, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
658 unsigned int vp9_sub_pixel_variance8x16_sse2(const uint8_t *src_ptr, int source_ stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsig ned int *sse);
659 unsigned int vp9_sub_pixel_variance8x16_ssse3(const uint8_t *src_ptr, int source _stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsi gned int *sse);
660 RTCD_EXTERN unsigned int (*vp9_sub_pixel_variance8x16)(const uint8_t *src_ptr, i nt source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_str ide, unsigned int *sse);
661
662 unsigned int vp9_sub_pixel_variance8x4_c(const uint8_t *src_ptr, int source_stri de, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned i nt *sse);
663 unsigned int vp9_sub_pixel_variance8x4_sse2(const uint8_t *src_ptr, int source_s tride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigne d int *sse);
664 unsigned int vp9_sub_pixel_variance8x4_ssse3(const uint8_t *src_ptr, int source_ stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsign ed int *sse);
665 RTCD_EXTERN unsigned int (*vp9_sub_pixel_variance8x4)(const uint8_t *src_ptr, in t source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_strid e, unsigned int *sse);
666
667 unsigned int vp9_sub_pixel_variance8x8_c(const uint8_t *src_ptr, int source_stri de, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
668 unsigned int vp9_sub_pixel_variance8x8_sse2(const uint8_t *src_ptr, int source_s tride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsign ed int *sse);
669 unsigned int vp9_sub_pixel_variance8x8_ssse3(const uint8_t *src_ptr, int source_ stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsig ned int *sse);
670 RTCD_EXTERN unsigned int (*vp9_sub_pixel_variance8x8)(const uint8_t *src_ptr, in t source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stri de, unsigned int *sse);
671
672 void 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, p trdiff_t pred_stride);
673 void vp9_subtract_block_sse2(int rows, int cols, int16_t *diff_ptr, ptrdiff_t di ff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr , ptrdiff_t pred_stride);
674 #define vp9_subtract_block vp9_subtract_block_sse2
675
676 void 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 f ilter_weight, unsigned int *accumulator, uint16_t *count);
677 void vp9_temporal_filter_apply_sse2(uint8_t *frame1, unsigned int stride, uint8_ t *frame2, unsigned int block_width, unsigned int block_height, int strength, in t filter_weight, unsigned int *accumulator, uint16_t *count);
678 #define vp9_temporal_filter_apply vp9_temporal_filter_apply_sse2
679
680 void vp9_tm_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *a bove, const uint8_t *left);
681 void vp9_tm_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
682 #define vp9_tm_predictor_16x16 vp9_tm_predictor_16x16_sse2
683
684 void vp9_tm_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *a bove, const uint8_t *left);
685 void vp9_tm_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
686 #define vp9_tm_predictor_32x32 vp9_tm_predictor_32x32_sse2
687
688 void vp9_tm_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *abo ve, const uint8_t *left);
689 void vp9_tm_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *a bove, const uint8_t *left);
690 #define vp9_tm_predictor_4x4 vp9_tm_predictor_4x4_sse
691
692 void vp9_tm_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *abo ve, const uint8_t *left);
693 void vp9_tm_predictor_8x8_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t * above, const uint8_t *left);
694 #define vp9_tm_predictor_8x8 vp9_tm_predictor_8x8_sse2
695
696 void vp9_v_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *ab ove, const uint8_t *left);
697 void vp9_v_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
698 #define vp9_v_predictor_16x16 vp9_v_predictor_16x16_sse2
699
700 void vp9_v_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *ab ove, const uint8_t *left);
701 void vp9_v_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left);
702 #define vp9_v_predictor_32x32 vp9_v_predictor_32x32_sse2
703
704 void vp9_v_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *abov e, const uint8_t *left);
705 void vp9_v_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *ab ove, const uint8_t *left);
706 #define vp9_v_predictor_4x4 vp9_v_predictor_4x4_sse
707
708 void vp9_v_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *abov e, const uint8_t *left);
709 void vp9_v_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *ab ove, const uint8_t *left);
710 #define vp9_v_predictor_8x8 vp9_v_predictor_8x8_sse
711
712 unsigned int vp9_variance16x16_c(const uint8_t *src_ptr, int source_stride, cons t uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
713 unsigned int vp9_variance16x16_sse2(const uint8_t *src_ptr, int source_stride, c onst uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
714 unsigned int vp9_variance16x16_avx2(const uint8_t *src_ptr, int source_stride, c onst uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
715 RTCD_EXTERN unsigned int (*vp9_variance16x16)(const uint8_t *src_ptr, int source _stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
716
717 unsigned int vp9_variance16x32_c(const uint8_t *src_ptr, int source_stride, cons t uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
718 unsigned int vp9_variance16x32_sse2(const uint8_t *src_ptr, int source_stride, c onst uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
719 #define vp9_variance16x32 vp9_variance16x32_sse2
720
721 unsigned int vp9_variance16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
722 unsigned int vp9_variance16x8_sse2(const uint8_t *src_ptr, int source_stride, co nst uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
723 #define vp9_variance16x8 vp9_variance16x8_sse2
724
725 unsigned int vp9_variance32x16_c(const uint8_t *src_ptr, int source_stride, cons t uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
726 unsigned int vp9_variance32x16_sse2(const uint8_t *src_ptr, int source_stride, c onst uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
727 unsigned int vp9_variance32x16_avx2(const uint8_t *src_ptr, int source_stride, c onst uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
728 RTCD_EXTERN unsigned int (*vp9_variance32x16)(const uint8_t *src_ptr, int source _stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
729
730 unsigned int vp9_variance32x32_c(const uint8_t *src_ptr, int source_stride, cons t uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
731 unsigned int vp9_variance32x32_sse2(const uint8_t *src_ptr, int source_stride, c onst uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
732 unsigned int vp9_variance32x32_avx2(const uint8_t *src_ptr, int source_stride, c onst uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
733 RTCD_EXTERN unsigned int (*vp9_variance32x32)(const uint8_t *src_ptr, int source _stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
734
735 unsigned int vp9_variance32x64_c(const uint8_t *src_ptr, int source_stride, cons t uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
736 unsigned int vp9_variance32x64_sse2(const uint8_t *src_ptr, int source_stride, c onst uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
737 #define vp9_variance32x64 vp9_variance32x64_sse2
738
739 unsigned int vp9_variance4x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
740 unsigned int vp9_variance4x4_sse2(const uint8_t *src_ptr, int source_stride, con st uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
741 #define vp9_variance4x4 vp9_variance4x4_sse2
742
743 unsigned int vp9_variance4x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
744 unsigned int vp9_variance4x8_sse2(const uint8_t *src_ptr, int source_stride, con st uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
745 #define vp9_variance4x8 vp9_variance4x8_sse2
746
747 unsigned int vp9_variance64x32_c(const uint8_t *src_ptr, int source_stride, cons t uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
748 unsigned int vp9_variance64x32_sse2(const uint8_t *src_ptr, int source_stride, c onst uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
749 unsigned int vp9_variance64x32_avx2(const uint8_t *src_ptr, int source_stride, c onst uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
750 RTCD_EXTERN unsigned int (*vp9_variance64x32)(const uint8_t *src_ptr, int source _stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
751
752 unsigned int vp9_variance64x64_c(const uint8_t *src_ptr, int source_stride, cons t uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
753 unsigned int vp9_variance64x64_sse2(const uint8_t *src_ptr, int source_stride, c onst uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
754 unsigned int vp9_variance64x64_avx2(const uint8_t *src_ptr, int source_stride, c onst uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
755 RTCD_EXTERN unsigned int (*vp9_variance64x64)(const uint8_t *src_ptr, int source _stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
756
757 unsigned int vp9_variance8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
758 unsigned int vp9_variance8x16_sse2(const uint8_t *src_ptr, int source_stride, co nst uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
759 #define vp9_variance8x16 vp9_variance8x16_sse2
760
761 unsigned int vp9_variance8x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
762 unsigned int vp9_variance8x4_sse2(const uint8_t *src_ptr, int source_stride, con st uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
763 #define vp9_variance8x4 vp9_variance8x4_sse2
764
765 unsigned int vp9_variance8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
766 unsigned int vp9_variance8x8_sse2(const uint8_t *src_ptr, int source_stride, con st uint8_t *ref_ptr, int ref_stride, unsigned int *sse);
767 #define vp9_variance8x8 vp9_variance8x8_sse2
768
769 int vp9_vector_var_c(int16_t const *ref, int16_t const *src, const int bwl);
770 int vp9_vector_var_sse2(int16_t const *ref, int16_t const *src, const int bwl);
771 #define vp9_vector_var vp9_vector_var_sse2
772
773 void vp9_rtcd(void);
774
775 #ifdef RTCD_C
776 #include "vpx_ports/x86.h"
777 static void setup_rtcd_internal(void)
778 {
779 int flags = x86_simd_caps();
780
781 (void)flags;
782
783 vp9_block_error = vp9_block_error_sse2;
784 if (flags & HAS_AVX2) vp9_block_error = vp9_block_error_avx2;
785 vp9_convolve8 = vp9_convolve8_sse2;
786 if (flags & HAS_SSSE3) vp9_convolve8 = vp9_convolve8_ssse3;
787 if (flags & HAS_AVX2) vp9_convolve8 = vp9_convolve8_avx2;
788 vp9_convolve8_avg = vp9_convolve8_avg_sse2;
789 if (flags & HAS_SSSE3) vp9_convolve8_avg = vp9_convolve8_avg_ssse3;
790 vp9_convolve8_avg_horiz = vp9_convolve8_avg_horiz_sse2;
791 if (flags & HAS_SSSE3) vp9_convolve8_avg_horiz = vp9_convolve8_avg_horiz_sss e3;
792 vp9_convolve8_avg_vert = vp9_convolve8_avg_vert_sse2;
793 if (flags & HAS_SSSE3) vp9_convolve8_avg_vert = vp9_convolve8_avg_vert_ssse3 ;
794 vp9_convolve8_horiz = vp9_convolve8_horiz_sse2;
795 if (flags & HAS_SSSE3) vp9_convolve8_horiz = vp9_convolve8_horiz_ssse3;
796 if (flags & HAS_AVX2) vp9_convolve8_horiz = vp9_convolve8_horiz_avx2;
797 vp9_convolve8_vert = vp9_convolve8_vert_sse2;
798 if (flags & HAS_SSSE3) vp9_convolve8_vert = vp9_convolve8_vert_ssse3;
799 if (flags & HAS_AVX2) vp9_convolve8_vert = vp9_convolve8_vert_avx2;
800 vp9_d153_predictor_16x16 = vp9_d153_predictor_16x16_c;
801 if (flags & HAS_SSSE3) vp9_d153_predictor_16x16 = vp9_d153_predictor_16x16_s sse3;
802 vp9_d153_predictor_4x4 = vp9_d153_predictor_4x4_c;
803 if (flags & HAS_SSSE3) vp9_d153_predictor_4x4 = vp9_d153_predictor_4x4_ssse3 ;
804 vp9_d153_predictor_8x8 = vp9_d153_predictor_8x8_c;
805 if (flags & HAS_SSSE3) vp9_d153_predictor_8x8 = vp9_d153_predictor_8x8_ssse3 ;
806 vp9_d207_predictor_16x16 = vp9_d207_predictor_16x16_c;
807 if (flags & HAS_SSSE3) vp9_d207_predictor_16x16 = vp9_d207_predictor_16x16_s sse3;
808 vp9_d207_predictor_32x32 = vp9_d207_predictor_32x32_c;
809 if (flags & HAS_SSSE3) vp9_d207_predictor_32x32 = vp9_d207_predictor_32x32_s sse3;
810 vp9_d207_predictor_4x4 = vp9_d207_predictor_4x4_c;
811 if (flags & HAS_SSSE3) vp9_d207_predictor_4x4 = vp9_d207_predictor_4x4_ssse3 ;
812 vp9_d207_predictor_8x8 = vp9_d207_predictor_8x8_c;
813 if (flags & HAS_SSSE3) vp9_d207_predictor_8x8 = vp9_d207_predictor_8x8_ssse3 ;
814 vp9_d45_predictor_16x16 = vp9_d45_predictor_16x16_c;
815 if (flags & HAS_SSSE3) vp9_d45_predictor_16x16 = vp9_d45_predictor_16x16_sss e3;
816 vp9_d45_predictor_32x32 = vp9_d45_predictor_32x32_c;
817 if (flags & HAS_SSSE3) vp9_d45_predictor_32x32 = vp9_d45_predictor_32x32_sss e3;
818 vp9_d45_predictor_4x4 = vp9_d45_predictor_4x4_c;
819 if (flags & HAS_SSSE3) vp9_d45_predictor_4x4 = vp9_d45_predictor_4x4_ssse3;
820 vp9_d45_predictor_8x8 = vp9_d45_predictor_8x8_c;
821 if (flags & HAS_SSSE3) vp9_d45_predictor_8x8 = vp9_d45_predictor_8x8_ssse3;
822 vp9_d63_predictor_16x16 = vp9_d63_predictor_16x16_c;
823 if (flags & HAS_SSSE3) vp9_d63_predictor_16x16 = vp9_d63_predictor_16x16_sss e3;
824 vp9_d63_predictor_32x32 = vp9_d63_predictor_32x32_c;
825 if (flags & HAS_SSSE3) vp9_d63_predictor_32x32 = vp9_d63_predictor_32x32_sss e3;
826 vp9_d63_predictor_4x4 = vp9_d63_predictor_4x4_c;
827 if (flags & HAS_SSSE3) vp9_d63_predictor_4x4 = vp9_d63_predictor_4x4_ssse3;
828 vp9_d63_predictor_8x8 = vp9_d63_predictor_8x8_c;
829 if (flags & HAS_SSSE3) vp9_d63_predictor_8x8 = vp9_d63_predictor_8x8_ssse3;
830 vp9_fdct32x32 = vp9_fdct32x32_sse2;
831 if (flags & HAS_AVX2) vp9_fdct32x32 = vp9_fdct32x32_avx2;
832 vp9_fdct32x32_rd = vp9_fdct32x32_rd_sse2;
833 if (flags & HAS_AVX2) vp9_fdct32x32_rd = vp9_fdct32x32_rd_avx2;
834 vp9_fdct8x8 = vp9_fdct8x8_sse2;
835 if (flags & HAS_SSSE3) vp9_fdct8x8 = vp9_fdct8x8_ssse3;
836 vp9_fdct8x8_quant = vp9_fdct8x8_quant_sse2;
837 if (flags & HAS_SSSE3) vp9_fdct8x8_quant = vp9_fdct8x8_quant_ssse3;
838 vp9_full_search_sad = vp9_full_search_sad_c;
839 if (flags & HAS_SSE3) vp9_full_search_sad = vp9_full_search_sadx3;
840 if (flags & HAS_SSE4_1) vp9_full_search_sad = vp9_full_search_sadx8;
841 vp9_get16x16var = vp9_get16x16var_sse2;
842 if (flags & HAS_AVX2) vp9_get16x16var = vp9_get16x16var_avx2;
843 vp9_h_predictor_16x16 = vp9_h_predictor_16x16_c;
844 if (flags & HAS_SSSE3) vp9_h_predictor_16x16 = vp9_h_predictor_16x16_ssse3;
845 vp9_h_predictor_32x32 = vp9_h_predictor_32x32_c;
846 if (flags & HAS_SSSE3) vp9_h_predictor_32x32 = vp9_h_predictor_32x32_ssse3;
847 vp9_h_predictor_4x4 = vp9_h_predictor_4x4_c;
848 if (flags & HAS_SSSE3) vp9_h_predictor_4x4 = vp9_h_predictor_4x4_ssse3;
849 vp9_h_predictor_8x8 = vp9_h_predictor_8x8_c;
850 if (flags & HAS_SSSE3) vp9_h_predictor_8x8 = vp9_h_predictor_8x8_ssse3;
851 vp9_hadamard_8x8 = vp9_hadamard_8x8_sse2;
852 if (flags & HAS_SSSE3) vp9_hadamard_8x8 = vp9_hadamard_8x8_ssse3;
853 vp9_idct8x8_12_add = vp9_idct8x8_12_add_sse2;
854 if (flags & HAS_SSSE3) vp9_idct8x8_12_add = vp9_idct8x8_12_add_ssse3;
855 vp9_idct8x8_64_add = vp9_idct8x8_64_add_sse2;
856 if (flags & HAS_SSSE3) vp9_idct8x8_64_add = vp9_idct8x8_64_add_ssse3;
857 vp9_lpf_horizontal_16 = vp9_lpf_horizontal_16_sse2;
858 if (flags & HAS_AVX2) vp9_lpf_horizontal_16 = vp9_lpf_horizontal_16_avx2;
859 vp9_mse16x16 = vp9_mse16x16_sse2;
860 if (flags & HAS_AVX2) vp9_mse16x16 = vp9_mse16x16_avx2;
861 vp9_quantize_b = vp9_quantize_b_sse2;
862 if (flags & HAS_SSSE3) vp9_quantize_b = vp9_quantize_b_ssse3;
863 vp9_quantize_b_32x32 = vp9_quantize_b_32x32_c;
864 if (flags & HAS_SSSE3) vp9_quantize_b_32x32 = vp9_quantize_b_32x32_ssse3;
865 vp9_quantize_fp = vp9_quantize_fp_sse2;
866 if (flags & HAS_SSSE3) vp9_quantize_fp = vp9_quantize_fp_ssse3;
867 vp9_quantize_fp_32x32 = vp9_quantize_fp_32x32_c;
868 if (flags & HAS_SSSE3) vp9_quantize_fp_32x32 = vp9_quantize_fp_32x32_ssse3;
869 vp9_sub_pixel_avg_variance16x16 = vp9_sub_pixel_avg_variance16x16_sse2;
870 if (flags & HAS_SSSE3) vp9_sub_pixel_avg_variance16x16 = vp9_sub_pixel_avg_v ariance16x16_ssse3;
871 vp9_sub_pixel_avg_variance16x32 = vp9_sub_pixel_avg_variance16x32_sse2;
872 if (flags & HAS_SSSE3) vp9_sub_pixel_avg_variance16x32 = vp9_sub_pixel_avg_v ariance16x32_ssse3;
873 vp9_sub_pixel_avg_variance16x8 = vp9_sub_pixel_avg_variance16x8_sse2;
874 if (flags & HAS_SSSE3) vp9_sub_pixel_avg_variance16x8 = vp9_sub_pixel_avg_va riance16x8_ssse3;
875 vp9_sub_pixel_avg_variance32x16 = vp9_sub_pixel_avg_variance32x16_sse2;
876 if (flags & HAS_SSSE3) vp9_sub_pixel_avg_variance32x16 = vp9_sub_pixel_avg_v ariance32x16_ssse3;
877 vp9_sub_pixel_avg_variance32x32 = vp9_sub_pixel_avg_variance32x32_sse2;
878 if (flags & HAS_SSSE3) vp9_sub_pixel_avg_variance32x32 = vp9_sub_pixel_avg_v ariance32x32_ssse3;
879 if (flags & HAS_AVX2) vp9_sub_pixel_avg_variance32x32 = vp9_sub_pixel_avg_va riance32x32_avx2;
880 vp9_sub_pixel_avg_variance32x64 = vp9_sub_pixel_avg_variance32x64_sse2;
881 if (flags & HAS_SSSE3) vp9_sub_pixel_avg_variance32x64 = vp9_sub_pixel_avg_v ariance32x64_ssse3;
882 vp9_sub_pixel_avg_variance4x4 = vp9_sub_pixel_avg_variance4x4_sse;
883 if (flags & HAS_SSSE3) vp9_sub_pixel_avg_variance4x4 = vp9_sub_pixel_avg_var iance4x4_ssse3;
884 vp9_sub_pixel_avg_variance4x8 = vp9_sub_pixel_avg_variance4x8_sse;
885 if (flags & HAS_SSSE3) vp9_sub_pixel_avg_variance4x8 = vp9_sub_pixel_avg_var iance4x8_ssse3;
886 vp9_sub_pixel_avg_variance64x32 = vp9_sub_pixel_avg_variance64x32_sse2;
887 if (flags & HAS_SSSE3) vp9_sub_pixel_avg_variance64x32 = vp9_sub_pixel_avg_v ariance64x32_ssse3;
888 vp9_sub_pixel_avg_variance64x64 = vp9_sub_pixel_avg_variance64x64_sse2;
889 if (flags & HAS_SSSE3) vp9_sub_pixel_avg_variance64x64 = vp9_sub_pixel_avg_v ariance64x64_ssse3;
890 if (flags & HAS_AVX2) vp9_sub_pixel_avg_variance64x64 = vp9_sub_pixel_avg_va riance64x64_avx2;
891 vp9_sub_pixel_avg_variance8x16 = vp9_sub_pixel_avg_variance8x16_sse2;
892 if (flags & HAS_SSSE3) vp9_sub_pixel_avg_variance8x16 = vp9_sub_pixel_avg_va riance8x16_ssse3;
893 vp9_sub_pixel_avg_variance8x4 = vp9_sub_pixel_avg_variance8x4_sse2;
894 if (flags & HAS_SSSE3) vp9_sub_pixel_avg_variance8x4 = vp9_sub_pixel_avg_var iance8x4_ssse3;
895 vp9_sub_pixel_avg_variance8x8 = vp9_sub_pixel_avg_variance8x8_sse2;
896 if (flags & HAS_SSSE3) vp9_sub_pixel_avg_variance8x8 = vp9_sub_pixel_avg_var iance8x8_ssse3;
897 vp9_sub_pixel_variance16x16 = vp9_sub_pixel_variance16x16_sse2;
898 if (flags & HAS_SSSE3) vp9_sub_pixel_variance16x16 = vp9_sub_pixel_variance1 6x16_ssse3;
899 vp9_sub_pixel_variance16x32 = vp9_sub_pixel_variance16x32_sse2;
900 if (flags & HAS_SSSE3) vp9_sub_pixel_variance16x32 = vp9_sub_pixel_variance1 6x32_ssse3;
901 vp9_sub_pixel_variance16x8 = vp9_sub_pixel_variance16x8_sse2;
902 if (flags & HAS_SSSE3) vp9_sub_pixel_variance16x8 = vp9_sub_pixel_variance16 x8_ssse3;
903 vp9_sub_pixel_variance32x16 = vp9_sub_pixel_variance32x16_sse2;
904 if (flags & HAS_SSSE3) vp9_sub_pixel_variance32x16 = vp9_sub_pixel_variance3 2x16_ssse3;
905 vp9_sub_pixel_variance32x32 = vp9_sub_pixel_variance32x32_sse2;
906 if (flags & HAS_SSSE3) vp9_sub_pixel_variance32x32 = vp9_sub_pixel_variance3 2x32_ssse3;
907 if (flags & HAS_AVX2) vp9_sub_pixel_variance32x32 = vp9_sub_pixel_variance32 x32_avx2;
908 vp9_sub_pixel_variance32x64 = vp9_sub_pixel_variance32x64_sse2;
909 if (flags & HAS_SSSE3) vp9_sub_pixel_variance32x64 = vp9_sub_pixel_variance3 2x64_ssse3;
910 vp9_sub_pixel_variance4x4 = vp9_sub_pixel_variance4x4_sse;
911 if (flags & HAS_SSSE3) vp9_sub_pixel_variance4x4 = vp9_sub_pixel_variance4x4 _ssse3;
912 vp9_sub_pixel_variance4x8 = vp9_sub_pixel_variance4x8_sse;
913 if (flags & HAS_SSSE3) vp9_sub_pixel_variance4x8 = vp9_sub_pixel_variance4x8 _ssse3;
914 vp9_sub_pixel_variance64x32 = vp9_sub_pixel_variance64x32_sse2;
915 if (flags & HAS_SSSE3) vp9_sub_pixel_variance64x32 = vp9_sub_pixel_variance6 4x32_ssse3;
916 vp9_sub_pixel_variance64x64 = vp9_sub_pixel_variance64x64_sse2;
917 if (flags & HAS_SSSE3) vp9_sub_pixel_variance64x64 = vp9_sub_pixel_variance6 4x64_ssse3;
918 if (flags & HAS_AVX2) vp9_sub_pixel_variance64x64 = vp9_sub_pixel_variance64 x64_avx2;
919 vp9_sub_pixel_variance8x16 = vp9_sub_pixel_variance8x16_sse2;
920 if (flags & HAS_SSSE3) vp9_sub_pixel_variance8x16 = vp9_sub_pixel_variance8x 16_ssse3;
921 vp9_sub_pixel_variance8x4 = vp9_sub_pixel_variance8x4_sse2;
922 if (flags & HAS_SSSE3) vp9_sub_pixel_variance8x4 = vp9_sub_pixel_variance8x4 _ssse3;
923 vp9_sub_pixel_variance8x8 = vp9_sub_pixel_variance8x8_sse2;
924 if (flags & HAS_SSSE3) vp9_sub_pixel_variance8x8 = vp9_sub_pixel_variance8x8 _ssse3;
925 vp9_variance16x16 = vp9_variance16x16_sse2;
926 if (flags & HAS_AVX2) vp9_variance16x16 = vp9_variance16x16_avx2;
927 vp9_variance32x16 = vp9_variance32x16_sse2;
928 if (flags & HAS_AVX2) vp9_variance32x16 = vp9_variance32x16_avx2;
929 vp9_variance32x32 = vp9_variance32x32_sse2;
930 if (flags & HAS_AVX2) vp9_variance32x32 = vp9_variance32x32_avx2;
931 vp9_variance64x32 = vp9_variance64x32_sse2;
932 if (flags & HAS_AVX2) vp9_variance64x32 = vp9_variance64x32_avx2;
933 vp9_variance64x64 = vp9_variance64x64_sse2;
934 if (flags & HAS_AVX2) vp9_variance64x64 = vp9_variance64x64_avx2;
935 }
936 #endif
937
938 #ifdef __cplusplus
939 } // extern "C"
940 #endif
941
942 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698