1 // This file is generated. Do not edit.
2 #ifndef VPX_DSP_RTCD_H_
3 #define VPX_DSP_RTCD_H_
4
5 #ifdef RTCD_C
6 #define RTCD_EXTERN
7 #else
8 #define RTCD_EXTERN extern
9 #endif
10
11 /*
12 * DSP
13 */
14
15 #include "vpx/vpx_integer.h"
16 #include "vpx_dsp/vpx_dsp_common.h"
17 #include "vpx_dsp/vpx_filter.h"
18
19 #ifdef __cplusplus
20 extern "C" {
21 #endif
22
23 unsigned int vpx_avg_4x4_c(const uint8_t*, int p);
24 unsigned int vpx_avg_4x4_sse2(const uint8_t*, int p);
25 #define vpx_avg_4x4 vpx_avg_4x4_sse2
26
27 unsigned int vpx_avg_8x8_c(const uint8_t*, int p);
28 unsigned int vpx_avg_8x8_sse2(const uint8_t*, int p);
29 #define vpx_avg_8x8 vpx_avg_8x8_sse2
30
31 void vpx_comp_avg_pred_c(uint8_t* comp_pred,
32 const uint8_t* pred,
33 int width,
34 int height,
35 const uint8_t* ref,
36 int ref_stride);
37 void vpx_comp_avg_pred_sse2(uint8_t* comp_pred,
38 const uint8_t* pred,
39 int width,
40 int height,
41 const uint8_t* ref,
42 int ref_stride);
43 #define vpx_comp_avg_pred vpx_comp_avg_pred_sse2
44
45 void vpx_convolve8_c(const uint8_t* src,
46 ptrdiff_t src_stride,
47 uint8_t* dst,
48 ptrdiff_t dst_stride,
49 const InterpKernel* filter,
50 int x0_q4,
51 int x_step_q4,
52 int y0_q4,
53 int y_step_q4,
54 int w,
55 int h);
56 void vpx_convolve8_sse2(const uint8_t* src,
57 ptrdiff_t src_stride,
58 uint8_t* dst,
59 ptrdiff_t dst_stride,
60 const InterpKernel* filter,
61 int x0_q4,
62 int x_step_q4,
63 int y0_q4,
64 int y_step_q4,
65 int w,
66 int h);
67 void vpx_convolve8_ssse3(const uint8_t* src,
68 ptrdiff_t src_stride,
69 uint8_t* dst,
70 ptrdiff_t dst_stride,
71 const InterpKernel* filter,
72 int x0_q4,
73 int x_step_q4,
74 int y0_q4,
75 int y_step_q4,
76 int w,
77 int h);
78 void vpx_convolve8_avx2(const uint8_t* src,
79 ptrdiff_t src_stride,
80 uint8_t* dst,
81 ptrdiff_t dst_stride,
82 const InterpKernel* filter,
83 int x0_q4,
84 int x_step_q4,
85 int y0_q4,
86 int y_step_q4,
87 int w,
88 int h);
89 RTCD_EXTERN void (*vpx_convolve8)(const uint8_t* src,
90 ptrdiff_t src_stride,
91 uint8_t* dst,
92 ptrdiff_t dst_stride,
93 const InterpKernel* filter,
94 int x0_q4,
95 int x_step_q4,
96 int y0_q4,
97 int y_step_q4,
98 int w,
99 int h);
100
101 void vpx_convolve8_avg_c(const uint8_t* src,
102 ptrdiff_t src_stride,
103 uint8_t* dst,
104 ptrdiff_t dst_stride,
105 const InterpKernel* filter,
106 int x0_q4,
107 int x_step_q4,
108 int y0_q4,
109 int y_step_q4,
110 int w,
111 int h);
112 void vpx_convolve8_avg_sse2(const uint8_t* src,
113 ptrdiff_t src_stride,
114 uint8_t* dst,
115 ptrdiff_t dst_stride,
116 const InterpKernel* filter,
117 int x0_q4,
118 int x_step_q4,
119 int y0_q4,
120 int y_step_q4,
121 int w,
122 int h);
123 void vpx_convolve8_avg_ssse3(const uint8_t* src,
124 ptrdiff_t src_stride,
125 uint8_t* dst,
126 ptrdiff_t dst_stride,
127 const InterpKernel* filter,
128 int x0_q4,
129 int x_step_q4,
130 int y0_q4,
131 int y_step_q4,
132 int w,
133 int h);
134 void vpx_convolve8_avg_avx2(const uint8_t* src,
135 ptrdiff_t src_stride,
136 uint8_t* dst,
137 ptrdiff_t dst_stride,
138 const InterpKernel* filter,
139 int x0_q4,
140 int x_step_q4,
141 int y0_q4,
142 int y_step_q4,
143 int w,
144 int h);
145 RTCD_EXTERN void (*vpx_convolve8_avg)(const uint8_t* src,
146 ptrdiff_t src_stride,
147 uint8_t* dst,
148 ptrdiff_t dst_stride,
149 const InterpKernel* filter,
150 int x0_q4,
151 int x_step_q4,
152 int y0_q4,
153 int y_step_q4,
154 int w,
155 int h);
156
157 void vpx_convolve8_avg_horiz_c(const uint8_t* src,
158 ptrdiff_t src_stride,
159 uint8_t* dst,
160 ptrdiff_t dst_stride,
161 const InterpKernel* filter,
162 int x0_q4,
163 int x_step_q4,
164 int y0_q4,
165 int y_step_q4,
166 int w,
167 int h);
168 void vpx_convolve8_avg_horiz_sse2(const uint8_t* src,
169 ptrdiff_t src_stride,
170 uint8_t* dst,
171 ptrdiff_t dst_stride,
172 const InterpKernel* filter,
173 int x0_q4,
174 int x_step_q4,
175 int y0_q4,
176 int y_step_q4,
177 int w,
178 int h);
179 void vpx_convolve8_avg_horiz_ssse3(const uint8_t* src,
180 ptrdiff_t src_stride,
181 uint8_t* dst,
182 ptrdiff_t dst_stride,
183 const InterpKernel* filter,
184 int x0_q4,
185 int x_step_q4,
186 int y0_q4,
187 int y_step_q4,
188 int w,
189 int h);
190 void vpx_convolve8_avg_horiz_avx2(const uint8_t* src,
191 ptrdiff_t src_stride,
192 uint8_t* dst,
193 ptrdiff_t dst_stride,
194 const InterpKernel* filter,
195 int x0_q4,
196 int x_step_q4,
197 int y0_q4,
198 int y_step_q4,
199 int w,
200 int h);
201 RTCD_EXTERN void (*vpx_convolve8_avg_horiz)(const uint8_t* src,
202 ptrdiff_t src_stride,
203 uint8_t* dst,
204 ptrdiff_t dst_stride,
205 const InterpKernel* filter,
206 int x0_q4,
207 int x_step_q4,
208 int y0_q4,
209 int y_step_q4,
210 int w,
211 int h);
212
213 void vpx_convolve8_avg_vert_c(const uint8_t* src,
214 ptrdiff_t src_stride,
215 uint8_t* dst,
216 ptrdiff_t dst_stride,
217 const InterpKernel* filter,
218 int x0_q4,
219 int x_step_q4,
220 int y0_q4,
221 int y_step_q4,
222 int w,
223 int h);
224 void vpx_convolve8_avg_vert_sse2(const uint8_t* src,
225 ptrdiff_t src_stride,
226 uint8_t* dst,
227 ptrdiff_t dst_stride,
228 const InterpKernel* filter,
229 int x0_q4,
230 int x_step_q4,
231 int y0_q4,
232 int y_step_q4,
233 int w,
234 int h);
235 void vpx_convolve8_avg_vert_ssse3(const uint8_t* src,
236 ptrdiff_t src_stride,
237 uint8_t* dst,
238 ptrdiff_t dst_stride,
239 const InterpKernel* filter,
240 int x0_q4,
241 int x_step_q4,
242 int y0_q4,
243 int y_step_q4,
244 int w,
245 int h);
246 void vpx_convolve8_avg_vert_avx2(const uint8_t* src,
247 ptrdiff_t src_stride,
248 uint8_t* dst,
249 ptrdiff_t dst_stride,
250 const InterpKernel* filter,
251 int x0_q4,
252 int x_step_q4,
253 int y0_q4,
254 int y_step_q4,
255 int w,
256 int h);
257 RTCD_EXTERN void (*vpx_convolve8_avg_vert)(const uint8_t* src,
258 ptrdiff_t src_stride,
259 uint8_t* dst,
260 ptrdiff_t dst_stride,
261 const InterpKernel* filter,
262 int x0_q4,
263 int x_step_q4,
264 int y0_q4,
265 int y_step_q4,
266 int w,
267 int h);
268
269 void vpx_convolve8_horiz_c(const uint8_t* src,
270 ptrdiff_t src_stride,
271 uint8_t* dst,
272 ptrdiff_t dst_stride,
273 const InterpKernel* filter,
274 int x0_q4,
275 int x_step_q4,
276 int y0_q4,
277 int y_step_q4,
278 int w,
279 int h);
280 void vpx_convolve8_horiz_sse2(const uint8_t* src,
281 ptrdiff_t src_stride,
282 uint8_t* dst,
283 ptrdiff_t dst_stride,
284 const InterpKernel* filter,
285 int x0_q4,
286 int x_step_q4,
287 int y0_q4,
288 int y_step_q4,
289 int w,
290 int h);
291 void vpx_convolve8_horiz_ssse3(const uint8_t* src,
292 ptrdiff_t src_stride,
293 uint8_t* dst,
294 ptrdiff_t dst_stride,
295 const InterpKernel* filter,
296 int x0_q4,
297 int x_step_q4,
298 int y0_q4,
299 int y_step_q4,
300 int w,
301 int h);
302 void vpx_convolve8_horiz_avx2(const uint8_t* src,
303 ptrdiff_t src_stride,
304 uint8_t* dst,
305 ptrdiff_t dst_stride,
306 const InterpKernel* filter,
307 int x0_q4,
308 int x_step_q4,
309 int y0_q4,
310 int y_step_q4,
311 int w,
312 int h);
313 RTCD_EXTERN void (*vpx_convolve8_horiz)(const uint8_t* src,
314 ptrdiff_t src_stride,
315 uint8_t* dst,
316 ptrdiff_t dst_stride,
317 const InterpKernel* filter,
318 int x0_q4,
319 int x_step_q4,
320 int y0_q4,
321 int y_step_q4,
322 int w,
323 int h);
324
325 void vpx_convolve8_vert_c(const uint8_t* src,
326 ptrdiff_t src_stride,
327 uint8_t* dst,
328 ptrdiff_t dst_stride,
329 const InterpKernel* filter,
330 int x0_q4,
331 int x_step_q4,
332 int y0_q4,
333 int y_step_q4,
334 int w,
335 int h);
336 void vpx_convolve8_vert_sse2(const uint8_t* src,
337 ptrdiff_t src_stride,
338 uint8_t* dst,
339 ptrdiff_t dst_stride,
340 const InterpKernel* filter,
341 int x0_q4,
342 int x_step_q4,
343 int y0_q4,
344 int y_step_q4,
345 int w,
346 int h);
347 void vpx_convolve8_vert_ssse3(const uint8_t* src,
348 ptrdiff_t src_stride,
349 uint8_t* dst,
350 ptrdiff_t dst_stride,
351 const InterpKernel* filter,
352 int x0_q4,
353 int x_step_q4,
354 int y0_q4,
355 int y_step_q4,
356 int w,
357 int h);
358 void vpx_convolve8_vert_avx2(const uint8_t* src,
359 ptrdiff_t src_stride,
360 uint8_t* dst,
361 ptrdiff_t dst_stride,
362 const InterpKernel* filter,
363 int x0_q4,
364 int x_step_q4,
365 int y0_q4,
366 int y_step_q4,
367 int w,
368 int h);
369 RTCD_EXTERN void (*vpx_convolve8_vert)(const uint8_t* src,
370 ptrdiff_t src_stride,
371 uint8_t* dst,
372 ptrdiff_t dst_stride,
373 const InterpKernel* filter,
374 int x0_q4,
375 int x_step_q4,
376 int y0_q4,
377 int y_step_q4,
378 int w,
379 int h);
380
381 void vpx_convolve_avg_c(const uint8_t* src,
382 ptrdiff_t src_stride,
383 uint8_t* dst,
384 ptrdiff_t dst_stride,
385 const InterpKernel* filter,
386 int x0_q4,
387 int x_step_q4,
388 int y0_q4,
389 int y_step_q4,
390 int w,
391 int h);
392 void vpx_convolve_avg_sse2(const uint8_t* src,
393 ptrdiff_t src_stride,
394 uint8_t* dst,
395 ptrdiff_t dst_stride,
396 const InterpKernel* filter,
397 int x0_q4,
398 int x_step_q4,
399 int y0_q4,
400 int y_step_q4,
401 int w,
402 int h);
403 #define vpx_convolve_avg vpx_convolve_avg_sse2
404
405 void vpx_convolve_copy_c(const uint8_t* src,
406 ptrdiff_t src_stride,
407 uint8_t* dst,
408 ptrdiff_t dst_stride,
409 const InterpKernel* filter,
410 int x0_q4,
411 int x_step_q4,
412 int y0_q4,
413 int y_step_q4,
414 int w,
415 int h);
416 void vpx_convolve_copy_sse2(const uint8_t* src,
417 ptrdiff_t src_stride,
418 uint8_t* dst,
419 ptrdiff_t dst_stride,
420 const InterpKernel* filter,
421 int x0_q4,
422 int x_step_q4,
423 int y0_q4,
424 int y_step_q4,
425 int w,
426 int h);
427 #define vpx_convolve_copy vpx_convolve_copy_sse2
428
429 void vpx_d117_predictor_16x16_c(uint8_t* dst,
430 ptrdiff_t stride,
431 const uint8_t* above,
432 const uint8_t* left);
433 #define vpx_d117_predictor_16x16 vpx_d117_predictor_16x16_c
434
435 void vpx_d117_predictor_32x32_c(uint8_t* dst,
436 ptrdiff_t stride,
437 const uint8_t* above,
438 const uint8_t* left);
439 #define vpx_d117_predictor_32x32 vpx_d117_predictor_32x32_c
440
441 void vpx_d117_predictor_4x4_c(uint8_t* dst,
442 ptrdiff_t stride,
443 const uint8_t* above,
444 const uint8_t* left);
445 #define vpx_d117_predictor_4x4 vpx_d117_predictor_4x4_c
446
447 void vpx_d117_predictor_8x8_c(uint8_t* dst,
448 ptrdiff_t stride,
449 const uint8_t* above,
450 const uint8_t* left);
451 #define vpx_d117_predictor_8x8 vpx_d117_predictor_8x8_c
452
453 void vpx_d135_predictor_16x16_c(uint8_t* dst,
454 ptrdiff_t stride,
455 const uint8_t* above,
456 const uint8_t* left);
457 #define vpx_d135_predictor_16x16 vpx_d135_predictor_16x16_c
458
459 void vpx_d135_predictor_32x32_c(uint8_t* dst,
460 ptrdiff_t stride,
461 const uint8_t* above,
462 const uint8_t* left);
463 #define vpx_d135_predictor_32x32 vpx_d135_predictor_32x32_c
464
465 void vpx_d135_predictor_4x4_c(uint8_t* dst,
466 ptrdiff_t stride,
467 const uint8_t* above,
468 const uint8_t* left);
469 #define vpx_d135_predictor_4x4 vpx_d135_predictor_4x4_c
470
471 void vpx_d135_predictor_8x8_c(uint8_t* dst,
472 ptrdiff_t stride,
473 const uint8_t* above,
474 const uint8_t* left);
475 #define vpx_d135_predictor_8x8 vpx_d135_predictor_8x8_c
476
477 void vpx_d153_predictor_16x16_c(uint8_t* dst,
478 ptrdiff_t stride,
479 const uint8_t* above,
480 const uint8_t* left);
481 void vpx_d153_predictor_16x16_ssse3(uint8_t* dst,
482 ptrdiff_t stride,
483 const uint8_t* above,
484 const uint8_t* left);
485 RTCD_EXTERN void (*vpx_d153_predictor_16x16)(uint8_t* dst,
486 ptrdiff_t stride,
487 const uint8_t* above,
488 const uint8_t* left);
489
490 void vpx_d153_predictor_32x32_c(uint8_t* dst,
491 ptrdiff_t stride,
492 const uint8_t* above,
493 const uint8_t* left);
494 void vpx_d153_predictor_32x32_ssse3(uint8_t* dst,
495 ptrdiff_t stride,
496 const uint8_t* above,
497 const uint8_t* left);
498 RTCD_EXTERN void (*vpx_d153_predictor_32x32)(uint8_t* dst,
499 ptrdiff_t stride,
500 const uint8_t* above,
501 const uint8_t* left);
502
503 void vpx_d153_predictor_4x4_c(uint8_t* dst,
504 ptrdiff_t stride,
505 const uint8_t* above,
506 const uint8_t* left);
507 void vpx_d153_predictor_4x4_ssse3(uint8_t* dst,
508 ptrdiff_t stride,
509 const uint8_t* above,
510 const uint8_t* left);
511 RTCD_EXTERN void (*vpx_d153_predictor_4x4)(uint8_t* dst,
512 ptrdiff_t stride,
513 const uint8_t* above,
514 const uint8_t* left);
515
516 void vpx_d153_predictor_8x8_c(uint8_t* dst,
517 ptrdiff_t stride,
518 const uint8_t* above,
519 const uint8_t* left);
520 void vpx_d153_predictor_8x8_ssse3(uint8_t* dst,
521 ptrdiff_t stride,
522 const uint8_t* above,
523 const uint8_t* left);
524 RTCD_EXTERN void (*vpx_d153_predictor_8x8)(uint8_t* dst,
525 ptrdiff_t stride,
526 const uint8_t* above,
527 const uint8_t* left);
528
529 void vpx_d207_predictor_16x16_c(uint8_t* dst,
530 ptrdiff_t stride,
531 const uint8_t* above,
532 const uint8_t* left);
533 void vpx_d207_predictor_16x16_ssse3(uint8_t* dst,
534 ptrdiff_t stride,
535 const uint8_t* above,
536 const uint8_t* left);
537 RTCD_EXTERN void (*vpx_d207_predictor_16x16)(uint8_t* dst,
538 ptrdiff_t stride,
539 const uint8_t* above,
540 const uint8_t* left);
541
542 void vpx_d207_predictor_32x32_c(uint8_t* dst,
543 ptrdiff_t stride,
544 const uint8_t* above,
545 const uint8_t* left);
546 void vpx_d207_predictor_32x32_ssse3(uint8_t* dst,
547 ptrdiff_t stride,
548 const uint8_t* above,
549 const uint8_t* left);
550 RTCD_EXTERN void (*vpx_d207_predictor_32x32)(uint8_t* dst,
551 ptrdiff_t stride,
552 const uint8_t* above,
553 const uint8_t* left);
554
555 void vpx_d207_predictor_4x4_c(uint8_t* dst,
556 ptrdiff_t stride,
557 const uint8_t* above,
558 const uint8_t* left);
559 void vpx_d207_predictor_4x4_sse2(uint8_t* dst,
560 ptrdiff_t stride,
561 const uint8_t* above,
562 const uint8_t* left);
563 #define vpx_d207_predictor_4x4 vpx_d207_predictor_4x4_sse2
564
565 void vpx_d207_predictor_8x8_c(uint8_t* dst,
566 ptrdiff_t stride,
567 const uint8_t* above,
568 const uint8_t* left);
569 void vpx_d207_predictor_8x8_ssse3(uint8_t* dst,
570 ptrdiff_t stride,
571 const uint8_t* above,
572 const uint8_t* left);
573 RTCD_EXTERN void (*vpx_d207_predictor_8x8)(uint8_t* dst,
574 ptrdiff_t stride,
575 const uint8_t* above,
576 const uint8_t* left);
577
578 void vpx_d45_predictor_16x16_c(uint8_t* dst,
579 ptrdiff_t stride,
580 const uint8_t* above,
581 const uint8_t* left);
582 void vpx_d45_predictor_16x16_ssse3(uint8_t* dst,
583 ptrdiff_t stride,
584 const uint8_t* above,
585 const uint8_t* left);
586 RTCD_EXTERN void (*vpx_d45_predictor_16x16)(uint8_t* dst,
587 ptrdiff_t stride,
588 const uint8_t* above,
589 const uint8_t* left);
590
591 void vpx_d45_predictor_32x32_c(uint8_t* dst,
592 ptrdiff_t stride,
593 const uint8_t* above,
594 const uint8_t* left);
595 void vpx_d45_predictor_32x32_ssse3(uint8_t* dst,
596 ptrdiff_t stride,
597 const uint8_t* above,
598 const uint8_t* left);
599 RTCD_EXTERN void (*vpx_d45_predictor_32x32)(uint8_t* dst,
600 ptrdiff_t stride,
601 const uint8_t* above,
602 const uint8_t* left);
603
604 void vpx_d45_predictor_4x4_c(uint8_t* dst,
605 ptrdiff_t stride,
606 const uint8_t* above,
607 const uint8_t* left);
608 void vpx_d45_predictor_4x4_sse2(uint8_t* dst,
609 ptrdiff_t stride,
610 const uint8_t* above,
611 const uint8_t* left);
612 #define vpx_d45_predictor_4x4 vpx_d45_predictor_4x4_sse2
613
614 void vpx_d45_predictor_8x8_c(uint8_t* dst,
615 ptrdiff_t stride,
616 const uint8_t* above,
617 const uint8_t* left);
618 void vpx_d45_predictor_8x8_sse2(uint8_t* dst,
619 ptrdiff_t stride,
620 const uint8_t* above,
621 const uint8_t* left);
622 #define vpx_d45_predictor_8x8 vpx_d45_predictor_8x8_sse2
623
624 void vpx_d45e_predictor_4x4_c(uint8_t* dst,
625 ptrdiff_t stride,
626 const uint8_t* above,
627 const uint8_t* left);
628 #define vpx_d45e_predictor_4x4 vpx_d45e_predictor_4x4_c
629
630 void vpx_d63_predictor_16x16_c(uint8_t* dst,
631 ptrdiff_t stride,
632 const uint8_t* above,
633 const uint8_t* left);
634 void vpx_d63_predictor_16x16_ssse3(uint8_t* dst,
635 ptrdiff_t stride,
636 const uint8_t* above,
637 const uint8_t* left);
638 RTCD_EXTERN void (*vpx_d63_predictor_16x16)(uint8_t* dst,
639 ptrdiff_t stride,
640 const uint8_t* above,
641 const uint8_t* left);
642
643 void vpx_d63_predictor_32x32_c(uint8_t* dst,
644 ptrdiff_t stride,
645 const uint8_t* above,
646 const uint8_t* left);
647 void vpx_d63_predictor_32x32_ssse3(uint8_t* dst,
648 ptrdiff_t stride,
649 const uint8_t* above,
650 const uint8_t* left);
651 RTCD_EXTERN void (*vpx_d63_predictor_32x32)(uint8_t* dst,
652 ptrdiff_t stride,
653 const uint8_t* above,
654 const uint8_t* left);
655
656 void vpx_d63_predictor_4x4_c(uint8_t* dst,
657 ptrdiff_t stride,
658 const uint8_t* above,
659 const uint8_t* left);
660 void vpx_d63_predictor_4x4_ssse3(uint8_t* dst,
661 ptrdiff_t stride,
662 const uint8_t* above,
663 const uint8_t* left);
664 RTCD_EXTERN void (*vpx_d63_predictor_4x4)(uint8_t* dst,
665 ptrdiff_t stride,
666 const uint8_t* above,
667 const uint8_t* left);
668
669 void vpx_d63_predictor_8x8_c(uint8_t* dst,
670 ptrdiff_t stride,
671 const uint8_t* above,
672 const uint8_t* left);
673 void vpx_d63_predictor_8x8_ssse3(uint8_t* dst,
674 ptrdiff_t stride,
675 const uint8_t* above,
676 const uint8_t* left);
677 RTCD_EXTERN void (*vpx_d63_predictor_8x8)(uint8_t* dst,
678 ptrdiff_t stride,
679 const uint8_t* above,
680 const uint8_t* left);
681
682 void vpx_d63e_predictor_4x4_c(uint8_t* dst,
683 ptrdiff_t stride,
684 const uint8_t* above,
685 const uint8_t* left);
686 #define vpx_d63e_predictor_4x4 vpx_d63e_predictor_4x4_c
687
688 void vpx_dc_128_predictor_16x16_c(uint8_t* dst,
689 ptrdiff_t stride,
690 const uint8_t* above,
691 const uint8_t* left);
692 void vpx_dc_128_predictor_16x16_sse2(uint8_t* dst,
693 ptrdiff_t stride,
694 const uint8_t* above,
695 const uint8_t* left);
696 #define vpx_dc_128_predictor_16x16 vpx_dc_128_predictor_16x16_sse2
697
698 void vpx_dc_128_predictor_32x32_c(uint8_t* dst,
699 ptrdiff_t stride,
700 const uint8_t* above,
701 const uint8_t* left);
702 void vpx_dc_128_predictor_32x32_sse2(uint8_t* dst,
703 ptrdiff_t stride,
704 const uint8_t* above,
705 const uint8_t* left);
706 #define vpx_dc_128_predictor_32x32 vpx_dc_128_predictor_32x32_sse2
707
708 void vpx_dc_128_predictor_4x4_c(uint8_t* dst,
709 ptrdiff_t stride,
710 const uint8_t* above,
711 const uint8_t* left);
712 void vpx_dc_128_predictor_4x4_sse2(uint8_t* dst,
713 ptrdiff_t stride,
714 const uint8_t* above,
715 const uint8_t* left);
716 #define vpx_dc_128_predictor_4x4 vpx_dc_128_predictor_4x4_sse2
717
718 void vpx_dc_128_predictor_8x8_c(uint8_t* dst,
719 ptrdiff_t stride,
720 const uint8_t* above,
721 const uint8_t* left);
722 void vpx_dc_128_predictor_8x8_sse2(uint8_t* dst,
723 ptrdiff_t stride,
724 const uint8_t* above,
725 const uint8_t* left);
726 #define vpx_dc_128_predictor_8x8 vpx_dc_128_predictor_8x8_sse2
727
728 void vpx_dc_left_predictor_16x16_c(uint8_t* dst,
729 ptrdiff_t stride,
730 const uint8_t* above,
731 const uint8_t* left);
732 void vpx_dc_left_predictor_16x16_sse2(uint8_t* dst,
733 ptrdiff_t stride,
734 const uint8_t* above,
735 const uint8_t* left);
736 #define vpx_dc_left_predictor_16x16 vpx_dc_left_predictor_16x16_sse2
737
738 void vpx_dc_left_predictor_32x32_c(uint8_t* dst,
739 ptrdiff_t stride,
740 const uint8_t* above,
741 const uint8_t* left);
742 void vpx_dc_left_predictor_32x32_sse2(uint8_t* dst,
743 ptrdiff_t stride,
744 const uint8_t* above,
745 const uint8_t* left);
746 #define vpx_dc_left_predictor_32x32 vpx_dc_left_predictor_32x32_sse2
747
748 void vpx_dc_left_predictor_4x4_c(uint8_t* dst,
749 ptrdiff_t stride,
750 const uint8_t* above,
751 const uint8_t* left);
752 void vpx_dc_left_predictor_4x4_sse2(uint8_t* dst,
753 ptrdiff_t stride,
754 const uint8_t* above,
755 const uint8_t* left);
756 #define vpx_dc_left_predictor_4x4 vpx_dc_left_predictor_4x4_sse2
757
758 void vpx_dc_left_predictor_8x8_c(uint8_t* dst,
759 ptrdiff_t stride,
760 const uint8_t* above,
761 const uint8_t* left);
762 void vpx_dc_left_predictor_8x8_sse2(uint8_t* dst,
763 ptrdiff_t stride,
764 const uint8_t* above,
765 const uint8_t* left);
766 #define vpx_dc_left_predictor_8x8 vpx_dc_left_predictor_8x8_sse2
767
768 void vpx_dc_predictor_16x16_c(uint8_t* dst,
769 ptrdiff_t stride,
770 const uint8_t* above,
771 const uint8_t* left);
772 void vpx_dc_predictor_16x16_sse2(uint8_t* dst,
773 ptrdiff_t stride,
774 const uint8_t* above,
775 const uint8_t* left);
776 #define vpx_dc_predictor_16x16 vpx_dc_predictor_16x16_sse2
777
778 void vpx_dc_predictor_32x32_c(uint8_t* dst,
779 ptrdiff_t stride,
780 const uint8_t* above,
781 const uint8_t* left);
782 void vpx_dc_predictor_32x32_sse2(uint8_t* dst,
783 ptrdiff_t stride,
784 const uint8_t* above,
785 const uint8_t* left);
786 #define vpx_dc_predictor_32x32 vpx_dc_predictor_32x32_sse2
787
788 void vpx_dc_predictor_4x4_c(uint8_t* dst,
789 ptrdiff_t stride,
790 const uint8_t* above,
791 const uint8_t* left);
792 void vpx_dc_predictor_4x4_sse2(uint8_t* dst,
793 ptrdiff_t stride,
794 const uint8_t* above,
795 const uint8_t* left);
796 #define vpx_dc_predictor_4x4 vpx_dc_predictor_4x4_sse2
797
798 void vpx_dc_predictor_8x8_c(uint8_t* dst,
799 ptrdiff_t stride,
800 const uint8_t* above,
801 const uint8_t* left);
802 void vpx_dc_predictor_8x8_sse2(uint8_t* dst,
803 ptrdiff_t stride,
804 const uint8_t* above,
805 const uint8_t* left);
806 #define vpx_dc_predictor_8x8 vpx_dc_predictor_8x8_sse2
807
808 void vpx_dc_top_predictor_16x16_c(uint8_t* dst,
809 ptrdiff_t stride,
810 const uint8_t* above,
811 const uint8_t* left);
812 void vpx_dc_top_predictor_16x16_sse2(uint8_t* dst,
813 ptrdiff_t stride,
814 const uint8_t* above,
815 const uint8_t* left);
816 #define vpx_dc_top_predictor_16x16 vpx_dc_top_predictor_16x16_sse2
817
818 void vpx_dc_top_predictor_32x32_c(uint8_t* dst,
819 ptrdiff_t stride,
820 const uint8_t* above,
821 const uint8_t* left);
822 void vpx_dc_top_predictor_32x32_sse2(uint8_t* dst,
823 ptrdiff_t stride,
824 const uint8_t* above,
825 const uint8_t* left);
826 #define vpx_dc_top_predictor_32x32 vpx_dc_top_predictor_32x32_sse2
827
828 void vpx_dc_top_predictor_4x4_c(uint8_t* dst,
829 ptrdiff_t stride,
830 const uint8_t* above,
831 const uint8_t* left);
832 void vpx_dc_top_predictor_4x4_sse2(uint8_t* dst,
833 ptrdiff_t stride,
834 const uint8_t* above,
835 const uint8_t* left);
836 #define vpx_dc_top_predictor_4x4 vpx_dc_top_predictor_4x4_sse2
837
838 void vpx_dc_top_predictor_8x8_c(uint8_t* dst,
839 ptrdiff_t stride,
840 const uint8_t* above,
841 const uint8_t* left);
842 void vpx_dc_top_predictor_8x8_sse2(uint8_t* dst,
843 ptrdiff_t stride,
844 const uint8_t* above,
845 const uint8_t* left);
846 #define vpx_dc_top_predictor_8x8 vpx_dc_top_predictor_8x8_sse2
847
848 void vpx_fdct16x16_c(const int16_t* input, tran_low_t* output, int stride);
849 void vpx_fdct16x16_sse2(const int16_t* input, tran_low_t* output, int stride);
850 #define vpx_fdct16x16 vpx_fdct16x16_sse2
851
852 void vpx_fdct16x16_1_c(const int16_t* input, tran_low_t* output, int stride);
853 void vpx_fdct16x16_1_sse2(const int16_t* input, tran_low_t* output, int stride);
854 #define vpx_fdct16x16_1 vpx_fdct16x16_1_sse2
855
856 void vpx_fdct32x32_c(const int16_t* input, tran_low_t* output, int stride);
857 void vpx_fdct32x32_sse2(const int16_t* input, tran_low_t* output, int stride);
858 #define vpx_fdct32x32 vpx_fdct32x32_sse2
859
860 void vpx_fdct32x32_1_c(const int16_t* input, tran_low_t* output, int stride);
861 void vpx_fdct32x32_1_sse2(const int16_t* input, tran_low_t* output, int stride);
862 #define vpx_fdct32x32_1 vpx_fdct32x32_1_sse2
863
864 void vpx_fdct32x32_rd_c(const int16_t* input, tran_low_t* output, int stride);
865 void vpx_fdct32x32_rd_sse2(const int16_t* input,
866 tran_low_t* output,
867 int stride);
868 #define vpx_fdct32x32_rd vpx_fdct32x32_rd_sse2
869
870 void vpx_fdct4x4_c(const int16_t* input, tran_low_t* output, int stride);
871 void vpx_fdct4x4_sse2(const int16_t* input, tran_low_t* output, int stride);
872 #define vpx_fdct4x4 vpx_fdct4x4_sse2
873
874 void vpx_fdct4x4_1_c(const int16_t* input, tran_low_t* output, int stride);
875 void vpx_fdct4x4_1_sse2(const int16_t* input, tran_low_t* output, int stride);
876 #define vpx_fdct4x4_1 vpx_fdct4x4_1_sse2
877
878 void vpx_fdct8x8_c(const int16_t* input, tran_low_t* output, int stride);
879 void vpx_fdct8x8_sse2(const int16_t* input, tran_low_t* output, int stride);
880 #define vpx_fdct8x8 vpx_fdct8x8_sse2
881
882 void vpx_fdct8x8_1_c(const int16_t* input, tran_low_t* output, int stride);
883 void vpx_fdct8x8_1_sse2(const int16_t* input, tran_low_t* output, int stride);
884 #define vpx_fdct8x8_1 vpx_fdct8x8_1_sse2
885
886 void vpx_get16x16var_c(const uint8_t* src_ptr,
887 int src_stride,
888 const uint8_t* ref_ptr,
889 int ref_stride,
890 unsigned int* sse,
891 int* sum);
892 void vpx_get16x16var_sse2(const uint8_t* src_ptr,
893 int src_stride,
894 const uint8_t* ref_ptr,
895 int ref_stride,
896 unsigned int* sse,
897 int* sum);
898 void vpx_get16x16var_avx2(const uint8_t* src_ptr,
899 int src_stride,
900 const uint8_t* ref_ptr,
901 int ref_stride,
902 unsigned int* sse,
903 int* sum);
904 RTCD_EXTERN void (*vpx_get16x16var)(const uint8_t* src_ptr,
905 int src_stride,
906 const uint8_t* ref_ptr,
907 int ref_stride,
908 unsigned int* sse,
909 int* sum);
910
911 unsigned int vpx_get4x4sse_cs_c(const unsigned char* src_ptr,
912 int src_stride,
913 const unsigned char* ref_ptr,
914 int ref_stride);
915 #define vpx_get4x4sse_cs vpx_get4x4sse_cs_c
916
917 void vpx_get8x8var_c(const uint8_t* src_ptr,
918 int src_stride,
919 const uint8_t* ref_ptr,
920 int ref_stride,
921 unsigned int* sse,
922 int* sum);
923 void vpx_get8x8var_sse2(const uint8_t* src_ptr,
924 int src_stride,
925 const uint8_t* ref_ptr,
926 int ref_stride,
927 unsigned int* sse,
928 int* sum);
929 #define vpx_get8x8var vpx_get8x8var_sse2
930
931 unsigned int vpx_get_mb_ss_c(const int16_t*);
932 unsigned int vpx_get_mb_ss_sse2(const int16_t*);
933 #define vpx_get_mb_ss vpx_get_mb_ss_sse2
934
935 void vpx_h_predictor_16x16_c(uint8_t* dst,
936 ptrdiff_t stride,
937 const uint8_t* above,
938 const uint8_t* left);
939 void vpx_h_predictor_16x16_sse2(uint8_t* dst,
940 ptrdiff_t stride,
941 const uint8_t* above,
942 const uint8_t* left);
943 #define vpx_h_predictor_16x16 vpx_h_predictor_16x16_sse2
944
945 void vpx_h_predictor_32x32_c(uint8_t* dst,
946 ptrdiff_t stride,
947 const uint8_t* above,
948 const uint8_t* left);
949 void vpx_h_predictor_32x32_sse2(uint8_t* dst,
950 ptrdiff_t stride,
951 const uint8_t* above,
952 const uint8_t* left);
953 #define vpx_h_predictor_32x32 vpx_h_predictor_32x32_sse2
954
955 void vpx_h_predictor_4x4_c(uint8_t* dst,
956 ptrdiff_t stride,
957 const uint8_t* above,
958 const uint8_t* left);
959 void vpx_h_predictor_4x4_sse2(uint8_t* dst,
960 ptrdiff_t stride,
961 const uint8_t* above,
962 const uint8_t* left);
963 #define vpx_h_predictor_4x4 vpx_h_predictor_4x4_sse2
964
965 void vpx_h_predictor_8x8_c(uint8_t* dst,
966 ptrdiff_t stride,
967 const uint8_t* above,
968 const uint8_t* left);
969 void vpx_h_predictor_8x8_sse2(uint8_t* dst,
970 ptrdiff_t stride,
971 const uint8_t* above,
972 const uint8_t* left);
973 #define vpx_h_predictor_8x8 vpx_h_predictor_8x8_sse2
974
975 void vpx_hadamard_16x16_c(const int16_t* src_diff,
976 ptrdiff_t src_stride,
977 tran_low_t* coeff);
978 void vpx_hadamard_16x16_sse2(const int16_t* src_diff,
979 ptrdiff_t src_stride,
980 tran_low_t* coeff);
981 void vpx_hadamard_16x16_avx2(const int16_t* src_diff,
982 ptrdiff_t src_stride,
983 tran_low_t* coeff);
984 RTCD_EXTERN void (*vpx_hadamard_16x16)(const int16_t* src_diff,
985 ptrdiff_t src_stride,
986 tran_low_t* coeff);
987
988 void vpx_hadamard_32x32_c(const int16_t* src_diff,
989 ptrdiff_t src_stride,
990 tran_low_t* coeff);
991 void vpx_hadamard_32x32_sse2(const int16_t* src_diff,
992 ptrdiff_t src_stride,
993 tran_low_t* coeff);
994 void vpx_hadamard_32x32_avx2(const int16_t* src_diff,
995 ptrdiff_t src_stride,
996 tran_low_t* coeff);
997 RTCD_EXTERN void (*vpx_hadamard_32x32)(const int16_t* src_diff,
998 ptrdiff_t src_stride,
999 tran_low_t* coeff);
1000
1001 void vpx_hadamard_8x8_c(const int16_t* src_diff,
1002 ptrdiff_t src_stride,
1003 tran_low_t* coeff);
1004 void vpx_hadamard_8x8_sse2(const int16_t* src_diff,
1005 ptrdiff_t src_stride,
1006 tran_low_t* coeff);
1007 void vpx_hadamard_8x8_ssse3(const int16_t* src_diff,
1008 ptrdiff_t src_stride,
1009 tran_low_t* coeff);
1010 RTCD_EXTERN void (*vpx_hadamard_8x8)(const int16_t* src_diff,
1011 ptrdiff_t src_stride,
1012 tran_low_t* coeff);
1013
1014 void vpx_he_predictor_4x4_c(uint8_t* dst,
1015 ptrdiff_t stride,
1016 const uint8_t* above,
1017 const uint8_t* left);
1018 #define vpx_he_predictor_4x4 vpx_he_predictor_4x4_c
1019
1020 void vpx_highbd_10_get16x16var_c(const uint8_t* src_ptr,
1021 int src_stride,
1022 const uint8_t* ref_ptr,
1023 int ref_stride,
1024 unsigned int* sse,
1025 int* sum);
1026 void vpx_highbd_10_get16x16var_sse2(const uint8_t* src_ptr,
1027 int src_stride,
1028 const uint8_t* ref_ptr,
1029 int ref_stride,
1030 unsigned int* sse,
1031 int* sum);
1032 #define vpx_highbd_10_get16x16var vpx_highbd_10_get16x16var_sse2
1033
1034 void vpx_highbd_10_get8x8var_c(const uint8_t* src_ptr,
1035 int src_stride,
1036 const uint8_t* ref_ptr,
1037 int ref_stride,
1038 unsigned int* sse,
1039 int* sum);
1040 void vpx_highbd_10_get8x8var_sse2(const uint8_t* src_ptr,
1041 int src_stride,
1042 const uint8_t* ref_ptr,
1043 int ref_stride,
1044 unsigned int* sse,
1045 int* sum);
1046 #define vpx_highbd_10_get8x8var vpx_highbd_10_get8x8var_sse2
1047
1048 unsigned int vpx_highbd_10_mse16x16_c(const uint8_t* src_ptr,
1049 int src_stride,
1050 const uint8_t* ref_ptr,
1051 int ref_stride,
1052 unsigned int* sse);
1053 unsigned int vpx_highbd_10_mse16x16_sse2(const uint8_t* src_ptr,
1054 int src_stride,
1055 const uint8_t* ref_ptr,
1056 int ref_stride,
1057 unsigned int* sse);
1058 #define vpx_highbd_10_mse16x16 vpx_highbd_10_mse16x16_sse2
1059
1060 unsigned int vpx_highbd_10_mse16x8_c(const uint8_t* src_ptr,
1061 int src_stride,
1062 const uint8_t* ref_ptr,
1063 int ref_stride,
1064 unsigned int* sse);
1065 #define vpx_highbd_10_mse16x8 vpx_highbd_10_mse16x8_c
1066
1067 unsigned int vpx_highbd_10_mse8x16_c(const uint8_t* src_ptr,
1068 int src_stride,
1069 const uint8_t* ref_ptr,
1070 int ref_stride,
1071 unsigned int* sse);
1072 #define vpx_highbd_10_mse8x16 vpx_highbd_10_mse8x16_c
1073
1074 unsigned int vpx_highbd_10_mse8x8_c(const uint8_t* src_ptr,
1075 int src_stride,
1076 const uint8_t* ref_ptr,
1077 int ref_stride,
1078 unsigned int* sse);
1079 unsigned int vpx_highbd_10_mse8x8_sse2(const uint8_t* src_ptr,
1080 int src_stride,
1081 const uint8_t* ref_ptr,
1082 int ref_stride,
1083 unsigned int* sse);
1084 #define vpx_highbd_10_mse8x8 vpx_highbd_10_mse8x8_sse2
1085
1086 uint32_t vpx_highbd_10_sub_pixel_avg_variance16x16_c(
1087 const uint8_t* src_ptr,
1088 int src_stride,
1089 int x_offset,
1090 int y_offset,
1091 const uint8_t* ref_ptr,
1092 int ref_stride,
1093 uint32_t* sse,
1094 const uint8_t* second_pred);
1095 uint32_t vpx_highbd_10_sub_pixel_avg_variance16x16_sse2(
1096 const uint8_t* src_ptr,
1097 int src_stride,
1098 int x_offset,
1099 int y_offset,
1100 const uint8_t* ref_ptr,
1101 int ref_stride,
1102 uint32_t* sse,
1103 const uint8_t* second_pred);
1104 #define vpx_highbd_10_sub_pixel_avg_variance16x16 \
1105 vpx_highbd_10_sub_pixel_avg_variance16x16_sse2
1106
1107 uint32_t vpx_highbd_10_sub_pixel_avg_variance16x32_c(
1108 const uint8_t* src_ptr,
1109 int src_stride,
1110 int x_offset,
1111 int y_offset,
1112 const uint8_t* ref_ptr,
1113 int ref_stride,
1114 uint32_t* sse,
1115 const uint8_t* second_pred);
1116 uint32_t vpx_highbd_10_sub_pixel_avg_variance16x32_sse2(
1117 const uint8_t* src_ptr,
1118 int src_stride,
1119 int x_offset,
1120 int y_offset,
1121 const uint8_t* ref_ptr,
1122 int ref_stride,
1123 uint32_t* sse,
1124 const uint8_t* second_pred);
1125 #define vpx_highbd_10_sub_pixel_avg_variance16x32 \
1126 vpx_highbd_10_sub_pixel_avg_variance16x32_sse2
1127
1128 uint32_t vpx_highbd_10_sub_pixel_avg_variance16x8_c(const uint8_t* src_ptr,
1129 int src_stride,
1130 int x_offset,
1131 int y_offset,
1132 const uint8_t* ref_ptr,
1133 int ref_stride,
1134 uint32_t* sse,
1135 const uint8_t* second_pred);
1136 uint32_t vpx_highbd_10_sub_pixel_avg_variance16x8_sse2(
1137 const uint8_t* src_ptr,
1138 int src_stride,
1139 int x_offset,
1140 int y_offset,
1141 const uint8_t* ref_ptr,
1142 int ref_stride,
1143 uint32_t* sse,
1144 const uint8_t* second_pred);
1145 #define vpx_highbd_10_sub_pixel_avg_variance16x8 \
1146 vpx_highbd_10_sub_pixel_avg_variance16x8_sse2
1147
1148 uint32_t vpx_highbd_10_sub_pixel_avg_variance32x16_c(
1149 const uint8_t* src_ptr,
1150 int src_stride,
1151 int x_offset,
1152 int y_offset,
1153 const uint8_t* ref_ptr,
1154 int ref_stride,
1155 uint32_t* sse,
1156 const uint8_t* second_pred);
1157 uint32_t vpx_highbd_10_sub_pixel_avg_variance32x16_sse2(
1158 const uint8_t* src_ptr,
1159 int src_stride,
1160 int x_offset,
1161 int y_offset,
1162 const uint8_t* ref_ptr,
1163 int ref_stride,
1164 uint32_t* sse,
1165 const uint8_t* second_pred);
1166 #define vpx_highbd_10_sub_pixel_avg_variance32x16 \
1167 vpx_highbd_10_sub_pixel_avg_variance32x16_sse2
1168
1169 uint32_t vpx_highbd_10_sub_pixel_avg_variance32x32_c(
1170 const uint8_t* src_ptr,
1171 int src_stride,
1172 int x_offset,
1173 int y_offset,
1174 const uint8_t* ref_ptr,
1175 int ref_stride,
1176 uint32_t* sse,
1177 const uint8_t* second_pred);
1178 uint32_t vpx_highbd_10_sub_pixel_avg_variance32x32_sse2(
1179 const uint8_t* src_ptr,
1180 int src_stride,
1181 int x_offset,
1182 int y_offset,
1183 const uint8_t* ref_ptr,
1184 int ref_stride,
1185 uint32_t* sse,
1186 const uint8_t* second_pred);
1187 #define vpx_highbd_10_sub_pixel_avg_variance32x32 \
1188 vpx_highbd_10_sub_pixel_avg_variance32x32_sse2
1189
1190 uint32_t vpx_highbd_10_sub_pixel_avg_variance32x64_c(
1191 const uint8_t* src_ptr,
1192 int src_stride,
1193 int x_offset,
1194 int y_offset,
1195 const uint8_t* ref_ptr,
1196 int ref_stride,
1197 uint32_t* sse,
1198 const uint8_t* second_pred);
1199 uint32_t vpx_highbd_10_sub_pixel_avg_variance32x64_sse2(
1200 const uint8_t* src_ptr,
1201 int src_stride,
1202 int x_offset,
1203 int y_offset,
1204 const uint8_t* ref_ptr,
1205 int ref_stride,
1206 uint32_t* sse,
1207 const uint8_t* second_pred);
1208 #define vpx_highbd_10_sub_pixel_avg_variance32x64 \
1209 vpx_highbd_10_sub_pixel_avg_variance32x64_sse2
1210
1211 uint32_t vpx_highbd_10_sub_pixel_avg_variance4x4_c(const uint8_t* src_ptr,
1212 int src_stride,
1213 int x_offset,
1214 int y_offset,
1215 const uint8_t* ref_ptr,
1216 int ref_stride,
1217 uint32_t* sse,
1218 const uint8_t* second_pred);
1219 #define vpx_highbd_10_sub_pixel_avg_variance4x4 \
1220 vpx_highbd_10_sub_pixel_avg_variance4x4_c
1221
1222 uint32_t vpx_highbd_10_sub_pixel_avg_variance4x8_c(const uint8_t* src_ptr,
1223 int src_stride,
1224 int x_offset,
1225 int y_offset,
1226 const uint8_t* ref_ptr,
1227 int ref_stride,
1228 uint32_t* sse,
1229 const uint8_t* second_pred);
1230 #define vpx_highbd_10_sub_pixel_avg_variance4x8 \
1231 vpx_highbd_10_sub_pixel_avg_variance4x8_c
1232
1233 uint32_t vpx_highbd_10_sub_pixel_avg_variance64x32_c(
1234 const uint8_t* src_ptr,
1235 int src_stride,
1236 int x_offset,
1237 int y_offset,
1238 const uint8_t* ref_ptr,
1239 int ref_stride,
1240 uint32_t* sse,
1241 const uint8_t* second_pred);
1242 uint32_t vpx_highbd_10_sub_pixel_avg_variance64x32_sse2(
1243 const uint8_t* src_ptr,
1244 int src_stride,
1245 int x_offset,
1246 int y_offset,
1247 const uint8_t* ref_ptr,
1248 int ref_stride,
1249 uint32_t* sse,
1250 const uint8_t* second_pred);
1251 #define vpx_highbd_10_sub_pixel_avg_variance64x32 \
1252 vpx_highbd_10_sub_pixel_avg_variance64x32_sse2
1253
1254 uint32_t vpx_highbd_10_sub_pixel_avg_variance64x64_c(
1255 const uint8_t* src_ptr,
1256 int src_stride,
1257 int x_offset,
1258 int y_offset,
1259 const uint8_t* ref_ptr,
1260 int ref_stride,
1261 uint32_t* sse,
1262 const uint8_t* second_pred);
1263 uint32_t vpx_highbd_10_sub_pixel_avg_variance64x64_sse2(
1264 const uint8_t* src_ptr,
1265 int src_stride,
1266 int x_offset,
1267 int y_offset,
1268 const uint8_t* ref_ptr,
1269 int ref_stride,
1270 uint32_t* sse,
1271 const uint8_t* second_pred);
1272 #define vpx_highbd_10_sub_pixel_avg_variance64x64 \
1273 vpx_highbd_10_sub_pixel_avg_variance64x64_sse2
1274
1275 uint32_t vpx_highbd_10_sub_pixel_avg_variance8x16_c(const uint8_t* src_ptr,
1276 int src_stride,
1277 int x_offset,
1278 int y_offset,
1279 const uint8_t* ref_ptr,
1280 int ref_stride,
1281 uint32_t* sse,
1282 const uint8_t* second_pred);
1283 uint32_t vpx_highbd_10_sub_pixel_avg_variance8x16_sse2(
1284 const uint8_t* src_ptr,
1285 int src_stride,
1286 int x_offset,
1287 int y_offset,
1288 const uint8_t* ref_ptr,
1289 int ref_stride,
1290 uint32_t* sse,
1291 const uint8_t* second_pred);
1292 #define vpx_highbd_10_sub_pixel_avg_variance8x16 \
1293 vpx_highbd_10_sub_pixel_avg_variance8x16_sse2
1294
1295 uint32_t vpx_highbd_10_sub_pixel_avg_variance8x4_c(const uint8_t* src_ptr,
1296 int src_stride,
1297 int x_offset,
1298 int y_offset,
1299 const uint8_t* ref_ptr,
1300 int ref_stride,
1301 uint32_t* sse,
1302 const uint8_t* second_pred);
1303 uint32_t vpx_highbd_10_sub_pixel_avg_variance8x4_sse2(
1304 const uint8_t* src_ptr,
1305 int src_stride,
1306 int x_offset,
1307 int y_offset,
1308 const uint8_t* ref_ptr,
1309 int ref_stride,
1310 uint32_t* sse,
1311 const uint8_t* second_pred);
1312 #define vpx_highbd_10_sub_pixel_avg_variance8x4 \
1313 vpx_highbd_10_sub_pixel_avg_variance8x4_sse2
1314
1315 uint32_t vpx_highbd_10_sub_pixel_avg_variance8x8_c(const uint8_t* src_ptr,
1316 int src_stride,
1317 int x_offset,
1318 int y_offset,
1319 const uint8_t* ref_ptr,
1320 int ref_stride,
1321 uint32_t* sse,
1322 const uint8_t* second_pred);
1323 uint32_t vpx_highbd_10_sub_pixel_avg_variance8x8_sse2(
1324 const uint8_t* src_ptr,
1325 int src_stride,
1326 int x_offset,
1327 int y_offset,
1328 const uint8_t* ref_ptr,
1329 int ref_stride,
1330 uint32_t* sse,
1331 const uint8_t* second_pred);
1332 #define vpx_highbd_10_sub_pixel_avg_variance8x8 \
1333 vpx_highbd_10_sub_pixel_avg_variance8x8_sse2
1334
1335 uint32_t vpx_highbd_10_sub_pixel_variance16x16_c(const uint8_t* src_ptr,
1336 int src_stride,
1337 int x_offset,
1338 int y_offset,
1339 const uint8_t* ref_ptr,
1340 int ref_stride,
1341 uint32_t* sse);
1342 uint32_t vpx_highbd_10_sub_pixel_variance16x16_sse2(const uint8_t* src_ptr,
1343 int src_stride,
1344 int x_offset,
1345 int y_offset,
1346 const uint8_t* ref_ptr,
1347 int ref_stride,
1348 uint32_t* sse);
1349 #define vpx_highbd_10_sub_pixel_variance16x16 \
1350 vpx_highbd_10_sub_pixel_variance16x16_sse2
1351
1352 uint32_t vpx_highbd_10_sub_pixel_variance16x32_c(const uint8_t* src_ptr,
1353 int src_stride,
1354 int x_offset,
1355 int y_offset,
1356 const uint8_t* ref_ptr,
1357 int ref_stride,
1358 uint32_t* sse);
1359 uint32_t vpx_highbd_10_sub_pixel_variance16x32_sse2(const uint8_t* src_ptr,
1360 int src_stride,
1361 int x_offset,
1362 int y_offset,
1363 const uint8_t* ref_ptr,
1364 int ref_stride,
1365 uint32_t* sse);
1366 #define vpx_highbd_10_sub_pixel_variance16x32 \
1367 vpx_highbd_10_sub_pixel_variance16x32_sse2
1368
1369 uint32_t vpx_highbd_10_sub_pixel_variance16x8_c(const uint8_t* src_ptr,
1370 int src_stride,
1371 int x_offset,
1372 int y_offset,
1373 const uint8_t* ref_ptr,
1374 int ref_stride,
1375 uint32_t* sse);
1376 uint32_t vpx_highbd_10_sub_pixel_variance16x8_sse2(const uint8_t* src_ptr,
1377 int src_stride,
1378 int x_offset,
1379 int y_offset,
1380 const uint8_t* ref_ptr,
1381 int ref_stride,
1382 uint32_t* sse);
1383 #define vpx_highbd_10_sub_pixel_variance16x8 \
1384 vpx_highbd_10_sub_pixel_variance16x8_sse2
1385
1386 uint32_t vpx_highbd_10_sub_pixel_variance32x16_c(const uint8_t* src_ptr,
1387 int src_stride,
1388 int x_offset,
1389 int y_offset,
1390 const uint8_t* ref_ptr,
1391 int ref_stride,
1392 uint32_t* sse);
1393 uint32_t vpx_highbd_10_sub_pixel_variance32x16_sse2(const uint8_t* src_ptr,
1394 int src_stride,
1395 int x_offset,
1396 int y_offset,
1397 const uint8_t* ref_ptr,
1398 int ref_stride,
1399 uint32_t* sse);
1400 #define vpx_highbd_10_sub_pixel_variance32x16 \
1401 vpx_highbd_10_sub_pixel_variance32x16_sse2
1402
1403 uint32_t vpx_highbd_10_sub_pixel_variance32x32_c(const uint8_t* src_ptr,
1404 int src_stride,
1405 int x_offset,
1406 int y_offset,
1407 const uint8_t* ref_ptr,
1408 int ref_stride,
1409 uint32_t* sse);
1410 uint32_t vpx_highbd_10_sub_pixel_variance32x32_sse2(const uint8_t* src_ptr,
1411 int src_stride,
1412 int x_offset,
1413 int y_offset,
1414 const uint8_t* ref_ptr,
1415 int ref_stride,
1416 uint32_t* sse);
1417 #define vpx_highbd_10_sub_pixel_variance32x32 \
1418 vpx_highbd_10_sub_pixel_variance32x32_sse2
1419
1420 uint32_t vpx_highbd_10_sub_pixel_variance32x64_c(const uint8_t* src_ptr,
1421 int src_stride,
1422 int x_offset,
1423 int y_offset,
1424 const uint8_t* ref_ptr,
1425 int ref_stride,
1426 uint32_t* sse);
1427 uint32_t vpx_highbd_10_sub_pixel_variance32x64_sse2(const uint8_t* src_ptr,
1428 int src_stride,
1429 int x_offset,
1430 int y_offset,
1431 const uint8_t* ref_ptr,
1432 int ref_stride,
1433 uint32_t* sse);
1434 #define vpx_highbd_10_sub_pixel_variance32x64 \
1435 vpx_highbd_10_sub_pixel_variance32x64_sse2
1436
1437 uint32_t vpx_highbd_10_sub_pixel_variance4x4_c(const uint8_t* src_ptr,
1438 int src_stride,
1439 int x_offset,
1440 int y_offset,
1441 const uint8_t* ref_ptr,
1442 int ref_stride,
1443 uint32_t* sse);
1444 #define vpx_highbd_10_sub_pixel_variance4x4 \
1445 vpx_highbd_10_sub_pixel_variance4x4_c
1446
1447 uint32_t vpx_highbd_10_sub_pixel_variance4x8_c(const uint8_t* src_ptr,
1448 int src_stride,
1449 int x_offset,
1450 int y_offset,
1451 const uint8_t* ref_ptr,
1452 int ref_stride,
1453 uint32_t* sse);
1454 #define vpx_highbd_10_sub_pixel_variance4x8 \
1455 vpx_highbd_10_sub_pixel_variance4x8_c
1456
1457 uint32_t vpx_highbd_10_sub_pixel_variance64x32_c(const uint8_t* src_ptr,
1458 int src_stride,
1459 int x_offset,
1460 int y_offset,
1461 const uint8_t* ref_ptr,
1462 int ref_stride,
1463 uint32_t* sse);
1464 uint32_t vpx_highbd_10_sub_pixel_variance64x32_sse2(const uint8_t* src_ptr,
1465 int src_stride,
1466 int x_offset,
1467 int y_offset,
1468 const uint8_t* ref_ptr,
1469 int ref_stride,
1470 uint32_t* sse);
1471 #define vpx_highbd_10_sub_pixel_variance64x32 \
1472 vpx_highbd_10_sub_pixel_variance64x32_sse2
1473
1474 uint32_t vpx_highbd_10_sub_pixel_variance64x64_c(const uint8_t* src_ptr,
1475 int src_stride,
1476 int x_offset,
1477 int y_offset,
1478 const uint8_t* ref_ptr,
1479 int ref_stride,
1480 uint32_t* sse);
1481 uint32_t vpx_highbd_10_sub_pixel_variance64x64_sse2(const uint8_t* src_ptr,
1482 int src_stride,
1483 int x_offset,
1484 int y_offset,
1485 const uint8_t* ref_ptr,
1486 int ref_stride,
1487 uint32_t* sse);
1488 #define vpx_highbd_10_sub_pixel_variance64x64 \
1489 vpx_highbd_10_sub_pixel_variance64x64_sse2
1490
1491 uint32_t vpx_highbd_10_sub_pixel_variance8x16_c(const uint8_t* src_ptr,
1492 int src_stride,
1493 int x_offset,
1494 int y_offset,
1495 const uint8_t* ref_ptr,
1496 int ref_stride,
1497 uint32_t* sse);
1498 uint32_t vpx_highbd_10_sub_pixel_variance8x16_sse2(const uint8_t* src_ptr,
1499 int src_stride,
1500 int x_offset,
1501 int y_offset,
1502 const uint8_t* ref_ptr,
1503 int ref_stride,
1504 uint32_t* sse);
1505 #define vpx_highbd_10_sub_pixel_variance8x16 \
1506 vpx_highbd_10_sub_pixel_variance8x16_sse2
1507
1508 uint32_t vpx_highbd_10_sub_pixel_variance8x4_c(const uint8_t* src_ptr,
1509 int src_stride,
1510 int x_offset,
1511 int y_offset,
1512 const uint8_t* ref_ptr,
1513 int ref_stride,
1514 uint32_t* sse);
1515 uint32_t vpx_highbd_10_sub_pixel_variance8x4_sse2(const uint8_t* src_ptr,
1516 int src_stride,
1517 int x_offset,
1518 int y_offset,
1519 const uint8_t* ref_ptr,
1520 int ref_stride,
1521 uint32_t* sse);
1522 #define vpx_highbd_10_sub_pixel_variance8x4 \
1523 vpx_highbd_10_sub_pixel_variance8x4_sse2
1524
1525 uint32_t vpx_highbd_10_sub_pixel_variance8x8_c(const uint8_t* src_ptr,
1526 int src_stride,
1527 int x_offset,
1528 int y_offset,
1529 const uint8_t* ref_ptr,
1530 int ref_stride,
1531 uint32_t* sse);
1532 uint32_t vpx_highbd_10_sub_pixel_variance8x8_sse2(const uint8_t* src_ptr,
1533 int src_stride,
1534 int x_offset,
1535 int y_offset,
1536 const uint8_t* ref_ptr,
1537 int ref_stride,
1538 uint32_t* sse);
1539 #define vpx_highbd_10_sub_pixel_variance8x8 \
1540 vpx_highbd_10_sub_pixel_variance8x8_sse2
1541
1542 unsigned int vpx_highbd_10_variance16x16_c(const uint8_t* src_ptr,
1543 int src_stride,
1544 const uint8_t* ref_ptr,
1545 int ref_stride,
1546 unsigned int* sse);
1547 unsigned int vpx_highbd_10_variance16x16_sse2(const uint8_t* src_ptr,
1548 int src_stride,
1549 const uint8_t* ref_ptr,
1550 int ref_stride,
1551 unsigned int* sse);
1552 #define vpx_highbd_10_variance16x16 vpx_highbd_10_variance16x16_sse2
1553
1554 unsigned int vpx_highbd_10_variance16x32_c(const uint8_t* src_ptr,
1555 int src_stride,
1556 const uint8_t* ref_ptr,
1557 int ref_stride,
1558 unsigned int* sse);
1559 unsigned int vpx_highbd_10_variance16x32_sse2(const uint8_t* src_ptr,
1560 int src_stride,
1561 const uint8_t* ref_ptr,
1562 int ref_stride,
1563 unsigned int* sse);
1564 #define vpx_highbd_10_variance16x32 vpx_highbd_10_variance16x32_sse2
1565
1566 unsigned int vpx_highbd_10_variance16x8_c(const uint8_t* src_ptr,
1567 int src_stride,
1568 const uint8_t* ref_ptr,
1569 int ref_stride,
1570 unsigned int* sse);
1571 unsigned int vpx_highbd_10_variance16x8_sse2(const uint8_t* src_ptr,
1572 int src_stride,
1573 const uint8_t* ref_ptr,
1574 int ref_stride,
1575 unsigned int* sse);
1576 #define vpx_highbd_10_variance16x8 vpx_highbd_10_variance16x8_sse2
1577
1578 unsigned int vpx_highbd_10_variance32x16_c(const uint8_t* src_ptr,
1579 int src_stride,
1580 const uint8_t* ref_ptr,
1581 int ref_stride,
1582 unsigned int* sse);
1583 unsigned int vpx_highbd_10_variance32x16_sse2(const uint8_t* src_ptr,
1584 int src_stride,
1585 const uint8_t* ref_ptr,
1586 int ref_stride,
1587 unsigned int* sse);
1588 #define vpx_highbd_10_variance32x16 vpx_highbd_10_variance32x16_sse2
1589
1590 unsigned int vpx_highbd_10_variance32x32_c(const uint8_t* src_ptr,
1591 int src_stride,
1592 const uint8_t* ref_ptr,
1593 int ref_stride,
1594 unsigned int* sse);
1595 unsigned int vpx_highbd_10_variance32x32_sse2(const uint8_t* src_ptr,
1596 int src_stride,
1597 const uint8_t* ref_ptr,
1598 int ref_stride,
1599 unsigned int* sse);
1600 #define vpx_highbd_10_variance32x32 vpx_highbd_10_variance32x32_sse2
1601
1602 unsigned int vpx_highbd_10_variance32x64_c(const uint8_t* src_ptr,
1603 int src_stride,
1604 const uint8_t* ref_ptr,
1605 int ref_stride,
1606 unsigned int* sse);
1607 unsigned int vpx_highbd_10_variance32x64_sse2(const uint8_t* src_ptr,
1608 int src_stride,
1609 const uint8_t* ref_ptr,
1610 int ref_stride,
1611 unsigned int* sse);
1612 #define vpx_highbd_10_variance32x64 vpx_highbd_10_variance32x64_sse2
1613
1614 unsigned int vpx_highbd_10_variance4x4_c(const uint8_t* src_ptr,
1615 int src_stride,
1616 const uint8_t* ref_ptr,
1617 int ref_stride,
1618 unsigned int* sse);
1619 #define vpx_highbd_10_variance4x4 vpx_highbd_10_variance4x4_c
1620
1621 unsigned int vpx_highbd_10_variance4x8_c(const uint8_t* src_ptr,
1622 int src_stride,
1623 const uint8_t* ref_ptr,
1624 int ref_stride,
1625 unsigned int* sse);
1626 #define vpx_highbd_10_variance4x8 vpx_highbd_10_variance4x8_c
1627
1628 unsigned int vpx_highbd_10_variance64x32_c(const uint8_t* src_ptr,
1629 int src_stride,
1630 const uint8_t* ref_ptr,
1631 int ref_stride,
1632 unsigned int* sse);
1633 unsigned int vpx_highbd_10_variance64x32_sse2(const uint8_t* src_ptr,
1634 int src_stride,
1635 const uint8_t* ref_ptr,
1636 int ref_stride,
1637 unsigned int* sse);
1638 #define vpx_highbd_10_variance64x32 vpx_highbd_10_variance64x32_sse2
1639
1640 unsigned int vpx_highbd_10_variance64x64_c(const uint8_t* src_ptr,
1641 int src_stride,
1642 const uint8_t* ref_ptr,
1643 int ref_stride,
1644 unsigned int* sse);
1645 unsigned int vpx_highbd_10_variance64x64_sse2(const uint8_t* src_ptr,
1646 int src_stride,
1647 const uint8_t* ref_ptr,
1648 int ref_stride,
1649 unsigned int* sse);
1650 #define vpx_highbd_10_variance64x64 vpx_highbd_10_variance64x64_sse2
1651
1652 unsigned int vpx_highbd_10_variance8x16_c(const uint8_t* src_ptr,
1653 int src_stride,
1654 const uint8_t* ref_ptr,
1655 int ref_stride,
1656 unsigned int* sse);
1657 unsigned int vpx_highbd_10_variance8x16_sse2(const uint8_t* src_ptr,
1658 int src_stride,
1659 const uint8_t* ref_ptr,
1660 int ref_stride,
1661 unsigned int* sse);
1662 #define vpx_highbd_10_variance8x16 vpx_highbd_10_variance8x16_sse2
1663
1664 unsigned int vpx_highbd_10_variance8x4_c(const uint8_t* src_ptr,
1665 int src_stride,
1666 const uint8_t* ref_ptr,
1667 int ref_stride,
1668 unsigned int* sse);
1669 #define vpx_highbd_10_variance8x4 vpx_highbd_10_variance8x4_c
1670
1671 unsigned int vpx_highbd_10_variance8x8_c(const uint8_t* src_ptr,
1672 int src_stride,
1673 const uint8_t* ref_ptr,
1674 int ref_stride,
1675 unsigned int* sse);
1676 unsigned int vpx_highbd_10_variance8x8_sse2(const uint8_t* src_ptr,
1677 int src_stride,
1678 const uint8_t* ref_ptr,
1679 int ref_stride,
1680 unsigned int* sse);
1681 #define vpx_highbd_10_variance8x8 vpx_highbd_10_variance8x8_sse2
1682
1683 void vpx_highbd_12_get16x16var_c(const uint8_t* src_ptr,
1684 int src_stride,
1685 const uint8_t* ref_ptr,
1686 int ref_stride,
1687 unsigned int* sse,
1688 int* sum);
1689 void vpx_highbd_12_get16x16var_sse2(const uint8_t* src_ptr,
1690 int src_stride,
1691 const uint8_t* ref_ptr,
1692 int ref_stride,
1693 unsigned int* sse,
1694 int* sum);
1695 #define vpx_highbd_12_get16x16var vpx_highbd_12_get16x16var_sse2
1696
1697 void vpx_highbd_12_get8x8var_c(const uint8_t* src_ptr,
1698 int src_stride,
1699 const uint8_t* ref_ptr,
1700 int ref_stride,
1701 unsigned int* sse,
1702 int* sum);
1703 void vpx_highbd_12_get8x8var_sse2(const uint8_t* src_ptr,
1704 int src_stride,
1705 const uint8_t* ref_ptr,
1706 int ref_stride,
1707 unsigned int* sse,
1708 int* sum);
1709 #define vpx_highbd_12_get8x8var vpx_highbd_12_get8x8var_sse2
1710
1711 unsigned int vpx_highbd_12_mse16x16_c(const uint8_t* src_ptr,
1712 int src_stride,
1713 const uint8_t* ref_ptr,
1714 int ref_stride,
1715 unsigned int* sse);
1716 unsigned int vpx_highbd_12_mse16x16_sse2(const uint8_t* src_ptr,
1717 int src_stride,
1718 const uint8_t* ref_ptr,
1719 int ref_stride,
1720 unsigned int* sse);
1721 #define vpx_highbd_12_mse16x16 vpx_highbd_12_mse16x16_sse2
1722
1723 unsigned int vpx_highbd_12_mse16x8_c(const uint8_t* src_ptr,
1724 int src_stride,
1725 const uint8_t* ref_ptr,
1726 int ref_stride,
1727 unsigned int* sse);
1728 #define vpx_highbd_12_mse16x8 vpx_highbd_12_mse16x8_c
1729
1730 unsigned int vpx_highbd_12_mse8x16_c(const uint8_t* src_ptr,
1731 int src_stride,
1732 const uint8_t* ref_ptr,
1733 int ref_stride,
1734 unsigned int* sse);
1735 #define vpx_highbd_12_mse8x16 vpx_highbd_12_mse8x16_c
1736
1737 unsigned int vpx_highbd_12_mse8x8_c(const uint8_t* src_ptr,
1738 int src_stride,
1739 const uint8_t* ref_ptr,
1740 int ref_stride,
1741 unsigned int* sse);
1742 unsigned int vpx_highbd_12_mse8x8_sse2(const uint8_t* src_ptr,
1743 int src_stride,
1744 const uint8_t* ref_ptr,
1745 int ref_stride,
1746 unsigned int* sse);
1747 #define vpx_highbd_12_mse8x8 vpx_highbd_12_mse8x8_sse2
1748
1749 uint32_t vpx_highbd_12_sub_pixel_avg_variance16x16_c(
1750 const uint8_t* src_ptr,
1751 int src_stride,
1752 int x_offset,
1753 int y_offset,
1754 const uint8_t* ref_ptr,
1755 int ref_stride,
1756 uint32_t* sse,
1757 const uint8_t* second_pred);
1758 uint32_t vpx_highbd_12_sub_pixel_avg_variance16x16_sse2(
1759 const uint8_t* src_ptr,
1760 int src_stride,
1761 int x_offset,
1762 int y_offset,
1763 const uint8_t* ref_ptr,
1764 int ref_stride,
1765 uint32_t* sse,
1766 const uint8_t* second_pred);
1767 #define vpx_highbd_12_sub_pixel_avg_variance16x16 \
1768 vpx_highbd_12_sub_pixel_avg_variance16x16_sse2
1769
1770 uint32_t vpx_highbd_12_sub_pixel_avg_variance16x32_c(
1771 const uint8_t* src_ptr,
1772 int src_stride,
1773 int x_offset,
1774 int y_offset,
1775 const uint8_t* ref_ptr,
1776 int ref_stride,
1777 uint32_t* sse,
1778 const uint8_t* second_pred);
1779 uint32_t vpx_highbd_12_sub_pixel_avg_variance16x32_sse2(
1780 const uint8_t* src_ptr,
1781 int src_stride,
1782 int x_offset,
1783 int y_offset,
1784 const uint8_t* ref_ptr,
1785 int ref_stride,
1786 uint32_t* sse,
1787 const uint8_t* second_pred);
1788 #define vpx_highbd_12_sub_pixel_avg_variance16x32 \
1789 vpx_highbd_12_sub_pixel_avg_variance16x32_sse2
1790
1791 uint32_t vpx_highbd_12_sub_pixel_avg_variance16x8_c(const uint8_t* src_ptr,
1792 int src_stride,
1793 int x_offset,
1794 int y_offset,
1795 const uint8_t* ref_ptr,
1796 int ref_stride,
1797 uint32_t* sse,
1798 const uint8_t* second_pred);
1799 uint32_t vpx_highbd_12_sub_pixel_avg_variance16x8_sse2(
1800 const uint8_t* src_ptr,
1801 int src_stride,
1802 int x_offset,
1803 int y_offset,
1804 const uint8_t* ref_ptr,
1805 int ref_stride,
1806 uint32_t* sse,
1807 const uint8_t* second_pred);
1808 #define vpx_highbd_12_sub_pixel_avg_variance16x8 \
1809 vpx_highbd_12_sub_pixel_avg_variance16x8_sse2
1810
1811 uint32_t vpx_highbd_12_sub_pixel_avg_variance32x16_c(
1812 const uint8_t* src_ptr,
1813 int src_stride,
1814 int x_offset,
1815 int y_offset,
1816 const uint8_t* ref_ptr,
1817 int ref_stride,
1818 uint32_t* sse,
1819 const uint8_t* second_pred);
1820 uint32_t vpx_highbd_12_sub_pixel_avg_variance32x16_sse2(
1821 const uint8_t* src_ptr,
1822 int src_stride,
1823 int x_offset,
1824 int y_offset,
1825 const uint8_t* ref_ptr,
1826 int ref_stride,
1827 uint32_t* sse,
1828 const uint8_t* second_pred);
1829 #define vpx_highbd_12_sub_pixel_avg_variance32x16 \
1830 vpx_highbd_12_sub_pixel_avg_variance32x16_sse2
1831
1832 uint32_t vpx_highbd_12_sub_pixel_avg_variance32x32_c(
1833 const uint8_t* src_ptr,
1834 int src_stride,
1835 int x_offset,
1836 int y_offset,
1837 const uint8_t* ref_ptr,
1838 int ref_stride,
1839 uint32_t* sse,
1840 const uint8_t* second_pred);
1841 uint32_t vpx_highbd_12_sub_pixel_avg_variance32x32_sse2(
1842 const uint8_t* src_ptr,
1843 int src_stride,
1844 int x_offset,
1845 int y_offset,
1846 const uint8_t* ref_ptr,
1847 int ref_stride,
1848 uint32_t* sse,
1849 const uint8_t* second_pred);
1850 #define vpx_highbd_12_sub_pixel_avg_variance32x32 \
1851 vpx_highbd_12_sub_pixel_avg_variance32x32_sse2
1852
1853 uint32_t vpx_highbd_12_sub_pixel_avg_variance32x64_c(
1854 const uint8_t* src_ptr,
1855 int src_stride,
1856 int x_offset,
1857 int y_offset,
1858 const uint8_t* ref_ptr,
1859 int ref_stride,
1860 uint32_t* sse,
1861 const uint8_t* second_pred);
1862 uint32_t vpx_highbd_12_sub_pixel_avg_variance32x64_sse2(
1863 const uint8_t* src_ptr,
1864 int src_stride,
1865 int x_offset,
1866 int y_offset,
1867 const uint8_t* ref_ptr,
1868 int ref_stride,
1869 uint32_t* sse,
1870 const uint8_t* second_pred);
1871 #define vpx_highbd_12_sub_pixel_avg_variance32x64 \
1872 vpx_highbd_12_sub_pixel_avg_variance32x64_sse2
1873
1874 uint32_t vpx_highbd_12_sub_pixel_avg_variance4x4_c(const uint8_t* src_ptr,
1875 int src_stride,
1876 int x_offset,
1877 int y_offset,
1878 const uint8_t* ref_ptr,
1879 int ref_stride,
1880 uint32_t* sse,
1881 const uint8_t* second_pred);
1882 #define vpx_highbd_12_sub_pixel_avg_variance4x4 \
1883 vpx_highbd_12_sub_pixel_avg_variance4x4_c
1884
1885 uint32_t vpx_highbd_12_sub_pixel_avg_variance4x8_c(const uint8_t* src_ptr,
1886 int src_stride,
1887 int x_offset,
1888 int y_offset,
1889 const uint8_t* ref_ptr,
1890 int ref_stride,
1891 uint32_t* sse,
1892 const uint8_t* second_pred);
1893 #define vpx_highbd_12_sub_pixel_avg_variance4x8 \
1894 vpx_highbd_12_sub_pixel_avg_variance4x8_c
1895
1896 uint32_t vpx_highbd_12_sub_pixel_avg_variance64x32_c(
1897 const uint8_t* src_ptr,
1898 int src_stride,
1899 int x_offset,
1900 int y_offset,
1901 const uint8_t* ref_ptr,
1902 int ref_stride,
1903 uint32_t* sse,
1904 const uint8_t* second_pred);
1905 uint32_t vpx_highbd_12_sub_pixel_avg_variance64x32_sse2(
1906 const uint8_t* src_ptr,
1907 int src_stride,
1908 int x_offset,
1909 int y_offset,
1910 const uint8_t* ref_ptr,
1911 int ref_stride,
1912 uint32_t* sse,
1913 const uint8_t* second_pred);
1914 #define vpx_highbd_12_sub_pixel_avg_variance64x32 \
1915 vpx_highbd_12_sub_pixel_avg_variance64x32_sse2
1916
1917 uint32_t vpx_highbd_12_sub_pixel_avg_variance64x64_c(
1918 const uint8_t* src_ptr,
1919 int src_stride,
1920 int x_offset,
1921 int y_offset,
1922 const uint8_t* ref_ptr,
1923 int ref_stride,
1924 uint32_t* sse,
1925 const uint8_t* second_pred);
1926 uint32_t vpx_highbd_12_sub_pixel_avg_variance64x64_sse2(
1927 const uint8_t* src_ptr,
1928 int src_stride,
1929 int x_offset,
1930 int y_offset,
1931 const uint8_t* ref_ptr,
1932 int ref_stride,
1933 uint32_t* sse,
1934 const uint8_t* second_pred);
1935 #define vpx_highbd_12_sub_pixel_avg_variance64x64 \
1936 vpx_highbd_12_sub_pixel_avg_variance64x64_sse2
1937
1938 uint32_t vpx_highbd_12_sub_pixel_avg_variance8x16_c(const uint8_t* src_ptr,
1939 int src_stride,
1940 int x_offset,
1941 int y_offset,
1942 const uint8_t* ref_ptr,
1943 int ref_stride,
1944 uint32_t* sse,
1945 const uint8_t* second_pred);
1946 uint32_t vpx_highbd_12_sub_pixel_avg_variance8x16_sse2(
1947 const uint8_t* src_ptr,
1948 int src_stride,
1949 int x_offset,
1950 int y_offset,
1951 const uint8_t* ref_ptr,
1952 int ref_stride,
1953 uint32_t* sse,
1954 const uint8_t* second_pred);
1955 #define vpx_highbd_12_sub_pixel_avg_variance8x16 \
1956 vpx_highbd_12_sub_pixel_avg_variance8x16_sse2
1957
1958 uint32_t vpx_highbd_12_sub_pixel_avg_variance8x4_c(const uint8_t* src_ptr,
1959 int src_stride,
1960 int x_offset,
1961 int y_offset,
1962 const uint8_t* ref_ptr,
1963 int ref_stride,
1964 uint32_t* sse,
1965 const uint8_t* second_pred);
1966 uint32_t vpx_highbd_12_sub_pixel_avg_variance8x4_sse2(
1967 const uint8_t* src_ptr,
1968 int src_stride,
1969 int x_offset,
1970 int y_offset,
1971 const uint8_t* ref_ptr,
1972 int ref_stride,
1973 uint32_t* sse,
1974 const uint8_t* second_pred);
1975 #define vpx_highbd_12_sub_pixel_avg_variance8x4 \
1976 vpx_highbd_12_sub_pixel_avg_variance8x4_sse2
1977
1978 uint32_t vpx_highbd_12_sub_pixel_avg_variance8x8_c(const uint8_t* src_ptr,
1979 int src_stride,
1980 int x_offset,
1981 int y_offset,
1982 const uint8_t* ref_ptr,
1983 int ref_stride,
1984 uint32_t* sse,
1985 const uint8_t* second_pred);
1986 uint32_t vpx_highbd_12_sub_pixel_avg_variance8x8_sse2(
1987 const uint8_t* src_ptr,
1988 int src_stride,
1989 int x_offset,
1990 int y_offset,
1991 const uint8_t* ref_ptr,
1992 int ref_stride,
1993 uint32_t* sse,
1994 const uint8_t* second_pred);
1995 #define vpx_highbd_12_sub_pixel_avg_variance8x8 \
1996 vpx_highbd_12_sub_pixel_avg_variance8x8_sse2
1997
1998 uint32_t vpx_highbd_12_sub_pixel_variance16x16_c(const uint8_t* src_ptr,
1999 int src_stride,
2000 int x_offset,
2001 int y_offset,
2002 const uint8_t* ref_ptr,
2003 int ref_stride,
2004 uint32_t* sse);
2005 uint32_t vpx_highbd_12_sub_pixel_variance16x16_sse2(const uint8_t* src_ptr,
2006 int src_stride,
2007 int x_offset,
2008 int y_offset,
2009 const uint8_t* ref_ptr,
2010 int ref_stride,
2011 uint32_t* sse);
2012 #define vpx_highbd_12_sub_pixel_variance16x16 \
2013 vpx_highbd_12_sub_pixel_variance16x16_sse2
2014
2015 uint32_t vpx_highbd_12_sub_pixel_variance16x32_c(const uint8_t* src_ptr,
2016 int src_stride,
2017 int x_offset,
2018 int y_offset,
2019 const uint8_t* ref_ptr,
2020 int ref_stride,
2021 uint32_t* sse);
2022 uint32_t vpx_highbd_12_sub_pixel_variance16x32_sse2(const uint8_t* src_ptr,
2023 int src_stride,
2024 int x_offset,
2025 int y_offset,
2026 const uint8_t* ref_ptr,
2027 int ref_stride,
2028 uint32_t* sse);
2029 #define vpx_highbd_12_sub_pixel_variance16x32 \
2030 vpx_highbd_12_sub_pixel_variance16x32_sse2
2031
2032 uint32_t vpx_highbd_12_sub_pixel_variance16x8_c(const uint8_t* src_ptr,
2033 int src_stride,
2034 int x_offset,
2035 int y_offset,
2036 const uint8_t* ref_ptr,
2037 int ref_stride,
2038 uint32_t* sse);
2039 uint32_t vpx_highbd_12_sub_pixel_variance16x8_sse2(const uint8_t* src_ptr,
2040 int src_stride,
2041 int x_offset,
2042 int y_offset,
2043 const uint8_t* ref_ptr,
2044 int ref_stride,
2045 uint32_t* sse);
2046 #define vpx_highbd_12_sub_pixel_variance16x8 \
2047 vpx_highbd_12_sub_pixel_variance16x8_sse2
2048
2049 uint32_t vpx_highbd_12_sub_pixel_variance32x16_c(const uint8_t* src_ptr,
2050 int src_stride,
2051 int x_offset,
2052 int y_offset,
2053 const uint8_t* ref_ptr,
2054 int ref_stride,
2055 uint32_t* sse);
2056 uint32_t vpx_highbd_12_sub_pixel_variance32x16_sse2(const uint8_t* src_ptr,
2057 int src_stride,
2058 int x_offset,
2059 int y_offset,
2060 const uint8_t* ref_ptr,
2061 int ref_stride,
2062 uint32_t* sse);
2063 #define vpx_highbd_12_sub_pixel_variance32x16 \
2064 vpx_highbd_12_sub_pixel_variance32x16_sse2
2065
2066 uint32_t vpx_highbd_12_sub_pixel_variance32x32_c(const uint8_t* src_ptr,
2067 int src_stride,
2068 int x_offset,
2069 int y_offset,
2070 const uint8_t* ref_ptr,
2071 int ref_stride,
2072 uint32_t* sse);
2073 uint32_t vpx_highbd_12_sub_pixel_variance32x32_sse2(const uint8_t* src_ptr,
2074 int src_stride,
2075 int x_offset,
2076 int y_offset,
2077 const uint8_t* ref_ptr,
2078 int ref_stride,
2079 uint32_t* sse);
2080 #define vpx_highbd_12_sub_pixel_variance32x32 \
2081 vpx_highbd_12_sub_pixel_variance32x32_sse2
2082
2083 uint32_t vpx_highbd_12_sub_pixel_variance32x64_c(const uint8_t* src_ptr,
2084 int src_stride,
2085 int x_offset,
2086 int y_offset,
2087 const uint8_t* ref_ptr,
2088 int ref_stride,
2089 uint32_t* sse);
2090 uint32_t vpx_highbd_12_sub_pixel_variance32x64_sse2(const uint8_t* src_ptr,
2091 int src_stride,
2092 int x_offset,
2093 int y_offset,
2094 const uint8_t* ref_ptr,
2095 int ref_stride,
2096 uint32_t* sse);
2097 #define vpx_highbd_12_sub_pixel_variance32x64 \
2098 vpx_highbd_12_sub_pixel_variance32x64_sse2
2099
2100 uint32_t vpx_highbd_12_sub_pixel_variance4x4_c(const uint8_t* src_ptr,
2101 int src_stride,
2102 int x_offset,
2103 int y_offset,
2104 const uint8_t* ref_ptr,
2105 int ref_stride,
2106 uint32_t* sse);
2107 #define vpx_highbd_12_sub_pixel_variance4x4 \
2108 vpx_highbd_12_sub_pixel_variance4x4_c
2109
2110 uint32_t vpx_highbd_12_sub_pixel_variance4x8_c(const uint8_t* src_ptr,
2111 int src_stride,
2112 int x_offset,
2113 int y_offset,
2114 const uint8_t* ref_ptr,
2115 int ref_stride,
2116 uint32_t* sse);
2117 #define vpx_highbd_12_sub_pixel_variance4x8 \
2118 vpx_highbd_12_sub_pixel_variance4x8_c
2119
2120 uint32_t vpx_highbd_12_sub_pixel_variance64x32_c(const uint8_t* src_ptr,
2121 int src_stride,
2122 int x_offset,
2123 int y_offset,
2124 const uint8_t* ref_ptr,
2125 int ref_stride,
2126 uint32_t* sse);
2127 uint32_t vpx_highbd_12_sub_pixel_variance64x32_sse2(const uint8_t* src_ptr,
2128 int src_stride,
2129 int x_offset,
2130 int y_offset,
2131 const uint8_t* ref_ptr,
2132 int ref_stride,
2133 uint32_t* sse);
2134 #define vpx_highbd_12_sub_pixel_variance64x32 \
2135 vpx_highbd_12_sub_pixel_variance64x32_sse2
2136
2137 uint32_t vpx_highbd_12_sub_pixel_variance64x64_c(const uint8_t* src_ptr,
2138 int src_stride,
2139 int x_offset,
2140 int y_offset,
2141 const uint8_t* ref_ptr,
2142 int ref_stride,
2143 uint32_t* sse);
2144 uint32_t vpx_highbd_12_sub_pixel_variance64x64_sse2(const uint8_t* src_ptr,
2145 int src_stride,
2146 int x_offset,
2147 int y_offset,
2148 const uint8_t* ref_ptr,
2149 int ref_stride,
2150 uint32_t* sse);
2151 #define vpx_highbd_12_sub_pixel_variance64x64 \
2152 vpx_highbd_12_sub_pixel_variance64x64_sse2
2153
2154 uint32_t vpx_highbd_12_sub_pixel_variance8x16_c(const uint8_t* src_ptr,
2155 int src_stride,
2156 int x_offset,
2157 int y_offset,
2158 const uint8_t* ref_ptr,
2159 int ref_stride,
2160 uint32_t* sse);
2161 uint32_t vpx_highbd_12_sub_pixel_variance8x16_sse2(const uint8_t* src_ptr,
2162 int src_stride,
2163 int x_offset,
2164 int y_offset,
2165 const uint8_t* ref_ptr,
2166 int ref_stride,
2167 uint32_t* sse);
2168 #define vpx_highbd_12_sub_pixel_variance8x16 \
2169 vpx_highbd_12_sub_pixel_variance8x16_sse2
2170
2171 uint32_t vpx_highbd_12_sub_pixel_variance8x4_c(const uint8_t* src_ptr,
2172 int src_stride,
2173 int x_offset,
2174 int y_offset,
2175 const uint8_t* ref_ptr,
2176 int ref_stride,
2177 uint32_t* sse);
2178 uint32_t vpx_highbd_12_sub_pixel_variance8x4_sse2(const uint8_t* src_ptr,
2179 int src_stride,
2180 int x_offset,
2181 int y_offset,
2182 const uint8_t* ref_ptr,
2183 int ref_stride,
2184 uint32_t* sse);
2185 #define vpx_highbd_12_sub_pixel_variance8x4 \
2186 vpx_highbd_12_sub_pixel_variance8x4_sse2
2187
2188 uint32_t vpx_highbd_12_sub_pixel_variance8x8_c(const uint8_t* src_ptr,
2189 int src_stride,
2190 int x_offset,
2191 int y_offset,
2192 const uint8_t* ref_ptr,
2193 int ref_stride,
2194 uint32_t* sse);
2195 uint32_t vpx_highbd_12_sub_pixel_variance8x8_sse2(const uint8_t* src_ptr,
2196 int src_stride,
2197 int x_offset,
2198 int y_offset,
2199 const uint8_t* ref_ptr,
2200 int ref_stride,
2201 uint32_t* sse);
2202 #define vpx_highbd_12_sub_pixel_variance8x8 \
2203 vpx_highbd_12_sub_pixel_variance8x8_sse2
2204
2205 unsigned int vpx_highbd_12_variance16x16_c(const uint8_t* src_ptr,
2206 int src_stride,
2207 const uint8_t* ref_ptr,
2208 int ref_stride,
2209 unsigned int* sse);
2210 unsigned int vpx_highbd_12_variance16x16_sse2(const uint8_t* src_ptr,
2211 int src_stride,
2212 const uint8_t* ref_ptr,
2213 int ref_stride,
2214 unsigned int* sse);
2215 #define vpx_highbd_12_variance16x16 vpx_highbd_12_variance16x16_sse2
2216
2217 unsigned int vpx_highbd_12_variance16x32_c(const uint8_t* src_ptr,
2218 int src_stride,
2219 const uint8_t* ref_ptr,
2220 int ref_stride,
2221 unsigned int* sse);
2222 unsigned int vpx_highbd_12_variance16x32_sse2(const uint8_t* src_ptr,
2223 int src_stride,
2224 const uint8_t* ref_ptr,
2225 int ref_stride,
2226 unsigned int* sse);
2227 #define vpx_highbd_12_variance16x32 vpx_highbd_12_variance16x32_sse2
2228
2229 unsigned int vpx_highbd_12_variance16x8_c(const uint8_t* src_ptr,
2230 int src_stride,
2231 const uint8_t* ref_ptr,
2232 int ref_stride,
2233 unsigned int* sse);
2234 unsigned int vpx_highbd_12_variance16x8_sse2(const uint8_t* src_ptr,
2235 int src_stride,
2236 const uint8_t* ref_ptr,
2237 int ref_stride,
2238 unsigned int* sse);
2239 #define vpx_highbd_12_variance16x8 vpx_highbd_12_variance16x8_sse2
2240
2241 unsigned int vpx_highbd_12_variance32x16_c(const uint8_t* src_ptr,
2242 int src_stride,
2243 const uint8_t* ref_ptr,
2244 int ref_stride,
2245 unsigned int* sse);
2246 unsigned int vpx_highbd_12_variance32x16_sse2(const uint8_t* src_ptr,
2247 int src_stride,
2248 const uint8_t* ref_ptr,
2249 int ref_stride,
2250 unsigned int* sse);
2251 #define vpx_highbd_12_variance32x16 vpx_highbd_12_variance32x16_sse2
2252
2253 unsigned int vpx_highbd_12_variance32x32_c(const uint8_t* src_ptr,
2254 int src_stride,
2255 const uint8_t* ref_ptr,
2256 int ref_stride,
2257 unsigned int* sse);
2258 unsigned int vpx_highbd_12_variance32x32_sse2(const uint8_t* src_ptr,
2259 int src_stride,
2260 const uint8_t* ref_ptr,
2261 int ref_stride,
2262 unsigned int* sse);
2263 #define vpx_highbd_12_variance32x32 vpx_highbd_12_variance32x32_sse2
2264
2265 unsigned int vpx_highbd_12_variance32x64_c(const uint8_t* src_ptr,
2266 int src_stride,
2267 const uint8_t* ref_ptr,
2268 int ref_stride,
2269 unsigned int* sse);
2270 unsigned int vpx_highbd_12_variance32x64_sse2(const uint8_t* src_ptr,
2271 int src_stride,
2272 const uint8_t* ref_ptr,
2273 int ref_stride,
2274 unsigned int* sse);
2275 #define vpx_highbd_12_variance32x64 vpx_highbd_12_variance32x64_sse2
2276
2277 unsigned int vpx_highbd_12_variance4x4_c(const uint8_t* src_ptr,
2278 int src_stride,
2279 const uint8_t* ref_ptr,
2280 int ref_stride,
2281 unsigned int* sse);
2282 #define vpx_highbd_12_variance4x4 vpx_highbd_12_variance4x4_c
2283
2284 unsigned int vpx_highbd_12_variance4x8_c(const uint8_t* src_ptr,
2285 int src_stride,
2286 const uint8_t* ref_ptr,
2287 int ref_stride,
2288 unsigned int* sse);
2289 #define vpx_highbd_12_variance4x8 vpx_highbd_12_variance4x8_c
2290
2291 unsigned int vpx_highbd_12_variance64x32_c(const uint8_t* src_ptr,
2292 int src_stride,
2293 const uint8_t* ref_ptr,
2294 int ref_stride,
2295 unsigned int* sse);
2296 unsigned int vpx_highbd_12_variance64x32_sse2(const uint8_t* src_ptr,
2297 int src_stride,
2298 const uint8_t* ref_ptr,
2299 int ref_stride,
2300 unsigned int* sse);
2301 #define vpx_highbd_12_variance64x32 vpx_highbd_12_variance64x32_sse2
2302
2303 unsigned int vpx_highbd_12_variance64x64_c(const uint8_t* src_ptr,
2304 int src_stride,
2305 const uint8_t* ref_ptr,
2306 int ref_stride,
2307 unsigned int* sse);
2308 unsigned int vpx_highbd_12_variance64x64_sse2(const uint8_t* src_ptr,
2309 int src_stride,
2310 const uint8_t* ref_ptr,
2311 int ref_stride,
2312 unsigned int* sse);
2313 #define vpx_highbd_12_variance64x64 vpx_highbd_12_variance64x64_sse2
2314
2315 unsigned int vpx_highbd_12_variance8x16_c(const uint8_t* src_ptr,
2316 int src_stride,
2317 const uint8_t* ref_ptr,
2318 int ref_stride,
2319 unsigned int* sse);
2320 unsigned int vpx_highbd_12_variance8x16_sse2(const uint8_t* src_ptr,
2321 int src_stride,
2322 const uint8_t* ref_ptr,
2323 int ref_stride,
2324 unsigned int* sse);
2325 #define vpx_highbd_12_variance8x16 vpx_highbd_12_variance8x16_sse2
2326
2327 unsigned int vpx_highbd_12_variance8x4_c(const uint8_t* src_ptr,
2328 int src_stride,
2329 const uint8_t* ref_ptr,
2330 int ref_stride,
2331 unsigned int* sse);
2332 #define vpx_highbd_12_variance8x4 vpx_highbd_12_variance8x4_c
2333
2334 unsigned int vpx_highbd_12_variance8x8_c(const uint8_t* src_ptr,
2335 int src_stride,
2336 const uint8_t* ref_ptr,
2337 int ref_stride,
2338 unsigned int* sse);
2339 unsigned int vpx_highbd_12_variance8x8_sse2(const uint8_t* src_ptr,
2340 int src_stride,
2341 const uint8_t* ref_ptr,
2342 int ref_stride,
2343 unsigned int* sse);
2344 #define vpx_highbd_12_variance8x8 vpx_highbd_12_variance8x8_sse2
2345
2346 void vpx_highbd_8_get16x16var_c(const uint8_t* src_ptr,
2347 int src_stride,
2348 const uint8_t* ref_ptr,
2349 int ref_stride,
2350 unsigned int* sse,
2351 int* sum);
2352 void vpx_highbd_8_get16x16var_sse2(const uint8_t* src_ptr,
2353 int src_stride,
2354 const uint8_t* ref_ptr,
2355 int ref_stride,
2356 unsigned int* sse,
2357 int* sum);
2358 #define vpx_highbd_8_get16x16var vpx_highbd_8_get16x16var_sse2
2359
2360 void vpx_highbd_8_get8x8var_c(const uint8_t* src_ptr,
2361 int src_stride,
2362 const uint8_t* ref_ptr,
2363 int ref_stride,
2364 unsigned int* sse,
2365 int* sum);
2366 void vpx_highbd_8_get8x8var_sse2(const uint8_t* src_ptr,
2367 int src_stride,
2368 const uint8_t* ref_ptr,
2369 int ref_stride,
2370 unsigned int* sse,
2371 int* sum);
2372 #define vpx_highbd_8_get8x8var vpx_highbd_8_get8x8var_sse2
2373
2374 unsigned int vpx_highbd_8_mse16x16_c(const uint8_t* src_ptr,
2375 int src_stride,
2376 const uint8_t* ref_ptr,
2377 int ref_stride,
2378 unsigned int* sse);
2379 unsigned int vpx_highbd_8_mse16x16_sse2(const uint8_t* src_ptr,
2380 int src_stride,
2381 const uint8_t* ref_ptr,
2382 int ref_stride,
2383 unsigned int* sse);
2384 #define vpx_highbd_8_mse16x16 vpx_highbd_8_mse16x16_sse2
2385
2386 unsigned int vpx_highbd_8_mse16x8_c(const uint8_t* src_ptr,
2387 int src_stride,
2388 const uint8_t* ref_ptr,
2389 int ref_stride,
2390 unsigned int* sse);
2391 #define vpx_highbd_8_mse16x8 vpx_highbd_8_mse16x8_c
2392
2393 unsigned int vpx_highbd_8_mse8x16_c(const uint8_t* src_ptr,
2394 int src_stride,
2395 const uint8_t* ref_ptr,
2396 int ref_stride,
2397 unsigned int* sse);
2398 #define vpx_highbd_8_mse8x16 vpx_highbd_8_mse8x16_c
2399
2400 unsigned int vpx_highbd_8_mse8x8_c(const uint8_t* src_ptr,
2401 int src_stride,
2402 const uint8_t* ref_ptr,
2403 int ref_stride,
2404 unsigned int* sse);
2405 unsigned int vpx_highbd_8_mse8x8_sse2(const uint8_t* src_ptr,
2406 int src_stride,
2407 const uint8_t* ref_ptr,
2408 int ref_stride,
2409 unsigned int* sse);
2410 #define vpx_highbd_8_mse8x8 vpx_highbd_8_mse8x8_sse2
2411
2412 uint32_t vpx_highbd_8_sub_pixel_avg_variance16x16_c(const uint8_t* src_ptr,
2413 int src_stride,
2414 int x_offset,
2415 int y_offset,
2416 const uint8_t* ref_ptr,
2417 int ref_stride,
2418 uint32_t* sse,
2419 const uint8_t* second_pred);
2420 uint32_t vpx_highbd_8_sub_pixel_avg_variance16x16_sse2(
2421 const uint8_t* src_ptr,
2422 int src_stride,
2423 int x_offset,
2424 int y_offset,
2425 const uint8_t* ref_ptr,
2426 int ref_stride,
2427 uint32_t* sse,
2428 const uint8_t* second_pred);
2429 #define vpx_highbd_8_sub_pixel_avg_variance16x16 \
2430 vpx_highbd_8_sub_pixel_avg_variance16x16_sse2
2431
2432 uint32_t vpx_highbd_8_sub_pixel_avg_variance16x32_c(const uint8_t* src_ptr,
2433 int src_stride,
2434 int x_offset,
2435 int y_offset,
2436 const uint8_t* ref_ptr,
2437 int ref_stride,
2438 uint32_t* sse,
2439 const uint8_t* second_pred);
2440 uint32_t vpx_highbd_8_sub_pixel_avg_variance16x32_sse2(
2441 const uint8_t* src_ptr,
2442 int src_stride,
2443 int x_offset,
2444 int y_offset,
2445 const uint8_t* ref_ptr,
2446 int ref_stride,
2447 uint32_t* sse,
2448 const uint8_t* second_pred);
2449 #define vpx_highbd_8_sub_pixel_avg_variance16x32 \
2450 vpx_highbd_8_sub_pixel_avg_variance16x32_sse2
2451
2452 uint32_t vpx_highbd_8_sub_pixel_avg_variance16x8_c(const uint8_t* src_ptr,
2453 int src_stride,
2454 int x_offset,
2455 int y_offset,
2456 const uint8_t* ref_ptr,
2457 int ref_stride,
2458 uint32_t* sse,
2459 const uint8_t* second_pred);
2460 uint32_t vpx_highbd_8_sub_pixel_avg_variance16x8_sse2(
2461 const uint8_t* src_ptr,
2462 int src_stride,
2463 int x_offset,
2464 int y_offset,
2465 const uint8_t* ref_ptr,
2466 int ref_stride,
2467 uint32_t* sse,
2468 const uint8_t* second_pred);
2469 #define vpx_highbd_8_sub_pixel_avg_variance16x8 \
2470 vpx_highbd_8_sub_pixel_avg_variance16x8_sse2
2471
2472 uint32_t vpx_highbd_8_sub_pixel_avg_variance32x16_c(const uint8_t* src_ptr,
2473 int src_stride,
2474 int x_offset,
2475 int y_offset,
2476 const uint8_t* ref_ptr,
2477 int ref_stride,
2478 uint32_t* sse,
2479 const uint8_t* second_pred);
2480 uint32_t vpx_highbd_8_sub_pixel_avg_variance32x16_sse2(
2481 const uint8_t* src_ptr,
2482 int src_stride,
2483 int x_offset,
2484 int y_offset,
2485 const uint8_t* ref_ptr,
2486 int ref_stride,
2487 uint32_t* sse,
2488 const uint8_t* second_pred);
2489 #define vpx_highbd_8_sub_pixel_avg_variance32x16 \
2490 vpx_highbd_8_sub_pixel_avg_variance32x16_sse2
2491
2492 uint32_t vpx_highbd_8_sub_pixel_avg_variance32x32_c(const uint8_t* src_ptr,
2493 int src_stride,
2494 int x_offset,
2495 int y_offset,
2496 const uint8_t* ref_ptr,
2497 int ref_stride,
2498 uint32_t* sse,
2499 const uint8_t* second_pred);
2500 uint32_t vpx_highbd_8_sub_pixel_avg_variance32x32_sse2(
2501 const uint8_t* src_ptr,
2502 int src_stride,
2503 int x_offset,
2504 int y_offset,
2505 const uint8_t* ref_ptr,
2506 int ref_stride,
2507 uint32_t* sse,
2508 const uint8_t* second_pred);
2509 #define vpx_highbd_8_sub_pixel_avg_variance32x32 \
2510 vpx_highbd_8_sub_pixel_avg_variance32x32_sse2
2511
2512 uint32_t vpx_highbd_8_sub_pixel_avg_variance32x64_c(const uint8_t* src_ptr,
2513 int src_stride,
2514 int x_offset,
2515 int y_offset,
2516 const uint8_t* ref_ptr,
2517 int ref_stride,
2518 uint32_t* sse,
2519 const uint8_t* second_pred);
2520 uint32_t vpx_highbd_8_sub_pixel_avg_variance32x64_sse2(
2521 const uint8_t* src_ptr,
2522 int src_stride,
2523 int x_offset,
2524 int y_offset,
2525 const uint8_t* ref_ptr,
2526 int ref_stride,
2527 uint32_t* sse,
2528 const uint8_t* second_pred);
2529 #define vpx_highbd_8_sub_pixel_avg_variance32x64 \
2530 vpx_highbd_8_sub_pixel_avg_variance32x64_sse2
2531
2532 uint32_t vpx_highbd_8_sub_pixel_avg_variance4x4_c(const uint8_t* src_ptr,
2533 int src_stride,
2534 int x_offset,
2535 int y_offset,
2536 const uint8_t* ref_ptr,
2537 int ref_stride,
2538 uint32_t* sse,
2539 const uint8_t* second_pred);
2540 #define vpx_highbd_8_sub_pixel_avg_variance4x4 \
2541 vpx_highbd_8_sub_pixel_avg_variance4x4_c
2542
2543 uint32_t vpx_highbd_8_sub_pixel_avg_variance4x8_c(const uint8_t* src_ptr,
2544 int src_stride,
2545 int x_offset,
2546 int y_offset,
2547 const uint8_t* ref_ptr,
2548 int ref_stride,
2549 uint32_t* sse,
2550 const uint8_t* second_pred);
2551 #define vpx_highbd_8_sub_pixel_avg_variance4x8 \
2552 vpx_highbd_8_sub_pixel_avg_variance4x8_c
2553
2554 uint32_t vpx_highbd_8_sub_pixel_avg_variance64x32_c(const uint8_t* src_ptr,
2555 int src_stride,
2556 int x_offset,
2557 int y_offset,
2558 const uint8_t* ref_ptr,
2559 int ref_stride,
2560 uint32_t* sse,
2561 const uint8_t* second_pred);
2562 uint32_t vpx_highbd_8_sub_pixel_avg_variance64x32_sse2(
2563 const uint8_t* src_ptr,
2564 int src_stride,
2565 int x_offset,
2566 int y_offset,
2567 const uint8_t* ref_ptr,
2568 int ref_stride,
2569 uint32_t* sse,
2570 const uint8_t* second_pred);
2571 #define vpx_highbd_8_sub_pixel_avg_variance64x32 \
2572 vpx_highbd_8_sub_pixel_avg_variance64x32_sse2
2573
2574 uint32_t vpx_highbd_8_sub_pixel_avg_variance64x64_c(const uint8_t* src_ptr,
2575 int src_stride,
2576 int x_offset,
2577 int y_offset,
2578 const uint8_t* ref_ptr,
2579 int ref_stride,
2580 uint32_t* sse,
2581 const uint8_t* second_pred);
2582 uint32_t vpx_highbd_8_sub_pixel_avg_variance64x64_sse2(
2583 const uint8_t* src_ptr,
2584 int src_stride,
2585 int x_offset,
2586 int y_offset,
2587 const uint8_t* ref_ptr,
2588 int ref_stride,
2589 uint32_t* sse,
2590 const uint8_t* second_pred);
2591 #define vpx_highbd_8_sub_pixel_avg_variance64x64 \
2592 vpx_highbd_8_sub_pixel_avg_variance64x64_sse2
2593
2594 uint32_t vpx_highbd_8_sub_pixel_avg_variance8x16_c(const uint8_t* src_ptr,
2595 int src_stride,
2596 int x_offset,
2597 int y_offset,
2598 const uint8_t* ref_ptr,
2599 int ref_stride,
2600 uint32_t* sse,
2601 const uint8_t* second_pred);
2602 uint32_t vpx_highbd_8_sub_pixel_avg_variance8x16_sse2(
2603 const uint8_t* src_ptr,
2604 int src_stride,
2605 int x_offset,
2606 int y_offset,
2607 const uint8_t* ref_ptr,
2608 int ref_stride,
2609 uint32_t* sse,
2610 const uint8_t* second_pred);
2611 #define vpx_highbd_8_sub_pixel_avg_variance8x16 \
2612 vpx_highbd_8_sub_pixel_avg_variance8x16_sse2
2613
2614 uint32_t vpx_highbd_8_sub_pixel_avg_variance8x4_c(const uint8_t* src_ptr,
2615 int src_stride,
2616 int x_offset,
2617 int y_offset,
2618 const uint8_t* ref_ptr,
2619 int ref_stride,
2620 uint32_t* sse,
2621 const uint8_t* second_pred);
2622 uint32_t vpx_highbd_8_sub_pixel_avg_variance8x4_sse2(
2623 const uint8_t* src_ptr,
2624 int src_stride,
2625 int x_offset,
2626 int y_offset,
2627 const uint8_t* ref_ptr,
2628 int ref_stride,
2629 uint32_t* sse,
2630 const uint8_t* second_pred);
2631 #define vpx_highbd_8_sub_pixel_avg_variance8x4 \
2632 vpx_highbd_8_sub_pixel_avg_variance8x4_sse2
2633
2634 uint32_t vpx_highbd_8_sub_pixel_avg_variance8x8_c(const uint8_t* src_ptr,
2635 int src_stride,
2636 int x_offset,
2637 int y_offset,
2638 const uint8_t* ref_ptr,
2639 int ref_stride,
2640 uint32_t* sse,
2641 const uint8_t* second_pred);
2642 uint32_t vpx_highbd_8_sub_pixel_avg_variance8x8_sse2(
2643 const uint8_t* src_ptr,
2644 int src_stride,
2645 int x_offset,
2646 int y_offset,
2647 const uint8_t* ref_ptr,
2648 int ref_stride,
2649 uint32_t* sse,
2650 const uint8_t* second_pred);
2651 #define vpx_highbd_8_sub_pixel_avg_variance8x8 \
2652 vpx_highbd_8_sub_pixel_avg_variance8x8_sse2
2653
2654 uint32_t vpx_highbd_8_sub_pixel_variance16x16_c(const uint8_t* src_ptr,
2655 int src_stride,
2656 int x_offset,
2657 int y_offset,
2658 const uint8_t* ref_ptr,
2659 int ref_stride,
2660 uint32_t* sse);
2661 uint32_t vpx_highbd_8_sub_pixel_variance16x16_sse2(const uint8_t* src_ptr,
2662 int src_stride,
2663 int x_offset,
2664 int y_offset,
2665 const uint8_t* ref_ptr,
2666 int ref_stride,
2667 uint32_t* sse);
2668 #define vpx_highbd_8_sub_pixel_variance16x16 \
2669 vpx_highbd_8_sub_pixel_variance16x16_sse2
2670
2671 uint32_t vpx_highbd_8_sub_pixel_variance16x32_c(const uint8_t* src_ptr,
2672 int src_stride,
2673 int x_offset,
2674 int y_offset,
2675 const uint8_t* ref_ptr,
2676 int ref_stride,
2677 uint32_t* sse);
2678 uint32_t vpx_highbd_8_sub_pixel_variance16x32_sse2(const uint8_t* src_ptr,
2679 int src_stride,
2680 int x_offset,
2681 int y_offset,
2682 const uint8_t* ref_ptr,
2683 int ref_stride,
2684 uint32_t* sse);
2685 #define vpx_highbd_8_sub_pixel_variance16x32 \
2686 vpx_highbd_8_sub_pixel_variance16x32_sse2
2687
2688 uint32_t vpx_highbd_8_sub_pixel_variance16x8_c(const uint8_t* src_ptr,
2689 int src_stride,
2690 int x_offset,
2691 int y_offset,
2692 const uint8_t* ref_ptr,
2693 int ref_stride,
2694 uint32_t* sse);
2695 uint32_t vpx_highbd_8_sub_pixel_variance16x8_sse2(const uint8_t* src_ptr,
2696 int src_stride,
2697 int x_offset,
2698 int y_offset,
2699 const uint8_t* ref_ptr,
2700 int ref_stride,
2701 uint32_t* sse);
2702 #define vpx_highbd_8_sub_pixel_variance16x8 \
2703 vpx_highbd_8_sub_pixel_variance16x8_sse2
2704
2705 uint32_t vpx_highbd_8_sub_pixel_variance32x16_c(const uint8_t* src_ptr,
2706 int src_stride,
2707 int x_offset,
2708 int y_offset,
2709 const uint8_t* ref_ptr,
2710 int ref_stride,
2711 uint32_t* sse);
2712 uint32_t vpx_highbd_8_sub_pixel_variance32x16_sse2(const uint8_t* src_ptr,
2713 int src_stride,
2714 int x_offset,
2715 int y_offset,
2716 const uint8_t* ref_ptr,
2717 int ref_stride,
2718 uint32_t* sse);
2719 #define vpx_highbd_8_sub_pixel_variance32x16 \
2720 vpx_highbd_8_sub_pixel_variance32x16_sse2
2721
2722 uint32_t vpx_highbd_8_sub_pixel_variance32x32_c(const uint8_t* src_ptr,
2723 int src_stride,
2724 int x_offset,
2725 int y_offset,
2726 const uint8_t* ref_ptr,
2727 int ref_stride,
2728 uint32_t* sse);
2729 uint32_t vpx_highbd_8_sub_pixel_variance32x32_sse2(const uint8_t* src_ptr,
2730 int src_stride,
2731 int x_offset,
2732 int y_offset,
2733 const uint8_t* ref_ptr,
2734 int ref_stride,
2735 uint32_t* sse);
2736 #define vpx_highbd_8_sub_pixel_variance32x32 \
2737 vpx_highbd_8_sub_pixel_variance32x32_sse2
2738
2739 uint32_t vpx_highbd_8_sub_pixel_variance32x64_c(const uint8_t* src_ptr,
2740 int src_stride,
2741 int x_offset,
2742 int y_offset,
2743 const uint8_t* ref_ptr,
2744 int ref_stride,
2745 uint32_t* sse);
2746 uint32_t vpx_highbd_8_sub_pixel_variance32x64_sse2(const uint8_t* src_ptr,
2747 int src_stride,
2748 int x_offset,
2749 int y_offset,
2750 const uint8_t* ref_ptr,
2751 int ref_stride,
2752 uint32_t* sse);
2753 #define vpx_highbd_8_sub_pixel_variance32x64 \
2754 vpx_highbd_8_sub_pixel_variance32x64_sse2
2755
2756 uint32_t vpx_highbd_8_sub_pixel_variance4x4_c(const uint8_t* src_ptr,
2757 int src_stride,
2758 int x_offset,
2759 int y_offset,
2760 const uint8_t* ref_ptr,
2761 int ref_stride,
2762 uint32_t* sse);
2763 #define vpx_highbd_8_sub_pixel_variance4x4 vpx_highbd_8_sub_pixel_variance4x4_c
2764
2765 uint32_t vpx_highbd_8_sub_pixel_variance4x8_c(const uint8_t* src_ptr,
2766 int src_stride,
2767 int x_offset,
2768 int y_offset,
2769 const uint8_t* ref_ptr,
2770 int ref_stride,
2771 uint32_t* sse);
2772 #define vpx_highbd_8_sub_pixel_variance4x8 vpx_highbd_8_sub_pixel_variance4x8_c
2773
2774 uint32_t vpx_highbd_8_sub_pixel_variance64x32_c(const uint8_t* src_ptr,
2775 int src_stride,
2776 int x_offset,
2777 int y_offset,
2778 const uint8_t* ref_ptr,
2779 int ref_stride,
2780 uint32_t* sse);
2781 uint32_t vpx_highbd_8_sub_pixel_variance64x32_sse2(const uint8_t* src_ptr,
2782 int src_stride,
2783 int x_offset,
2784 int y_offset,
2785 const uint8_t* ref_ptr,
2786 int ref_stride,
2787 uint32_t* sse);
2788 #define vpx_highbd_8_sub_pixel_variance64x32 \
2789 vpx_highbd_8_sub_pixel_variance64x32_sse2
2790
2791 uint32_t vpx_highbd_8_sub_pixel_variance64x64_c(const uint8_t* src_ptr,
2792 int src_stride,
2793 int x_offset,
2794 int y_offset,
2795 const uint8_t* ref_ptr,
2796 int ref_stride,
2797 uint32_t* sse);
2798 uint32_t vpx_highbd_8_sub_pixel_variance64x64_sse2(const uint8_t* src_ptr,
2799 int src_stride,
2800 int x_offset,
2801 int y_offset,
2802 const uint8_t* ref_ptr,
2803 int ref_stride,
2804 uint32_t* sse);
2805 #define vpx_highbd_8_sub_pixel_variance64x64 \
2806 vpx_highbd_8_sub_pixel_variance64x64_sse2
2807
2808 uint32_t vpx_highbd_8_sub_pixel_variance8x16_c(const uint8_t* src_ptr,
2809 int src_stride,
2810 int x_offset,
2811 int y_offset,
2812 const uint8_t* ref_ptr,
2813 int ref_stride,
2814 uint32_t* sse);
2815 uint32_t vpx_highbd_8_sub_pixel_variance8x16_sse2(const uint8_t* src_ptr,
2816 int src_stride,
2817 int x_offset,
2818 int y_offset,
2819 const uint8_t* ref_ptr,
2820 int ref_stride,
2821 uint32_t* sse);
2822 #define vpx_highbd_8_sub_pixel_variance8x16 \
2823 vpx_highbd_8_sub_pixel_variance8x16_sse2
2824
2825 uint32_t vpx_highbd_8_sub_pixel_variance8x4_c(const uint8_t* src_ptr,
2826 int src_stride,
2827 int x_offset,
2828 int y_offset,
2829 const uint8_t* ref_ptr,
2830 int ref_stride,
2831 uint32_t* sse);
2832 uint32_t vpx_highbd_8_sub_pixel_variance8x4_sse2(const uint8_t* src_ptr,
2833 int src_stride,
2834 int x_offset,
2835 int y_offset,
2836 const uint8_t* ref_ptr,
2837 int ref_stride,
2838 uint32_t* sse);
2839 #define vpx_highbd_8_sub_pixel_variance8x4 \
2840 vpx_highbd_8_sub_pixel_variance8x4_sse2
2841
2842 uint32_t vpx_highbd_8_sub_pixel_variance8x8_c(const uint8_t* src_ptr,
2843 int src_stride,
2844 int x_offset,
2845 int y_offset,
2846 const uint8_t* ref_ptr,
2847 int ref_stride,
2848 uint32_t* sse);
2849 uint32_t vpx_highbd_8_sub_pixel_variance8x8_sse2(const uint8_t* src_ptr,
2850 int src_stride,
2851 int x_offset,
2852 int y_offset,
2853 const uint8_t* ref_ptr,
2854 int ref_stride,
2855 uint32_t* sse);
2856 #define vpx_highbd_8_sub_pixel_variance8x8 \
2857 vpx_highbd_8_sub_pixel_variance8x8_sse2
2858
2859 unsigned int vpx_highbd_8_variance16x16_c(const uint8_t* src_ptr,
2860 int src_stride,
2861 const uint8_t* ref_ptr,
2862 int ref_stride,
2863 unsigned int* sse);
2864 unsigned int vpx_highbd_8_variance16x16_sse2(const uint8_t* src_ptr,
2865 int src_stride,
2866 const uint8_t* ref_ptr,
2867 int ref_stride,
2868 unsigned int* sse);
2869 #define vpx_highbd_8_variance16x16 vpx_highbd_8_variance16x16_sse2
2870
2871 unsigned int vpx_highbd_8_variance16x32_c(const uint8_t* src_ptr,
2872 int src_stride,
2873 const uint8_t* ref_ptr,
2874 int ref_stride,
2875 unsigned int* sse);
2876 unsigned int vpx_highbd_8_variance16x32_sse2(const uint8_t* src_ptr,
2877 int src_stride,
2878 const uint8_t* ref_ptr,
2879 int ref_stride,
2880 unsigned int* sse);
2881 #define vpx_highbd_8_variance16x32 vpx_highbd_8_variance16x32_sse2
2882
2883 unsigned int vpx_highbd_8_variance16x8_c(const uint8_t* src_ptr,
2884 int src_stride,
2885 const uint8_t* ref_ptr,
2886 int ref_stride,
2887 unsigned int* sse);
2888 unsigned int vpx_highbd_8_variance16x8_sse2(const uint8_t* src_ptr,
2889 int src_stride,
2890 const uint8_t* ref_ptr,
2891 int ref_stride,
2892 unsigned int* sse);
2893 #define vpx_highbd_8_variance16x8 vpx_highbd_8_variance16x8_sse2
2894
2895 unsigned int vpx_highbd_8_variance32x16_c(const uint8_t* src_ptr,
2896 int src_stride,
2897 const uint8_t* ref_ptr,
2898 int ref_stride,
2899 unsigned int* sse);
2900 unsigned int vpx_highbd_8_variance32x16_sse2(const uint8_t* src_ptr,
2901 int src_stride,
2902 const uint8_t* ref_ptr,
2903 int ref_stride,
2904 unsigned int* sse);
2905 #define vpx_highbd_8_variance32x16 vpx_highbd_8_variance32x16_sse2
2906
2907 unsigned int vpx_highbd_8_variance32x32_c(const uint8_t* src_ptr,
2908 int src_stride,
2909 const uint8_t* ref_ptr,
2910 int ref_stride,
2911 unsigned int* sse);
2912 unsigned int vpx_highbd_8_variance32x32_sse2(const uint8_t* src_ptr,
2913 int src_stride,
2914 const uint8_t* ref_ptr,
2915 int ref_stride,
2916 unsigned int* sse);
2917 #define vpx_highbd_8_variance32x32 vpx_highbd_8_variance32x32_sse2
2918
2919 unsigned int vpx_highbd_8_variance32x64_c(const uint8_t* src_ptr,
2920 int src_stride,
2921 const uint8_t* ref_ptr,
2922 int ref_stride,
2923 unsigned int* sse);
2924 unsigned int vpx_highbd_8_variance32x64_sse2(const uint8_t* src_ptr,
2925 int src_stride,
2926 const uint8_t* ref_ptr,
2927 int ref_stride,
2928 unsigned int* sse);
2929 #define vpx_highbd_8_variance32x64 vpx_highbd_8_variance32x64_sse2
2930
2931 unsigned int vpx_highbd_8_variance4x4_c(const uint8_t* src_ptr,
2932 int src_stride,
2933 const uint8_t* ref_ptr,
2934 int ref_stride,
2935 unsigned int* sse);
2936 #define vpx_highbd_8_variance4x4 vpx_highbd_8_variance4x4_c
2937
2938 unsigned int vpx_highbd_8_variance4x8_c(const uint8_t* src_ptr,
2939 int src_stride,
2940 const uint8_t* ref_ptr,
2941 int ref_stride,
2942 unsigned int* sse);
2943 #define vpx_highbd_8_variance4x8 vpx_highbd_8_variance4x8_c
2944
2945 unsigned int vpx_highbd_8_variance64x32_c(const uint8_t* src_ptr,
2946 int src_stride,
2947 const uint8_t* ref_ptr,
2948 int ref_stride,
2949 unsigned int* sse);
2950 unsigned int vpx_highbd_8_variance64x32_sse2(const uint8_t* src_ptr,
2951 int src_stride,
2952 const uint8_t* ref_ptr,
2953 int ref_stride,
2954 unsigned int* sse);
2955 #define vpx_highbd_8_variance64x32 vpx_highbd_8_variance64x32_sse2
2956
2957 unsigned int vpx_highbd_8_variance64x64_c(const uint8_t* src_ptr,
2958 int src_stride,
2959 const uint8_t* ref_ptr,
2960 int ref_stride,
2961 unsigned int* sse);
2962 unsigned int vpx_highbd_8_variance64x64_sse2(const uint8_t* src_ptr,
2963 int src_stride,
2964 const uint8_t* ref_ptr,
2965 int ref_stride,
2966 unsigned int* sse);
2967 #define vpx_highbd_8_variance64x64 vpx_highbd_8_variance64x64_sse2
2968
2969 unsigned int vpx_highbd_8_variance8x16_c(const uint8_t* src_ptr,
2970 int src_stride,
2971 const uint8_t* ref_ptr,
2972 int ref_stride,
2973 unsigned int* sse);
2974 unsigned int vpx_highbd_8_variance8x16_sse2(const uint8_t* src_ptr,
2975 int src_stride,
2976 const uint8_t* ref_ptr,
2977 int ref_stride,
2978 unsigned int* sse);
2979 #define vpx_highbd_8_variance8x16 vpx_highbd_8_variance8x16_sse2
2980
2981 unsigned int vpx_highbd_8_variance8x4_c(const uint8_t* src_ptr,
2982 int src_stride,
2983 const uint8_t* ref_ptr,
2984 int ref_stride,
2985 unsigned int* sse);
2986 #define vpx_highbd_8_variance8x4 vpx_highbd_8_variance8x4_c
2987
2988 unsigned int vpx_highbd_8_variance8x8_c(const uint8_t* src_ptr,
2989 int src_stride,
2990 const uint8_t* ref_ptr,
2991 int ref_stride,
2992 unsigned int* sse);
2993 unsigned int vpx_highbd_8_variance8x8_sse2(const uint8_t* src_ptr,
2994 int src_stride,
2995 const uint8_t* ref_ptr,
2996 int ref_stride,
2997 unsigned int* sse);
2998 #define vpx_highbd_8_variance8x8 vpx_highbd_8_variance8x8_sse2
2999
3000 unsigned int vpx_highbd_avg_4x4_c(const uint8_t* s8, int p);
3001 unsigned int vpx_highbd_avg_4x4_sse2(const uint8_t* s8, int p);
3002 #define vpx_highbd_avg_4x4 vpx_highbd_avg_4x4_sse2
3003
3004 unsigned int vpx_highbd_avg_8x8_c(const uint8_t* s8, int p);
3005 unsigned int vpx_highbd_avg_8x8_sse2(const uint8_t* s8, int p);
3006 #define vpx_highbd_avg_8x8 vpx_highbd_avg_8x8_sse2
3007
3008 void vpx_highbd_comp_avg_pred_c(uint16_t* comp_pred,
3009 const uint16_t* pred,
3010 int width,
3011 int height,
3012 const uint16_t* ref,
3013 int ref_stride);
3014 #define vpx_highbd_comp_avg_pred vpx_highbd_comp_avg_pred_c
3015
3016 void vpx_highbd_convolve8_c(const uint16_t* src,
3017 ptrdiff_t src_stride,
3018 uint16_t* dst,
3019 ptrdiff_t dst_stride,
3020 const InterpKernel* filter,
3021 int x0_q4,
3022 int x_step_q4,
3023 int y0_q4,
3024 int y_step_q4,
3025 int w,
3026 int h,
3027 int bd);
3028 void vpx_highbd_convolve8_sse2(const uint16_t* src,
3029 ptrdiff_t src_stride,
3030 uint16_t* dst,
3031 ptrdiff_t dst_stride,
3032 const InterpKernel* filter,
3033 int x0_q4,
3034 int x_step_q4,
3035 int y0_q4,
3036 int y_step_q4,
3037 int w,
3038 int h,
3039 int bd);
3040 void vpx_highbd_convolve8_avx2(const uint16_t* src,
3041 ptrdiff_t src_stride,
3042 uint16_t* dst,
3043 ptrdiff_t dst_stride,
3044 const InterpKernel* filter,
3045 int x0_q4,
3046 int x_step_q4,
3047 int y0_q4,
3048 int y_step_q4,
3049 int w,
3050 int h,
3051 int bd);
3052 RTCD_EXTERN void (*vpx_highbd_convolve8)(const uint16_t* src,
3053 ptrdiff_t src_stride,
3054 uint16_t* dst,
3055 ptrdiff_t dst_stride,
3056 const InterpKernel* filter,
3057 int x0_q4,
3058 int x_step_q4,
3059 int y0_q4,
3060 int y_step_q4,
3061 int w,
3062 int h,
3063 int bd);
3064
3065 void vpx_highbd_convolve8_avg_c(const uint16_t* src,
3066 ptrdiff_t src_stride,
3067 uint16_t* dst,
3068 ptrdiff_t dst_stride,
3069 const InterpKernel* filter,
3070 int x0_q4,
3071 int x_step_q4,
3072 int y0_q4,
3073 int y_step_q4,
3074 int w,
3075 int h,
3076 int bd);
3077 void vpx_highbd_convolve8_avg_sse2(const uint16_t* src,
3078 ptrdiff_t src_stride,
3079 uint16_t* dst,
3080 ptrdiff_t dst_stride,
3081 const InterpKernel* filter,
3082 int x0_q4,
3083 int x_step_q4,
3084 int y0_q4,
3085 int y_step_q4,
3086 int w,
3087 int h,
3088 int bd);
3089 void vpx_highbd_convolve8_avg_avx2(const uint16_t* src,
3090 ptrdiff_t src_stride,
3091 uint16_t* dst,
3092 ptrdiff_t dst_stride,
3093 const InterpKernel* filter,
3094 int x0_q4,
3095 int x_step_q4,
3096 int y0_q4,
3097 int y_step_q4,
3098 int w,
3099 int h,
3100 int bd);
3101 RTCD_EXTERN void (*vpx_highbd_convolve8_avg)(const uint16_t* src,
3102 ptrdiff_t src_stride,
3103 uint16_t* dst,
3104 ptrdiff_t dst_stride,
3105 const InterpKernel* filter,
3106 int x0_q4,
3107 int x_step_q4,
3108 int y0_q4,
3109 int y_step_q4,
3110 int w,
3111 int h,
3112 int bd);
3113
3114 void vpx_highbd_convolve8_avg_horiz_c(const uint16_t* src,
3115 ptrdiff_t src_stride,
3116 uint16_t* dst,
3117 ptrdiff_t dst_stride,
3118 const InterpKernel* filter,
3119 int x0_q4,
3120 int x_step_q4,
3121 int y0_q4,
3122 int y_step_q4,
3123 int w,
3124 int h,
3125 int bd);
3126 void vpx_highbd_convolve8_avg_horiz_sse2(const uint16_t* src,
3127 ptrdiff_t src_stride,
3128 uint16_t* dst,
3129 ptrdiff_t dst_stride,
3130 const InterpKernel* filter,
3131 int x0_q4,
3132 int x_step_q4,
3133 int y0_q4,
3134 int y_step_q4,
3135 int w,
3136 int h,
3137 int bd);
3138 void vpx_highbd_convolve8_avg_horiz_avx2(const uint16_t* src,
3139 ptrdiff_t src_stride,
3140 uint16_t* dst,
3141 ptrdiff_t dst_stride,
3142 const InterpKernel* filter,
3143 int x0_q4,
3144 int x_step_q4,
3145 int y0_q4,
3146 int y_step_q4,
3147 int w,
3148 int h,
3149 int bd);
3150 RTCD_EXTERN void (*vpx_highbd_convolve8_avg_horiz)(const uint16_t* src,
3151 ptrdiff_t src_stride,
3152 uint16_t* dst,
3153 ptrdiff_t dst_stride,
3154 const InterpKernel* filter,
3155 int x0_q4,
3156 int x_step_q4,
3157 int y0_q4,
3158 int y_step_q4,
3159 int w,
3160 int h,
3161 int bd);
3162
3163 void vpx_highbd_convolve8_avg_vert_c(const uint16_t* src,
3164 ptrdiff_t src_stride,
3165 uint16_t* dst,
3166 ptrdiff_t dst_stride,
3167 const InterpKernel* filter,
3168 int x0_q4,
3169 int x_step_q4,
3170 int y0_q4,
3171 int y_step_q4,
3172 int w,
3173 int h,
3174 int bd);
3175 void vpx_highbd_convolve8_avg_vert_sse2(const uint16_t* src,
3176 ptrdiff_t src_stride,
3177 uint16_t* dst,
3178 ptrdiff_t dst_stride,
3179 const InterpKernel* filter,
3180 int x0_q4,
3181 int x_step_q4,
3182 int y0_q4,
3183 int y_step_q4,
3184 int w,
3185 int h,
3186 int bd);
3187 void vpx_highbd_convolve8_avg_vert_avx2(const uint16_t* src,
3188 ptrdiff_t src_stride,
3189 uint16_t* dst,
3190 ptrdiff_t dst_stride,
3191 const InterpKernel* filter,
3192 int x0_q4,
3193 int x_step_q4,
3194 int y0_q4,
3195 int y_step_q4,
3196 int w,
3197 int h,
3198 int bd);
3199 RTCD_EXTERN void (*vpx_highbd_convolve8_avg_vert)(const uint16_t* src,
3200 ptrdiff_t src_stride,
3201 uint16_t* dst,
3202 ptrdiff_t dst_stride,
3203 const InterpKernel* filter,
3204 int x0_q4,
3205 int x_step_q4,
3206 int y0_q4,
3207 int y_step_q4,
3208 int w,
3209 int h,
3210 int bd);
3211
3212 void vpx_highbd_convolve8_horiz_c(const uint16_t* src,
3213 ptrdiff_t src_stride,
3214 uint16_t* dst,
3215 ptrdiff_t dst_stride,
3216 const InterpKernel* filter,
3217 int x0_q4,
3218 int x_step_q4,
3219 int y0_q4,
3220 int y_step_q4,
3221 int w,
3222 int h,
3223 int bd);
3224 void vpx_highbd_convolve8_horiz_sse2(const uint16_t* src,
3225 ptrdiff_t src_stride,
3226 uint16_t* dst,
3227 ptrdiff_t dst_stride,
3228 const InterpKernel* filter,
3229 int x0_q4,
3230 int x_step_q4,
3231 int y0_q4,
3232 int y_step_q4,
3233 int w,
3234 int h,
3235 int bd);
3236 void vpx_highbd_convolve8_horiz_avx2(const uint16_t* src,
3237 ptrdiff_t src_stride,
3238 uint16_t* dst,
3239 ptrdiff_t dst_stride,
3240 const InterpKernel* filter,
3241 int x0_q4,
3242 int x_step_q4,
3243 int y0_q4,
3244 int y_step_q4,
3245 int w,
3246 int h,
3247 int bd);
3248 RTCD_EXTERN void (*vpx_highbd_convolve8_horiz)(const uint16_t* src,
3249 ptrdiff_t src_stride,
3250 uint16_t* dst,
3251 ptrdiff_t dst_stride,
3252 const InterpKernel* filter,
3253 int x0_q4,
3254 int x_step_q4,
3255 int y0_q4,
3256 int y_step_q4,
3257 int w,
3258 int h,
3259 int bd);
3260
3261 void vpx_highbd_convolve8_vert_c(const uint16_t* src,
3262 ptrdiff_t src_stride,
3263 uint16_t* dst,
3264 ptrdiff_t dst_stride,
3265 const InterpKernel* filter,
3266 int x0_q4,
3267 int x_step_q4,
3268 int y0_q4,
3269 int y_step_q4,
3270 int w,
3271 int h,
3272 int bd);
3273 void vpx_highbd_convolve8_vert_sse2(const uint16_t* src,
3274 ptrdiff_t src_stride,
3275 uint16_t* dst,
3276 ptrdiff_t dst_stride,
3277 const InterpKernel* filter,
3278 int x0_q4,
3279 int x_step_q4,
3280 int y0_q4,
3281 int y_step_q4,
3282 int w,
3283 int h,
3284 int bd);
3285 void vpx_highbd_convolve8_vert_avx2(const uint16_t* src,
3286 ptrdiff_t src_stride,
3287 uint16_t* dst,
3288 ptrdiff_t dst_stride,
3289 const InterpKernel* filter,
3290 int x0_q4,
3291 int x_step_q4,
3292 int y0_q4,
3293 int y_step_q4,
3294 int w,
3295 int h,
3296 int bd);
3297 RTCD_EXTERN void (*vpx_highbd_convolve8_vert)(const uint16_t* src,
3298 ptrdiff_t src_stride,
3299 uint16_t* dst,
3300 ptrdiff_t dst_stride,
3301 const InterpKernel* filter,
3302 int x0_q4,
3303 int x_step_q4,
3304 int y0_q4,
3305 int y_step_q4,
3306 int w,
3307 int h,
3308 int bd);
3309
3310 void vpx_highbd_convolve_avg_c(const uint16_t* src,
3311 ptrdiff_t src_stride,
3312 uint16_t* dst,
3313 ptrdiff_t dst_stride,
3314 const InterpKernel* filter,
3315 int x0_q4,
3316 int x_step_q4,
3317 int y0_q4,
3318 int y_step_q4,
3319 int w,
3320 int h,
3321 int bd);
3322 void vpx_highbd_convolve_avg_sse2(const uint16_t* src,
3323 ptrdiff_t src_stride,
3324 uint16_t* dst,
3325 ptrdiff_t dst_stride,
3326 const InterpKernel* filter,
3327 int x0_q4,
3328 int x_step_q4,
3329 int y0_q4,
3330 int y_step_q4,
3331 int w,
3332 int h,
3333 int bd);
3334 void vpx_highbd_convolve_avg_avx2(const uint16_t* src,
3335 ptrdiff_t src_stride,
3336 uint16_t* dst,
3337 ptrdiff_t dst_stride,
3338 const InterpKernel* filter,
3339 int x0_q4,
3340 int x_step_q4,
3341 int y0_q4,
3342 int y_step_q4,
3343 int w,
3344 int h,
3345 int bd);
3346 RTCD_EXTERN void (*vpx_highbd_convolve_avg)(const uint16_t* src,
3347 ptrdiff_t src_stride,
3348 uint16_t* dst,
3349 ptrdiff_t dst_stride,
3350 const InterpKernel* filter,
3351 int x0_q4,
3352 int x_step_q4,
3353 int y0_q4,
3354 int y_step_q4,
3355 int w,
3356 int h,
3357 int bd);
3358
3359 void vpx_highbd_convolve_copy_c(const uint16_t* src,
3360 ptrdiff_t src_stride,
3361 uint16_t* dst,
3362 ptrdiff_t dst_stride,
3363 const InterpKernel* filter,
3364 int x0_q4,
3365 int x_step_q4,
3366 int y0_q4,
3367 int y_step_q4,
3368 int w,
3369 int h,
3370 int bd);
3371 void vpx_highbd_convolve_copy_sse2(const uint16_t* src,
3372 ptrdiff_t src_stride,
3373 uint16_t* dst,
3374 ptrdiff_t dst_stride,
3375 const InterpKernel* filter,
3376 int x0_q4,
3377 int x_step_q4,
3378 int y0_q4,
3379 int y_step_q4,
3380 int w,
3381 int h,
3382 int bd);
3383 void vpx_highbd_convolve_copy_avx2(const uint16_t* src,
3384 ptrdiff_t src_stride,
3385 uint16_t* dst,
3386 ptrdiff_t dst_stride,
3387 const InterpKernel* filter,
3388 int x0_q4,
3389 int x_step_q4,
3390 int y0_q4,
3391 int y_step_q4,
3392 int w,
3393 int h,
3394 int bd);
3395 RTCD_EXTERN void (*vpx_highbd_convolve_copy)(const uint16_t* src,
3396 ptrdiff_t src_stride,
3397 uint16_t* dst,
3398 ptrdiff_t dst_stride,
3399 const InterpKernel* filter,
3400 int x0_q4,
3401 int x_step_q4,
3402 int y0_q4,
3403 int y_step_q4,
3404 int w,
3405 int h,
3406 int bd);
3407
3408 void vpx_highbd_d117_predictor_16x16_c(uint16_t* dst,
3409 ptrdiff_t stride,
3410 const uint16_t* above,
3411 const uint16_t* left,
3412 int bd);
3413 void vpx_highbd_d117_predictor_16x16_ssse3(uint16_t* dst,
3414 ptrdiff_t stride,
3415 const uint16_t* above,
3416 const uint16_t* left,
3417 int bd);
3418 RTCD_EXTERN void (*vpx_highbd_d117_predictor_16x16)(uint16_t* dst,
3419 ptrdiff_t stride,
3420 const uint16_t* above,
3421 const uint16_t* left,
3422 int bd);
3423
3424 void vpx_highbd_d117_predictor_32x32_c(uint16_t* dst,
3425 ptrdiff_t stride,
3426 const uint16_t* above,
3427 const uint16_t* left,
3428 int bd);
3429 void vpx_highbd_d117_predictor_32x32_ssse3(uint16_t* dst,
3430 ptrdiff_t stride,
3431 const uint16_t* above,
3432 const uint16_t* left,
3433 int bd);
3434 RTCD_EXTERN void (*vpx_highbd_d117_predictor_32x32)(uint16_t* dst,
3435 ptrdiff_t stride,
3436 const uint16_t* above,
3437 const uint16_t* left,
3438 int bd);
3439
3440 void vpx_highbd_d117_predictor_4x4_c(uint16_t* dst,
3441 ptrdiff_t stride,
3442 const uint16_t* above,
3443 const uint16_t* left,
3444 int bd);
3445 void vpx_highbd_d117_predictor_4x4_sse2(uint16_t* dst,
3446 ptrdiff_t stride,
3447 const uint16_t* above,
3448 const uint16_t* left,
3449 int bd);
3450 #define vpx_highbd_d117_predictor_4x4 vpx_highbd_d117_predictor_4x4_sse2
3451
3452 void vpx_highbd_d117_predictor_8x8_c(uint16_t* dst,
3453 ptrdiff_t stride,
3454 const uint16_t* above,
3455 const uint16_t* left,
3456 int bd);
3457 void vpx_highbd_d117_predictor_8x8_ssse3(uint16_t* dst,
3458 ptrdiff_t stride,
3459 const uint16_t* above,
3460 const uint16_t* left,
3461 int bd);
3462 RTCD_EXTERN void (*vpx_highbd_d117_predictor_8x8)(uint16_t* dst,
3463 ptrdiff_t stride,
3464 const uint16_t* above,
3465 const uint16_t* left,
3466 int bd);
3467
3468 void vpx_highbd_d135_predictor_16x16_c(uint16_t* dst,
3469 ptrdiff_t stride,
3470 const uint16_t* above,
3471 const uint16_t* left,
3472 int bd);
3473 void vpx_highbd_d135_predictor_16x16_ssse3(uint16_t* dst,
3474 ptrdiff_t stride,
3475 const uint16_t* above,
3476 const uint16_t* left,
3477 int bd);
3478 RTCD_EXTERN void (*vpx_highbd_d135_predictor_16x16)(uint16_t* dst,
3479 ptrdiff_t stride,
3480 const uint16_t* above,
3481 const uint16_t* left,
3482 int bd);
3483
3484 void vpx_highbd_d135_predictor_32x32_c(uint16_t* dst,
3485 ptrdiff_t stride,
3486 const uint16_t* above,
3487 const uint16_t* left,
3488 int bd);
3489 void vpx_highbd_d135_predictor_32x32_ssse3(uint16_t* dst,
3490 ptrdiff_t stride,
3491 const uint16_t* above,
3492 const uint16_t* left,
3493 int bd);
3494 RTCD_EXTERN void (*vpx_highbd_d135_predictor_32x32)(uint16_t* dst,
3495 ptrdiff_t stride,
3496 const uint16_t* above,
3497 const uint16_t* left,
3498 int bd);
3499
3500 void vpx_highbd_d135_predictor_4x4_c(uint16_t* dst,
3501 ptrdiff_t stride,
3502 const uint16_t* above,
3503 const uint16_t* left,
3504 int bd);
3505 void vpx_highbd_d135_predictor_4x4_sse2(uint16_t* dst,
3506 ptrdiff_t stride,
3507 const uint16_t* above,
3508 const uint16_t* left,
3509 int bd);
3510 #define vpx_highbd_d135_predictor_4x4 vpx_highbd_d135_predictor_4x4_sse2
3511
3512 void vpx_highbd_d135_predictor_8x8_c(uint16_t* dst,
3513 ptrdiff_t stride,
3514 const uint16_t* above,
3515 const uint16_t* left,
3516 int bd);
3517 void vpx_highbd_d135_predictor_8x8_ssse3(uint16_t* dst,
3518 ptrdiff_t stride,
3519 const uint16_t* above,
3520 const uint16_t* left,
3521 int bd);
3522 RTCD_EXTERN void (*vpx_highbd_d135_predictor_8x8)(uint16_t* dst,
3523 ptrdiff_t stride,
3524 const uint16_t* above,
3525 const uint16_t* left,
3526 int bd);
3527
3528 void vpx_highbd_d153_predictor_16x16_c(uint16_t* dst,
3529 ptrdiff_t stride,
3530 const uint16_t* above,
3531 const uint16_t* left,
3532 int bd);
3533 void vpx_highbd_d153_predictor_16x16_ssse3(uint16_t* dst,
3534 ptrdiff_t stride,
3535 const uint16_t* above,
3536 const uint16_t* left,
3537 int bd);
3538 RTCD_EXTERN void (*vpx_highbd_d153_predictor_16x16)(uint16_t* dst,
3539 ptrdiff_t stride,
3540 const uint16_t* above,
3541 const uint16_t* left,
3542 int bd);
3543
3544 void vpx_highbd_d153_predictor_32x32_c(uint16_t* dst,
3545 ptrdiff_t stride,
3546 const uint16_t* above,
3547 const uint16_t* left,
3548 int bd);
3549 void vpx_highbd_d153_predictor_32x32_ssse3(uint16_t* dst,
3550 ptrdiff_t stride,
3551 const uint16_t* above,
3552 const uint16_t* left,
3553 int bd);
3554 RTCD_EXTERN void (*vpx_highbd_d153_predictor_32x32)(uint16_t* dst,
3555 ptrdiff_t stride,
3556 const uint16_t* above,
3557 const uint16_t* left,
3558 int bd);
3559
3560 void vpx_highbd_d153_predictor_4x4_c(uint16_t* dst,
3561 ptrdiff_t stride,
3562 const uint16_t* above,
3563 const uint16_t* left,
3564 int bd);
3565 void vpx_highbd_d153_predictor_4x4_sse2(uint16_t* dst,
3566 ptrdiff_t stride,
3567 const uint16_t* above,
3568 const uint16_t* left,
3569 int bd);
3570 #define vpx_highbd_d153_predictor_4x4 vpx_highbd_d153_predictor_4x4_sse2
3571
3572 void vpx_highbd_d153_predictor_8x8_c(uint16_t* dst,
3573 ptrdiff_t stride,
3574 const uint16_t* above,
3575 const uint16_t* left,
3576 int bd);
3577 void vpx_highbd_d153_predictor_8x8_ssse3(uint16_t* dst,
3578 ptrdiff_t stride,
3579 const uint16_t* above,
3580 const uint16_t* left,
3581 int bd);
3582 RTCD_EXTERN void (*vpx_highbd_d153_predictor_8x8)(uint16_t* dst,
3583 ptrdiff_t stride,
3584 const uint16_t* above,
3585 const uint16_t* left,
3586 int bd);
3587
3588 void vpx_highbd_d207_predictor_16x16_c(uint16_t* dst,
3589 ptrdiff_t stride,
3590 const uint16_t* above,
3591 const uint16_t* left,
3592 int bd);
3593 void vpx_highbd_d207_predictor_16x16_ssse3(uint16_t* dst,
3594 ptrdiff_t stride,
3595 const uint16_t* above,
3596 const uint16_t* left,
3597 int bd);
3598 RTCD_EXTERN void (*vpx_highbd_d207_predictor_16x16)(uint16_t* dst,
3599 ptrdiff_t stride,
3600 const uint16_t* above,
3601 const uint16_t* left,
3602 int bd);
3603
3604 void vpx_highbd_d207_predictor_32x32_c(uint16_t* dst,
3605 ptrdiff_t stride,
3606 const uint16_t* above,
3607 const uint16_t* left,
3608 int bd);
3609 void vpx_highbd_d207_predictor_32x32_ssse3(uint16_t* dst,
3610 ptrdiff_t stride,
3611 const uint16_t* above,
3612 const uint16_t* left,
3613 int bd);
3614 RTCD_EXTERN void (*vpx_highbd_d207_predictor_32x32)(uint16_t* dst,
3615 ptrdiff_t stride,
3616 const uint16_t* above,
3617 const uint16_t* left,
3618 int bd);
3619
3620 void vpx_highbd_d207_predictor_4x4_c(uint16_t* dst,
3621 ptrdiff_t stride,
3622 const uint16_t* above,
3623 const uint16_t* left,
3624 int bd);
3625 void vpx_highbd_d207_predictor_4x4_sse2(uint16_t* dst,
3626 ptrdiff_t stride,
3627 const uint16_t* above,
3628 const uint16_t* left,
3629 int bd);
3630 #define vpx_highbd_d207_predictor_4x4 vpx_highbd_d207_predictor_4x4_sse2
3631
3632 void vpx_highbd_d207_predictor_8x8_c(uint16_t* dst,
3633 ptrdiff_t stride,
3634 const uint16_t* above,
3635 const uint16_t* left,
3636 int bd);
3637 void vpx_highbd_d207_predictor_8x8_ssse3(uint16_t* dst,
3638 ptrdiff_t stride,
3639 const uint16_t* above,
3640 const uint16_t* left,
3641 int bd);
3642 RTCD_EXTERN void (*vpx_highbd_d207_predictor_8x8)(uint16_t* dst,
3643 ptrdiff_t stride,
3644 const uint16_t* above,
3645 const uint16_t* left,
3646 int bd);
3647
3648 void vpx_highbd_d45_predictor_16x16_c(uint16_t* dst,
3649 ptrdiff_t stride,
3650 const uint16_t* above,
3651 const uint16_t* left,
3652 int bd);
3653 void vpx_highbd_d45_predictor_16x16_ssse3(uint16_t* dst,
3654 ptrdiff_t stride,
3655 const uint16_t* above,
3656 const uint16_t* left,
3657 int bd);
3658 RTCD_EXTERN void (*vpx_highbd_d45_predictor_16x16)(uint16_t* dst,
3659 ptrdiff_t stride,
3660 const uint16_t* above,
3661 const uint16_t* left,
3662 int bd);
3663
3664 void vpx_highbd_d45_predictor_32x32_c(uint16_t* dst,
3665 ptrdiff_t stride,
3666 const uint16_t* above,
3667 const uint16_t* left,
3668 int bd);
3669 void vpx_highbd_d45_predictor_32x32_ssse3(uint16_t* dst,
3670 ptrdiff_t stride,
3671 const uint16_t* above,
3672 const uint16_t* left,
3673 int bd);
3674 RTCD_EXTERN void (*vpx_highbd_d45_predictor_32x32)(uint16_t* dst,
3675 ptrdiff_t stride,
3676 const uint16_t* above,
3677 const uint16_t* left,
3678 int bd);
3679
3680 void vpx_highbd_d45_predictor_4x4_c(uint16_t* dst,
3681 ptrdiff_t stride,
3682 const uint16_t* above,
3683 const uint16_t* left,
3684 int bd);
3685 void vpx_highbd_d45_predictor_4x4_ssse3(uint16_t* dst,
3686 ptrdiff_t stride,
3687 const uint16_t* above,
3688 const uint16_t* left,
3689 int bd);
3690 RTCD_EXTERN void (*vpx_highbd_d45_predictor_4x4)(uint16_t* dst,
3691 ptrdiff_t stride,
3692 const uint16_t* above,
3693 const uint16_t* left,
3694 int bd);
3695
3696 void vpx_highbd_d45_predictor_8x8_c(uint16_t* dst,
3697 ptrdiff_t stride,
3698 const uint16_t* above,
3699 const uint16_t* left,
3700 int bd);
3701 void vpx_highbd_d45_predictor_8x8_ssse3(uint16_t* dst,
3702 ptrdiff_t stride,
3703 const uint16_t* above,
3704 const uint16_t* left,
3705 int bd);
3706 RTCD_EXTERN void (*vpx_highbd_d45_predictor_8x8)(uint16_t* dst,
3707 ptrdiff_t stride,
3708 const uint16_t* above,
3709 const uint16_t* left,
3710 int bd);
3711
3712 void vpx_highbd_d63_predictor_16x16_c(uint16_t* dst,
3713 ptrdiff_t stride,
3714 const uint16_t* above,
3715 const uint16_t* left,
3716 int bd);
3717 void vpx_highbd_d63_predictor_16x16_ssse3(uint16_t* dst,
3718 ptrdiff_t stride,
3719 const uint16_t* above,
3720 const uint16_t* left,
3721 int bd);
3722 RTCD_EXTERN void (*vpx_highbd_d63_predictor_16x16)(uint16_t* dst,
3723 ptrdiff_t stride,
3724 const uint16_t* above,
3725 const uint16_t* left,
3726 int bd);
3727
3728 void vpx_highbd_d63_predictor_32x32_c(uint16_t* dst,
3729 ptrdiff_t stride,
3730 const uint16_t* above,
3731 const uint16_t* left,
3732 int bd);
3733 void vpx_highbd_d63_predictor_32x32_ssse3(uint16_t* dst,
3734 ptrdiff_t stride,
3735 const uint16_t* above,
3736 const uint16_t* left,
3737 int bd);
3738 RTCD_EXTERN void (*vpx_highbd_d63_predictor_32x32)(uint16_t* dst,
3739 ptrdiff_t stride,
3740 const uint16_t* above,
3741 const uint16_t* left,
3742 int bd);
3743
3744 void vpx_highbd_d63_predictor_4x4_c(uint16_t* dst,
3745 ptrdiff_t stride,
3746 const uint16_t* above,
3747 const uint16_t* left,
3748 int bd);
3749 void vpx_highbd_d63_predictor_4x4_sse2(uint16_t* dst,
3750 ptrdiff_t stride,
3751 const uint16_t* above,
3752 const uint16_t* left,
3753 int bd);
3754 #define vpx_highbd_d63_predictor_4x4 vpx_highbd_d63_predictor_4x4_sse2
3755
3756 void vpx_highbd_d63_predictor_8x8_c(uint16_t* dst,
3757 ptrdiff_t stride,
3758 const uint16_t* above,
3759 const uint16_t* left,
3760 int bd);
3761 void vpx_highbd_d63_predictor_8x8_ssse3(uint16_t* dst,
3762 ptrdiff_t stride,
3763 const uint16_t* above,
3764 const uint16_t* left,
3765 int bd);
3766 RTCD_EXTERN void (*vpx_highbd_d63_predictor_8x8)(uint16_t* dst,
3767 ptrdiff_t stride,
3768 const uint16_t* above,
3769 const uint16_t* left,
3770 int bd);
3771
3772 void vpx_highbd_dc_128_predictor_16x16_c(uint16_t* dst,
3773 ptrdiff_t stride,
3774 const uint16_t* above,
3775 const uint16_t* left,
3776 int bd);
3777 void vpx_highbd_dc_128_predictor_16x16_sse2(uint16_t* dst,
3778 ptrdiff_t stride,
3779 const uint16_t* above,
3780 const uint16_t* left,
3781 int bd);
3782 #define vpx_highbd_dc_128_predictor_16x16 vpx_highbd_dc_128_predictor_16x16_sse2
3783
3784 void vpx_highbd_dc_128_predictor_32x32_c(uint16_t* dst,
3785 ptrdiff_t stride,
3786 const uint16_t* above,
3787 const uint16_t* left,
3788 int bd);
3789 void vpx_highbd_dc_128_predictor_32x32_sse2(uint16_t* dst,
3790 ptrdiff_t stride,
3791 const uint16_t* above,
3792 const uint16_t* left,
3793 int bd);
3794 #define vpx_highbd_dc_128_predictor_32x32 vpx_highbd_dc_128_predictor_32x32_sse2
3795
3796 void vpx_highbd_dc_128_predictor_4x4_c(uint16_t* dst,
3797 ptrdiff_t stride,
3798 const uint16_t* above,
3799 const uint16_t* left,
3800 int bd);
3801 void vpx_highbd_dc_128_predictor_4x4_sse2(uint16_t* dst,
3802 ptrdiff_t stride,
3803 const uint16_t* above,
3804 const uint16_t* left,
3805 int bd);
3806 #define vpx_highbd_dc_128_predictor_4x4 vpx_highbd_dc_128_predictor_4x4_sse2
3807
3808 void vpx_highbd_dc_128_predictor_8x8_c(uint16_t* dst,
3809 ptrdiff_t stride,
3810 const uint16_t* above,
3811 const uint16_t* left,
3812 int bd);
3813 void vpx_highbd_dc_128_predictor_8x8_sse2(uint16_t* dst,
3814 ptrdiff_t stride,
3815 const uint16_t* above,
3816 const uint16_t* left,
3817 int bd);
3818 #define vpx_highbd_dc_128_predictor_8x8 vpx_highbd_dc_128_predictor_8x8_sse2
3819
3820 void vpx_highbd_dc_left_predictor_16x16_c(uint16_t* dst,
3821 ptrdiff_t stride,
3822 const uint16_t* above,
3823 const uint16_t* left,
3824 int bd);
3825 void vpx_highbd_dc_left_predictor_16x16_sse2(uint16_t* dst,
3826 ptrdiff_t stride,
3827 const uint16_t* above,
3828 const uint16_t* left,
3829 int bd);
3830 #define vpx_highbd_dc_left_predictor_16x16 \
3831 vpx_highbd_dc_left_predictor_16x16_sse2
3832
3833 void vpx_highbd_dc_left_predictor_32x32_c(uint16_t* dst,
3834 ptrdiff_t stride,
3835 const uint16_t* above,
3836 const uint16_t* left,
3837 int bd);
3838 void vpx_highbd_dc_left_predictor_32x32_sse2(uint16_t* dst,
3839 ptrdiff_t stride,
3840 const uint16_t* above,
3841 const uint16_t* left,
3842 int bd);
3843 #define vpx_highbd_dc_left_predictor_32x32 \
3844 vpx_highbd_dc_left_predictor_32x32_sse2
3845
3846 void vpx_highbd_dc_left_predictor_4x4_c(uint16_t* dst,
3847 ptrdiff_t stride,
3848 const uint16_t* above,
3849 const uint16_t* left,
3850 int bd);
3851 void vpx_highbd_dc_left_predictor_4x4_sse2(uint16_t* dst,
3852 ptrdiff_t stride,
3853 const uint16_t* above,
3854 const uint16_t* left,
3855 int bd);
3856 #define vpx_highbd_dc_left_predictor_4x4 vpx_highbd_dc_left_predictor_4x4_sse2
3857
3858 void vpx_highbd_dc_left_predictor_8x8_c(uint16_t* dst,
3859 ptrdiff_t stride,
3860 const uint16_t* above,
3861 const uint16_t* left,
3862 int bd);
3863 void vpx_highbd_dc_left_predictor_8x8_sse2(uint16_t* dst,
3864 ptrdiff_t stride,
3865 const uint16_t* above,
3866 const uint16_t* left,
3867 int bd);
3868 #define vpx_highbd_dc_left_predictor_8x8 vpx_highbd_dc_left_predictor_8x8_sse2
3869
3870 void vpx_highbd_dc_predictor_16x16_c(uint16_t* dst,
3871 ptrdiff_t stride,
3872 const uint16_t* above,
3873 const uint16_t* left,
3874 int bd);
3875 void vpx_highbd_dc_predictor_16x16_sse2(uint16_t* dst,
3876 ptrdiff_t stride,
3877 const uint16_t* above,
3878 const uint16_t* left,
3879 int bd);
3880 #define vpx_highbd_dc_predictor_16x16 vpx_highbd_dc_predictor_16x16_sse2
3881
3882 void vpx_highbd_dc_predictor_32x32_c(uint16_t* dst,
3883 ptrdiff_t stride,
3884 const uint16_t* above,
3885 const uint16_t* left,
3886 int bd);
3887 void vpx_highbd_dc_predictor_32x32_sse2(uint16_t* dst,
3888 ptrdiff_t stride,
3889 const uint16_t* above,
3890 const uint16_t* left,
3891 int bd);
3892 #define vpx_highbd_dc_predictor_32x32 vpx_highbd_dc_predictor_32x32_sse2
3893
3894 void vpx_highbd_dc_predictor_4x4_c(uint16_t* dst,
3895 ptrdiff_t stride,
3896 const uint16_t* above,
3897 const uint16_t* left,
3898 int bd);
3899 void vpx_highbd_dc_predictor_4x4_sse2(uint16_t* dst,
3900 ptrdiff_t stride,
3901 const uint16_t* above,
3902 const uint16_t* left,
3903 int bd);
3904 #define vpx_highbd_dc_predictor_4x4 vpx_highbd_dc_predictor_4x4_sse2
3905
3906 void vpx_highbd_dc_predictor_8x8_c(uint16_t* dst,
3907 ptrdiff_t stride,
3908 const uint16_t* above,
3909 const uint16_t* left,
3910 int bd);
3911 void vpx_highbd_dc_predictor_8x8_sse2(uint16_t* dst,
3912 ptrdiff_t stride,
3913 const uint16_t* above,
3914 const uint16_t* left,
3915 int bd);
3916 #define vpx_highbd_dc_predictor_8x8 vpx_highbd_dc_predictor_8x8_sse2
3917
3918 void vpx_highbd_dc_top_predictor_16x16_c(uint16_t* dst,
3919 ptrdiff_t stride,
3920 const uint16_t* above,
3921 const uint16_t* left,
3922 int bd);
3923 void vpx_highbd_dc_top_predictor_16x16_sse2(uint16_t* dst,
3924 ptrdiff_t stride,
3925 const uint16_t* above,
3926 const uint16_t* left,
3927 int bd);
3928 #define vpx_highbd_dc_top_predictor_16x16 vpx_highbd_dc_top_predictor_16x16_sse2
3929
3930 void vpx_highbd_dc_top_predictor_32x32_c(uint16_t* dst,
3931 ptrdiff_t stride,
3932 const uint16_t* above,
3933 const uint16_t* left,
3934 int bd);
3935 void vpx_highbd_dc_top_predictor_32x32_sse2(uint16_t* dst,
3936 ptrdiff_t stride,
3937 const uint16_t* above,
3938 const uint16_t* left,
3939 int bd);
3940 #define vpx_highbd_dc_top_predictor_32x32 vpx_highbd_dc_top_predictor_32x32_sse2
3941
3942 void vpx_highbd_dc_top_predictor_4x4_c(uint16_t* dst,
3943 ptrdiff_t stride,
3944 const uint16_t* above,
3945 const uint16_t* left,
3946 int bd);
3947 void vpx_highbd_dc_top_predictor_4x4_sse2(uint16_t* dst,
3948 ptrdiff_t stride,
3949 const uint16_t* above,
3950 const uint16_t* left,
3951 int bd);
3952 #define vpx_highbd_dc_top_predictor_4x4 vpx_highbd_dc_top_predictor_4x4_sse2
3953
3954 void vpx_highbd_dc_top_predictor_8x8_c(uint16_t* dst,
3955 ptrdiff_t stride,
3956 const uint16_t* above,
3957 const uint16_t* left,
3958 int bd);
3959 void vpx_highbd_dc_top_predictor_8x8_sse2(uint16_t* dst,
3960 ptrdiff_t stride,
3961 const uint16_t* above,
3962 const uint16_t* left,
3963 int bd);
3964 #define vpx_highbd_dc_top_predictor_8x8 vpx_highbd_dc_top_predictor_8x8_sse2
3965
3966 void vpx_highbd_fdct16x16_c(const int16_t* input,
3967 tran_low_t* output,
3968 int stride);
3969 void vpx_highbd_fdct16x16_sse2(const int16_t* input,
3970 tran_low_t* output,
3971 int stride);
3972 #define vpx_highbd_fdct16x16 vpx_highbd_fdct16x16_sse2
3973
3974 void vpx_highbd_fdct16x16_1_c(const int16_t* input,
3975 tran_low_t* output,
3976 int stride);
3977 #define vpx_highbd_fdct16x16_1 vpx_highbd_fdct16x16_1_c
3978
3979 void vpx_highbd_fdct32x32_c(const int16_t* input,
3980 tran_low_t* output,
3981 int stride);
3982 void vpx_highbd_fdct32x32_sse2(const int16_t* input,
3983 tran_low_t* output,
3984 int stride);
3985 #define vpx_highbd_fdct32x32 vpx_highbd_fdct32x32_sse2
3986
3987 void vpx_highbd_fdct32x32_1_c(const int16_t* input,
3988 tran_low_t* output,
3989 int stride);
3990 #define vpx_highbd_fdct32x32_1 vpx_highbd_fdct32x32_1_c
3991
3992 void vpx_highbd_fdct32x32_rd_c(const int16_t* input,
3993 tran_low_t* output,
3994 int stride);
3995 void vpx_highbd_fdct32x32_rd_sse2(const int16_t* input,
3996 tran_low_t* output,
3997 int stride);
3998 #define vpx_highbd_fdct32x32_rd vpx_highbd_fdct32x32_rd_sse2
3999
4000 void vpx_highbd_fdct4x4_c(const int16_t* input, tran_low_t* output, int stride);
4001 void vpx_highbd_fdct4x4_sse2(const int16_t* input,
4002 tran_low_t* output,
4003 int stride);
4004 #define vpx_highbd_fdct4x4 vpx_highbd_fdct4x4_sse2
4005
4006 void vpx_highbd_fdct8x8_c(const int16_t* input, tran_low_t* output, int stride);
4007 void vpx_highbd_fdct8x8_sse2(const int16_t* input,
4008 tran_low_t* output,
4009 int stride);
4010 #define vpx_highbd_fdct8x8 vpx_highbd_fdct8x8_sse2
4011
4012 void vpx_highbd_fdct8x8_1_c(const int16_t* input,
4013 tran_low_t* output,
4014 int stride);
4015 #define vpx_highbd_fdct8x8_1 vpx_highbd_fdct8x8_1_c
4016
4017 void vpx_highbd_h_predictor_16x16_c(uint16_t* dst,
4018 ptrdiff_t stride,
4019 const uint16_t* above,
4020 const uint16_t* left,
4021 int bd);
4022 void vpx_highbd_h_predictor_16x16_sse2(uint16_t* dst,
4023 ptrdiff_t stride,
4024 const uint16_t* above,
4025 const uint16_t* left,
4026 int bd);
4027 #define vpx_highbd_h_predictor_16x16 vpx_highbd_h_predictor_16x16_sse2
4028
4029 void vpx_highbd_h_predictor_32x32_c(uint16_t* dst,
4030 ptrdiff_t stride,
4031 const uint16_t* above,
4032 const uint16_t* left,
4033 int bd);
4034 void vpx_highbd_h_predictor_32x32_sse2(uint16_t* dst,
4035 ptrdiff_t stride,
4036 const uint16_t* above,
4037 const uint16_t* left,
4038 int bd);
4039 #define vpx_highbd_h_predictor_32x32 vpx_highbd_h_predictor_32x32_sse2
4040
4041 void vpx_highbd_h_predictor_4x4_c(uint16_t* dst,
4042 ptrdiff_t stride,
4043 const uint16_t* above,
4044 const uint16_t* left,
4045 int bd);
4046 void vpx_highbd_h_predictor_4x4_sse2(uint16_t* dst,
4047 ptrdiff_t stride,
4048 const uint16_t* above,
4049 const uint16_t* left,
4050 int bd);
4051 #define vpx_highbd_h_predictor_4x4 vpx_highbd_h_predictor_4x4_sse2
4052
4053 void vpx_highbd_h_predictor_8x8_c(uint16_t* dst,
4054 ptrdiff_t stride,
4055 const uint16_t* above,
4056 const uint16_t* left,
4057 int bd);
4058 void vpx_highbd_h_predictor_8x8_sse2(uint16_t* dst,
4059 ptrdiff_t stride,
4060 const uint16_t* above,
4061 const uint16_t* left,
4062 int bd);
4063 #define vpx_highbd_h_predictor_8x8 vpx_highbd_h_predictor_8x8_sse2
4064
4065 void vpx_highbd_hadamard_16x16_c(const int16_t* src_diff,
4066 ptrdiff_t src_stride,
4067 tran_low_t* coeff);
4068 void vpx_highbd_hadamard_16x16_avx2(const int16_t* src_diff,
4069 ptrdiff_t src_stride,
4070 tran_low_t* coeff);
4071 RTCD_EXTERN void (*vpx_highbd_hadamard_16x16)(const int16_t* src_diff,
4072 ptrdiff_t src_stride,
4073 tran_low_t* coeff);
4074
4075 void vpx_highbd_hadamard_32x32_c(const int16_t* src_diff,
4076 ptrdiff_t src_stride,
4077 tran_low_t* coeff);
4078 void vpx_highbd_hadamard_32x32_avx2(const int16_t* src_diff,
4079 ptrdiff_t src_stride,
4080 tran_low_t* coeff);
4081 RTCD_EXTERN void (*vpx_highbd_hadamard_32x32)(const int16_t* src_diff,
4082 ptrdiff_t src_stride,
4083 tran_low_t* coeff);
4084
4085 void vpx_highbd_hadamard_8x8_c(const int16_t* src_diff,
4086 ptrdiff_t src_stride,
4087 tran_low_t* coeff);
4088 void vpx_highbd_hadamard_8x8_avx2(const int16_t* src_diff,
4089 ptrdiff_t src_stride,
4090 tran_low_t* coeff);
4091 RTCD_EXTERN void (*vpx_highbd_hadamard_8x8)(const int16_t* src_diff,
4092 ptrdiff_t src_stride,
4093 tran_low_t* coeff);
4094
4095 void vpx_highbd_idct16x16_10_add_c(const tran_low_t* input,
4096 uint16_t* dest,
4097 int stride,
4098 int bd);
4099 void vpx_highbd_idct16x16_10_add_sse2(const tran_low_t* input,
4100 uint16_t* dest,
4101 int stride,
4102 int bd);
4103 void vpx_highbd_idct16x16_10_add_sse4_1(const tran_low_t* input,
4104 uint16_t* dest,
4105 int stride,
4106 int bd);
4107 RTCD_EXTERN void (*vpx_highbd_idct16x16_10_add)(const tran_low_t* input,
4108 uint16_t* dest,
4109 int stride,
4110 int bd);
4111
4112 void vpx_highbd_idct16x16_1_add_c(const tran_low_t* input,
4113 uint16_t* dest,
4114 int stride,
4115 int bd);
4116 void vpx_highbd_idct16x16_1_add_sse2(const tran_low_t* input,
4117 uint16_t* dest,
4118 int stride,
4119 int bd);
4120 #define vpx_highbd_idct16x16_1_add vpx_highbd_idct16x16_1_add_sse2
4121
4122 void vpx_highbd_idct16x16_256_add_c(const tran_low_t* input,
4123 uint16_t* dest,
4124 int stride,
4125 int bd);
4126 void vpx_highbd_idct16x16_256_add_sse2(const tran_low_t* input,
4127 uint16_t* dest,
4128 int stride,
4129 int bd);
4130 void vpx_highbd_idct16x16_256_add_sse4_1(const tran_low_t* input,
4131 uint16_t* dest,
4132 int stride,
4133 int bd);
4134 RTCD_EXTERN void (*vpx_highbd_idct16x16_256_add)(const tran_low_t* input,
4135 uint16_t* dest,
4136 int stride,
4137 int bd);
4138
4139 void vpx_highbd_idct16x16_38_add_c(const tran_low_t* input,
4140 uint16_t* dest,
4141 int stride,
4142 int bd);
4143 void vpx_highbd_idct16x16_38_add_sse2(const tran_low_t* input,
4144 uint16_t* dest,
4145 int stride,
4146 int bd);
4147 void vpx_highbd_idct16x16_38_add_sse4_1(const tran_low_t* input,
4148 uint16_t* dest,
4149 int stride,
4150 int bd);
4151 RTCD_EXTERN void (*vpx_highbd_idct16x16_38_add)(const tran_low_t* input,
4152 uint16_t* dest,
4153 int stride,
4154 int bd);
4155
4156 void vpx_highbd_idct32x32_1024_add_c(const tran_low_t* input,
4157 uint16_t* dest,
4158 int stride,
4159 int bd);
4160 void vpx_highbd_idct32x32_1024_add_sse2(const tran_low_t* input,
4161 uint16_t* dest,
4162 int stride,
4163 int bd);
4164 void vpx_highbd_idct32x32_1024_add_sse4_1(const tran_low_t* input,
4165 uint16_t* dest,
4166 int stride,
4167 int bd);
4168 RTCD_EXTERN void (*vpx_highbd_idct32x32_1024_add)(const tran_low_t* input,
4169 uint16_t* dest,
4170 int stride,
4171 int bd);
4172
4173 void vpx_highbd_idct32x32_135_add_c(const tran_low_t* input,
4174 uint16_t* dest,
4175 int stride,
4176 int bd);
4177 void vpx_highbd_idct32x32_135_add_sse2(const tran_low_t* input,
4178 uint16_t* dest,
4179 int stride,
4180 int bd);
4181 void vpx_highbd_idct32x32_135_add_sse4_1(const tran_low_t* input,
4182 uint16_t* dest,
4183 int stride,
4184 int bd);
4185 RTCD_EXTERN void (*vpx_highbd_idct32x32_135_add)(const tran_low_t* input,
4186 uint16_t* dest,
4187 int stride,
4188 int bd);
4189
4190 void vpx_highbd_idct32x32_1_add_c(const tran_low_t* input,
4191 uint16_t* dest,
4192 int stride,
4193 int bd);
4194 void vpx_highbd_idct32x32_1_add_sse2(const tran_low_t* input,
4195 uint16_t* dest,
4196 int stride,
4197 int bd);
4198 #define vpx_highbd_idct32x32_1_add vpx_highbd_idct32x32_1_add_sse2
4199
4200 void vpx_highbd_idct32x32_34_add_c(const tran_low_t* input,
4201 uint16_t* dest,
4202 int stride,
4203 int bd);
4204 void vpx_highbd_idct32x32_34_add_sse2(const tran_low_t* input,
4205 uint16_t* dest,
4206 int stride,
4207 int bd);
4208 void vpx_highbd_idct32x32_34_add_sse4_1(const tran_low_t* input,
4209 uint16_t* dest,
4210 int stride,
4211 int bd);
4212 RTCD_EXTERN void (*vpx_highbd_idct32x32_34_add)(const tran_low_t* input,
4213 uint16_t* dest,
4214 int stride,
4215 int bd);
4216
4217 void vpx_highbd_idct4x4_16_add_c(const tran_low_t* input,
4218 uint16_t* dest,
4219 int stride,
4220 int bd);
4221 void vpx_highbd_idct4x4_16_add_sse2(const tran_low_t* input,
4222 uint16_t* dest,
4223 int stride,
4224 int bd);
4225 void vpx_highbd_idct4x4_16_add_sse4_1(const tran_low_t* input,
4226 uint16_t* dest,
4227 int stride,
4228 int bd);
4229 RTCD_EXTERN void (*vpx_highbd_idct4x4_16_add)(const tran_low_t* input,
4230 uint16_t* dest,
4231 int stride,
4232 int bd);
4233
4234 void vpx_highbd_idct4x4_1_add_c(const tran_low_t* input,
4235 uint16_t* dest,
4236 int stride,
4237 int bd);
4238 void vpx_highbd_idct4x4_1_add_sse2(const tran_low_t* input,
4239 uint16_t* dest,
4240 int stride,
4241 int bd);
4242 #define vpx_highbd_idct4x4_1_add vpx_highbd_idct4x4_1_add_sse2
4243
4244 void vpx_highbd_idct8x8_12_add_c(const tran_low_t* input,
4245 uint16_t* dest,
4246 int stride,
4247 int bd);
4248 void vpx_highbd_idct8x8_12_add_sse2(const tran_low_t* input,
4249 uint16_t* dest,
4250 int stride,
4251 int bd);
4252 void vpx_highbd_idct8x8_12_add_sse4_1(const tran_low_t* input,
4253 uint16_t* dest,
4254 int stride,
4255 int bd);
4256 RTCD_EXTERN void (*vpx_highbd_idct8x8_12_add)(const tran_low_t* input,
4257 uint16_t* dest,
4258 int stride,
4259 int bd);
4260
4261 void vpx_highbd_idct8x8_1_add_c(const tran_low_t* input,
4262 uint16_t* dest,
4263 int stride,
4264 int bd);
4265 void vpx_highbd_idct8x8_1_add_sse2(const tran_low_t* input,
4266 uint16_t* dest,
4267 int stride,
4268 int bd);
4269 #define vpx_highbd_idct8x8_1_add vpx_highbd_idct8x8_1_add_sse2
4270
4271 void vpx_highbd_idct8x8_64_add_c(const tran_low_t* input,
4272 uint16_t* dest,
4273 int stride,
4274 int bd);
4275 void vpx_highbd_idct8x8_64_add_sse2(const tran_low_t* input,
4276 uint16_t* dest,
4277 int stride,
4278 int bd);
4279 void vpx_highbd_idct8x8_64_add_sse4_1(const tran_low_t* input,
4280 uint16_t* dest,
4281 int stride,
4282 int bd);
4283 RTCD_EXTERN void (*vpx_highbd_idct8x8_64_add)(const tran_low_t* input,
4284 uint16_t* dest,
4285 int stride,
4286 int bd);
4287
4288 void vpx_highbd_iwht4x4_16_add_c(const tran_low_t* input,
4289 uint16_t* dest,
4290 int stride,
4291 int bd);
4292 #define vpx_highbd_iwht4x4_16_add vpx_highbd_iwht4x4_16_add_c
4293
4294 void vpx_highbd_iwht4x4_1_add_c(const tran_low_t* input,
4295 uint16_t* dest,
4296 int stride,
4297 int bd);
4298 #define vpx_highbd_iwht4x4_1_add vpx_highbd_iwht4x4_1_add_c
4299
4300 void vpx_highbd_lpf_horizontal_16_c(uint16_t* s,
4301 int pitch,
4302 const uint8_t* blimit,
4303 const uint8_t* limit,
4304 const uint8_t* thresh,
4305 int bd);
4306 void vpx_highbd_lpf_horizontal_16_sse2(uint16_t* s,
4307 int pitch,
4308 const uint8_t* blimit,
4309 const uint8_t* limit,
4310 const uint8_t* thresh,
4311 int bd);
4312 #define vpx_highbd_lpf_horizontal_16 vpx_highbd_lpf_horizontal_16_sse2
4313
4314 void vpx_highbd_lpf_horizontal_16_dual_c(uint16_t* s,
4315 int pitch,
4316 const uint8_t* blimit,
4317 const uint8_t* limit,
4318 const uint8_t* thresh,
4319 int bd);
4320 void vpx_highbd_lpf_horizontal_16_dual_sse2(uint16_t* s,
4321 int pitch,
4322 const uint8_t* blimit,
4323 const uint8_t* limit,
4324 const uint8_t* thresh,
4325 int bd);
4326 #define vpx_highbd_lpf_horizontal_16_dual vpx_highbd_lpf_horizontal_16_dual_sse2
4327
4328 void vpx_highbd_lpf_horizontal_4_c(uint16_t* s,
4329 int pitch,
4330 const uint8_t* blimit,
4331 const uint8_t* limit,
4332 const uint8_t* thresh,
4333 int bd);
4334 void vpx_highbd_lpf_horizontal_4_sse2(uint16_t* s,
4335 int pitch,
4336 const uint8_t* blimit,
4337 const uint8_t* limit,
4338 const uint8_t* thresh,
4339 int bd);
4340 #define vpx_highbd_lpf_horizontal_4 vpx_highbd_lpf_horizontal_4_sse2
4341
4342 void vpx_highbd_lpf_horizontal_4_dual_c(uint16_t* s,
4343 int pitch,
4344 const uint8_t* blimit0,
4345 const uint8_t* limit0,
4346 const uint8_t* thresh0,
4347 const uint8_t* blimit1,
4348 const uint8_t* limit1,
4349 const uint8_t* thresh1,
4350 int bd);
4351 void vpx_highbd_lpf_horizontal_4_dual_sse2(uint16_t* s,
4352 int pitch,
4353 const uint8_t* blimit0,
4354 const uint8_t* limit0,
4355 const uint8_t* thresh0,
4356 const uint8_t* blimit1,
4357 const uint8_t* limit1,
4358 const uint8_t* thresh1,
4359 int bd);
4360 #define vpx_highbd_lpf_horizontal_4_dual vpx_highbd_lpf_horizontal_4_dual_sse2
4361
4362 void vpx_highbd_lpf_horizontal_8_c(uint16_t* s,
4363 int pitch,
4364 const uint8_t* blimit,
4365 const uint8_t* limit,
4366 const uint8_t* thresh,
4367 int bd);
4368 void vpx_highbd_lpf_horizontal_8_sse2(uint16_t* s,
4369 int pitch,
4370 const uint8_t* blimit,
4371 const uint8_t* limit,
4372 const uint8_t* thresh,
4373 int bd);
4374 #define vpx_highbd_lpf_horizontal_8 vpx_highbd_lpf_horizontal_8_sse2
4375
4376 void vpx_highbd_lpf_horizontal_8_dual_c(uint16_t* s,
4377 int pitch,
4378 const uint8_t* blimit0,
4379 const uint8_t* limit0,
4380 const uint8_t* thresh0,
4381 const uint8_t* blimit1,
4382 const uint8_t* limit1,
4383 const uint8_t* thresh1,
4384 int bd);
4385 void vpx_highbd_lpf_horizontal_8_dual_sse2(uint16_t* s,
4386 int pitch,
4387 const uint8_t* blimit0,
4388 const uint8_t* limit0,
4389 const uint8_t* thresh0,
4390 const uint8_t* blimit1,
4391 const uint8_t* limit1,
4392 const uint8_t* thresh1,
4393 int bd);
4394 #define vpx_highbd_lpf_horizontal_8_dual vpx_highbd_lpf_horizontal_8_dual_sse2
4395
4396 void vpx_highbd_lpf_vertical_16_c(uint16_t* s,
4397 int pitch,
4398 const uint8_t* blimit,
4399 const uint8_t* limit,
4400 const uint8_t* thresh,
4401 int bd);
4402 void vpx_highbd_lpf_vertical_16_sse2(uint16_t* s,
4403 int pitch,
4404 const uint8_t* blimit,
4405 const uint8_t* limit,
4406 const uint8_t* thresh,
4407 int bd);
4408 #define vpx_highbd_lpf_vertical_16 vpx_highbd_lpf_vertical_16_sse2
4409
4410 void vpx_highbd_lpf_vertical_16_dual_c(uint16_t* s,
4411 int pitch,
4412 const uint8_t* blimit,
4413 const uint8_t* limit,
4414 const uint8_t* thresh,
4415 int bd);
4416 void vpx_highbd_lpf_vertical_16_dual_sse2(uint16_t* s,
4417 int pitch,
4418 const uint8_t* blimit,
4419 const uint8_t* limit,
4420 const uint8_t* thresh,
4421 int bd);
4422 #define vpx_highbd_lpf_vertical_16_dual vpx_highbd_lpf_vertical_16_dual_sse2
4423
4424 void vpx_highbd_lpf_vertical_4_c(uint16_t* s,
4425 int pitch,
4426 const uint8_t* blimit,
4427 const uint8_t* limit,
4428 const uint8_t* thresh,
4429 int bd);
4430 void vpx_highbd_lpf_vertical_4_sse2(uint16_t* s,
4431 int pitch,
4432 const uint8_t* blimit,
4433 const uint8_t* limit,
4434 const uint8_t* thresh,
4435 int bd);
4436 #define vpx_highbd_lpf_vertical_4 vpx_highbd_lpf_vertical_4_sse2
4437
4438 void vpx_highbd_lpf_vertical_4_dual_c(uint16_t* s,
4439 int pitch,
4440 const uint8_t* blimit0,
4441 const uint8_t* limit0,
4442 const uint8_t* thresh0,
4443 const uint8_t* blimit1,
4444 const uint8_t* limit1,
4445 const uint8_t* thresh1,
4446 int bd);
4447 void vpx_highbd_lpf_vertical_4_dual_sse2(uint16_t* s,
4448 int pitch,
4449 const uint8_t* blimit0,
4450 const uint8_t* limit0,
4451 const uint8_t* thresh0,
4452 const uint8_t* blimit1,
4453 const uint8_t* limit1,
4454 const uint8_t* thresh1,
4455 int bd);
4456 #define vpx_highbd_lpf_vertical_4_dual vpx_highbd_lpf_vertical_4_dual_sse2
4457
4458 void vpx_highbd_lpf_vertical_8_c(uint16_t* s,
4459 int pitch,
4460 const uint8_t* blimit,
4461 const uint8_t* limit,
4462 const uint8_t* thresh,
4463 int bd);
4464 void vpx_highbd_lpf_vertical_8_sse2(uint16_t* s,
4465 int pitch,
4466 const uint8_t* blimit,
4467 const uint8_t* limit,
4468 const uint8_t* thresh,
4469 int bd);
4470 #define vpx_highbd_lpf_vertical_8 vpx_highbd_lpf_vertical_8_sse2
4471
4472 void vpx_highbd_lpf_vertical_8_dual_c(uint16_t* s,
4473 int pitch,
4474 const uint8_t* blimit0,
4475 const uint8_t* limit0,
4476 const uint8_t* thresh0,
4477 const uint8_t* blimit1,
4478 const uint8_t* limit1,
4479 const uint8_t* thresh1,
4480 int bd);
4481 void vpx_highbd_lpf_vertical_8_dual_sse2(uint16_t* s,
4482 int pitch,
4483 const uint8_t* blimit0,
4484 const uint8_t* limit0,
4485 const uint8_t* thresh0,
4486 const uint8_t* blimit1,
4487 const uint8_t* limit1,
4488 const uint8_t* thresh1,
4489 int bd);
4490 #define vpx_highbd_lpf_vertical_8_dual vpx_highbd_lpf_vertical_8_dual_sse2
4491
4492 void vpx_highbd_minmax_8x8_c(const uint8_t* s8,
4493 int p,
4494 const uint8_t* d8,
4495 int dp,
4496 int* min,
4497 int* max);
4498 #define vpx_highbd_minmax_8x8 vpx_highbd_minmax_8x8_c
4499
4500 void vpx_highbd_quantize_b_c(const tran_low_t* coeff_ptr,
4501 intptr_t n_coeffs,
4502 int skip_block,
4503 const int16_t* zbin_ptr,
4504 const int16_t* round_ptr,
4505 const int16_t* quant_ptr,
4506 const int16_t* quant_shift_ptr,
4507 tran_low_t* qcoeff_ptr,
4508 tran_low_t* dqcoeff_ptr,
4509 const int16_t* dequant_ptr,
4510 uint16_t* eob_ptr,
4511 const int16_t* scan,
4512 const int16_t* iscan);
4513 void vpx_highbd_quantize_b_sse2(const tran_low_t* coeff_ptr,
4514 intptr_t n_coeffs,
4515 int skip_block,
4516 const int16_t* zbin_ptr,
4517 const int16_t* round_ptr,
4518 const int16_t* quant_ptr,
4519 const int16_t* quant_shift_ptr,
4520 tran_low_t* qcoeff_ptr,
4521 tran_low_t* dqcoeff_ptr,
4522 const int16_t* dequant_ptr,
4523 uint16_t* eob_ptr,
4524 const int16_t* scan,
4525 const int16_t* iscan);
4526 #define vpx_highbd_quantize_b vpx_highbd_quantize_b_sse2
4527
4528 void vpx_highbd_quantize_b_32x32_c(const tran_low_t* coeff_ptr,
4529 intptr_t n_coeffs,
4530 int skip_block,
4531 const int16_t* zbin_ptr,
4532 const int16_t* round_ptr,
4533 const int16_t* quant_ptr,
4534 const int16_t* quant_shift_ptr,
4535 tran_low_t* qcoeff_ptr,
4536 tran_low_t* dqcoeff_ptr,
4537 const int16_t* dequant_ptr,
4538 uint16_t* eob_ptr,
4539 const int16_t* scan,
4540 const int16_t* iscan);
4541 void vpx_highbd_quantize_b_32x32_sse2(const tran_low_t* coeff_ptr,
4542 intptr_t n_coeffs,
4543 int skip_block,
4544 const int16_t* zbin_ptr,
4545 const int16_t* round_ptr,
4546 const int16_t* quant_ptr,
4547 const int16_t* quant_shift_ptr,
4548 tran_low_t* qcoeff_ptr,
4549 tran_low_t* dqcoeff_ptr,
4550 const int16_t* dequant_ptr,
4551 uint16_t* eob_ptr,
4552 const int16_t* scan,
4553 const int16_t* iscan);
4554 #define vpx_highbd_quantize_b_32x32 vpx_highbd_quantize_b_32x32_sse2
4555
4556 unsigned int vpx_highbd_sad16x16_c(const uint8_t* src_ptr,
4557 int src_stride,
4558 const uint8_t* ref_ptr,
4559 int ref_stride);
4560 unsigned int vpx_highbd_sad16x16_sse2(const uint8_t* src_ptr,
4561 int src_stride,
4562 const uint8_t* ref_ptr,
4563 int ref_stride);
4564 #define vpx_highbd_sad16x16 vpx_highbd_sad16x16_sse2
4565
4566 unsigned int vpx_highbd_sad16x16_avg_c(const uint8_t* src_ptr,
4567 int src_stride,
4568 const uint8_t* ref_ptr,
4569 int ref_stride,
4570 const uint8_t* second_pred);
4571 unsigned int vpx_highbd_sad16x16_avg_sse2(const uint8_t* src_ptr,
4572 int src_stride,
4573 const uint8_t* ref_ptr,
4574 int ref_stride,
4575 const uint8_t* second_pred);
4576 #define vpx_highbd_sad16x16_avg vpx_highbd_sad16x16_avg_sse2
4577
4578 void vpx_highbd_sad16x16x4d_c(const uint8_t* src_ptr,
4579 int src_stride,
4580 const uint8_t* const ref_array[],
4581 int ref_stride,
4582 uint32_t* sad_array);
4583 void vpx_highbd_sad16x16x4d_sse2(const uint8_t* src_ptr,
4584 int src_stride,
4585 const uint8_t* const ref_array[],
4586 int ref_stride,
4587 uint32_t* sad_array);
4588 #define vpx_highbd_sad16x16x4d vpx_highbd_sad16x16x4d_sse2
4589
4590 unsigned int vpx_highbd_sad16x32_c(const uint8_t* src_ptr,
4591 int src_stride,
4592 const uint8_t* ref_ptr,
4593 int ref_stride);
4594 unsigned int vpx_highbd_sad16x32_sse2(const uint8_t* src_ptr,
4595 int src_stride,
4596 const uint8_t* ref_ptr,
4597 int ref_stride);
4598 #define vpx_highbd_sad16x32 vpx_highbd_sad16x32_sse2
4599
4600 unsigned int vpx_highbd_sad16x32_avg_c(const uint8_t* src_ptr,
4601 int src_stride,
4602 const uint8_t* ref_ptr,
4603 int ref_stride,
4604 const uint8_t* second_pred);
4605 unsigned int vpx_highbd_sad16x32_avg_sse2(const uint8_t* src_ptr,
4606 int src_stride,
4607 const uint8_t* ref_ptr,
4608 int ref_stride,
4609 const uint8_t* second_pred);
4610 #define vpx_highbd_sad16x32_avg vpx_highbd_sad16x32_avg_sse2
4611
4612 void vpx_highbd_sad16x32x4d_c(const uint8_t* src_ptr,
4613 int src_stride,
4614 const uint8_t* const ref_array[],
4615 int ref_stride,
4616 uint32_t* sad_array);
4617 void vpx_highbd_sad16x32x4d_sse2(const uint8_t* src_ptr,
4618 int src_stride,
4619 const uint8_t* const ref_array[],
4620 int ref_stride,
4621 uint32_t* sad_array);
4622 #define vpx_highbd_sad16x32x4d vpx_highbd_sad16x32x4d_sse2
4623
4624 unsigned int vpx_highbd_sad16x8_c(const uint8_t* src_ptr,
4625 int src_stride,
4626 const uint8_t* ref_ptr,
4627 int ref_stride);
4628 unsigned int vpx_highbd_sad16x8_sse2(const uint8_t* src_ptr,
4629 int src_stride,
4630 const uint8_t* ref_ptr,
4631 int ref_stride);
4632 #define vpx_highbd_sad16x8 vpx_highbd_sad16x8_sse2
4633
4634 unsigned int vpx_highbd_sad16x8_avg_c(const uint8_t* src_ptr,
4635 int src_stride,
4636 const uint8_t* ref_ptr,
4637 int ref_stride,
4638 const uint8_t* second_pred);
4639 unsigned int vpx_highbd_sad16x8_avg_sse2(const uint8_t* src_ptr,
4640 int src_stride,
4641 const uint8_t* ref_ptr,
4642 int ref_stride,
4643 const uint8_t* second_pred);
4644 #define vpx_highbd_sad16x8_avg vpx_highbd_sad16x8_avg_sse2
4645
4646 void vpx_highbd_sad16x8x4d_c(const uint8_t* src_ptr,
4647 int src_stride,
4648 const uint8_t* const ref_array[],
4649 int ref_stride,
4650 uint32_t* sad_array);
4651 void vpx_highbd_sad16x8x4d_sse2(const uint8_t* src_ptr,
4652 int src_stride,
4653 const uint8_t* const ref_array[],
4654 int ref_stride,
4655 uint32_t* sad_array);
4656 #define vpx_highbd_sad16x8x4d vpx_highbd_sad16x8x4d_sse2
4657
4658 unsigned int vpx_highbd_sad32x16_c(const uint8_t* src_ptr,
4659 int src_stride,
4660 const uint8_t* ref_ptr,
4661 int ref_stride);
4662 unsigned int vpx_highbd_sad32x16_sse2(const uint8_t* src_ptr,
4663 int src_stride,
4664 const uint8_t* ref_ptr,
4665 int ref_stride);
4666 #define vpx_highbd_sad32x16 vpx_highbd_sad32x16_sse2
4667
4668 unsigned int vpx_highbd_sad32x16_avg_c(const uint8_t* src_ptr,
4669 int src_stride,
4670 const uint8_t* ref_ptr,
4671 int ref_stride,
4672 const uint8_t* second_pred);
4673 unsigned int vpx_highbd_sad32x16_avg_sse2(const uint8_t* src_ptr,
4674 int src_stride,
4675 const uint8_t* ref_ptr,
4676 int ref_stride,
4677 const uint8_t* second_pred);
4678 #define vpx_highbd_sad32x16_avg vpx_highbd_sad32x16_avg_sse2
4679
4680 void vpx_highbd_sad32x16x4d_c(const uint8_t* src_ptr,
4681 int src_stride,
4682 const uint8_t* const ref_array[],
4683 int ref_stride,
4684 uint32_t* sad_array);
4685 void vpx_highbd_sad32x16x4d_sse2(const uint8_t* src_ptr,
4686 int src_stride,
4687 const uint8_t* const ref_array[],
4688 int ref_stride,
4689 uint32_t* sad_array);
4690 #define vpx_highbd_sad32x16x4d vpx_highbd_sad32x16x4d_sse2
4691
4692 unsigned int vpx_highbd_sad32x32_c(const uint8_t* src_ptr,
4693 int src_stride,
4694 const uint8_t* ref_ptr,
4695 int ref_stride);
4696 unsigned int vpx_highbd_sad32x32_sse2(const uint8_t* src_ptr,
4697 int src_stride,
4698 const uint8_t* ref_ptr,
4699 int ref_stride);
4700 #define vpx_highbd_sad32x32 vpx_highbd_sad32x32_sse2
4701
4702 unsigned int vpx_highbd_sad32x32_avg_c(const uint8_t* src_ptr,
4703 int src_stride,
4704 const uint8_t* ref_ptr,
4705 int ref_stride,
4706 const uint8_t* second_pred);
4707 unsigned int vpx_highbd_sad32x32_avg_sse2(const uint8_t* src_ptr,
4708 int src_stride,
4709 const uint8_t* ref_ptr,
4710 int ref_stride,
4711 const uint8_t* second_pred);
4712 #define vpx_highbd_sad32x32_avg vpx_highbd_sad32x32_avg_sse2
4713
4714 void vpx_highbd_sad32x32x4d_c(const uint8_t* src_ptr,
4715 int src_stride,
4716 const uint8_t* const ref_array[],
4717 int ref_stride,
4718 uint32_t* sad_array);
4719 void vpx_highbd_sad32x32x4d_sse2(const uint8_t* src_ptr,
4720 int src_stride,
4721 const uint8_t* const ref_array[],
4722 int ref_stride,
4723 uint32_t* sad_array);
4724 #define vpx_highbd_sad32x32x4d vpx_highbd_sad32x32x4d_sse2
4725
4726 unsigned int vpx_highbd_sad32x64_c(const uint8_t* src_ptr,
4727 int src_stride,
4728 const uint8_t* ref_ptr,
4729 int ref_stride);
4730 unsigned int vpx_highbd_sad32x64_sse2(const uint8_t* src_ptr,
4731 int src_stride,
4732 const uint8_t* ref_ptr,
4733 int ref_stride);
4734 #define vpx_highbd_sad32x64 vpx_highbd_sad32x64_sse2
4735
4736 unsigned int vpx_highbd_sad32x64_avg_c(const uint8_t* src_ptr,
4737 int src_stride,
4738 const uint8_t* ref_ptr,
4739 int ref_stride,
4740 const uint8_t* second_pred);
4741 unsigned int vpx_highbd_sad32x64_avg_sse2(const uint8_t* src_ptr,
4742 int src_stride,
4743 const uint8_t* ref_ptr,
4744 int ref_stride,
4745 const uint8_t* second_pred);
4746 #define vpx_highbd_sad32x64_avg vpx_highbd_sad32x64_avg_sse2
4747
4748 void vpx_highbd_sad32x64x4d_c(const uint8_t* src_ptr,
4749 int src_stride,
4750 const uint8_t* const ref_array[],
4751 int ref_stride,
4752 uint32_t* sad_array);
4753 void vpx_highbd_sad32x64x4d_sse2(const uint8_t* src_ptr,
4754 int src_stride,
4755 const uint8_t* const ref_array[],
4756 int ref_stride,
4757 uint32_t* sad_array);
4758 #define vpx_highbd_sad32x64x4d vpx_highbd_sad32x64x4d_sse2
4759
4760 unsigned int vpx_highbd_sad4x4_c(const uint8_t* src_ptr,
4761 int src_stride,
4762 const uint8_t* ref_ptr,
4763 int ref_stride);
4764 #define vpx_highbd_sad4x4 vpx_highbd_sad4x4_c
4765
4766 unsigned int vpx_highbd_sad4x4_avg_c(const uint8_t* src_ptr,
4767 int src_stride,
4768 const uint8_t* ref_ptr,
4769 int ref_stride,
4770 const uint8_t* second_pred);
4771 #define vpx_highbd_sad4x4_avg vpx_highbd_sad4x4_avg_c
4772
4773 void vpx_highbd_sad4x4x4d_c(const uint8_t* src_ptr,
4774 int src_stride,
4775 const uint8_t* const ref_array[],
4776 int ref_stride,
4777 uint32_t* sad_array);
4778 void vpx_highbd_sad4x4x4d_sse2(const uint8_t* src_ptr,
4779 int src_stride,
4780 const uint8_t* const ref_array[],
4781 int ref_stride,
4782 uint32_t* sad_array);
4783 #define vpx_highbd_sad4x4x4d vpx_highbd_sad4x4x4d_sse2
4784
4785 unsigned int vpx_highbd_sad4x8_c(const uint8_t* src_ptr,
4786 int src_stride,
4787 const uint8_t* ref_ptr,
4788 int ref_stride);
4789 #define vpx_highbd_sad4x8 vpx_highbd_sad4x8_c
4790
4791 unsigned int vpx_highbd_sad4x8_avg_c(const uint8_t* src_ptr,
4792 int src_stride,
4793 const uint8_t* ref_ptr,
4794 int ref_stride,
4795 const uint8_t* second_pred);
4796 #define vpx_highbd_sad4x8_avg vpx_highbd_sad4x8_avg_c
4797
4798 void vpx_highbd_sad4x8x4d_c(const uint8_t* src_ptr,
4799 int src_stride,
4800 const uint8_t* const ref_array[],
4801 int ref_stride,
4802 uint32_t* sad_array);
4803 void vpx_highbd_sad4x8x4d_sse2(const uint8_t* src_ptr,
4804 int src_stride,
4805 const uint8_t* const ref_array[],
4806 int ref_stride,
4807 uint32_t* sad_array);
4808 #define vpx_highbd_sad4x8x4d vpx_highbd_sad4x8x4d_sse2
4809
4810 unsigned int vpx_highbd_sad64x32_c(const uint8_t* src_ptr,
4811 int src_stride,
4812 const uint8_t* ref_ptr,
4813 int ref_stride);
4814 unsigned int vpx_highbd_sad64x32_sse2(const uint8_t* src_ptr,
4815 int src_stride,
4816 const uint8_t* ref_ptr,
4817 int ref_stride);
4818 #define vpx_highbd_sad64x32 vpx_highbd_sad64x32_sse2
4819
4820 unsigned int vpx_highbd_sad64x32_avg_c(const uint8_t* src_ptr,
4821 int src_stride,
4822 const uint8_t* ref_ptr,
4823 int ref_stride,
4824 const uint8_t* second_pred);
4825 unsigned int vpx_highbd_sad64x32_avg_sse2(const uint8_t* src_ptr,
4826 int src_stride,
4827 const uint8_t* ref_ptr,
4828 int ref_stride,
4829 const uint8_t* second_pred);
4830 #define vpx_highbd_sad64x32_avg vpx_highbd_sad64x32_avg_sse2
4831
4832 void vpx_highbd_sad64x32x4d_c(const uint8_t* src_ptr,
4833 int src_stride,
4834 const uint8_t* const ref_array[],
4835 int ref_stride,
4836 uint32_t* sad_array);
4837 void vpx_highbd_sad64x32x4d_sse2(const uint8_t* src_ptr,
4838 int src_stride,
4839 const uint8_t* const ref_array[],
4840 int ref_stride,
4841 uint32_t* sad_array);
4842 #define vpx_highbd_sad64x32x4d vpx_highbd_sad64x32x4d_sse2
4843
4844 unsigned int vpx_highbd_sad64x64_c(const uint8_t* src_ptr,
4845 int src_stride,
4846 const uint8_t* ref_ptr,
4847 int ref_stride);
4848 unsigned int vpx_highbd_sad64x64_sse2(const uint8_t* src_ptr,
4849 int src_stride,
4850 const uint8_t* ref_ptr,
4851 int ref_stride);
4852 #define vpx_highbd_sad64x64 vpx_highbd_sad64x64_sse2
4853
4854 unsigned int vpx_highbd_sad64x64_avg_c(const uint8_t* src_ptr,
4855 int src_stride,
4856 const uint8_t* ref_ptr,
4857 int ref_stride,
4858 const uint8_t* second_pred);
4859 unsigned int vpx_highbd_sad64x64_avg_sse2(const uint8_t* src_ptr,
4860 int src_stride,
4861 const uint8_t* ref_ptr,
4862 int ref_stride,
4863 const uint8_t* second_pred);
4864 #define vpx_highbd_sad64x64_avg vpx_highbd_sad64x64_avg_sse2
4865
4866 void vpx_highbd_sad64x64x4d_c(const uint8_t* src_ptr,
4867 int src_stride,
4868 const uint8_t* const ref_array[],
4869 int ref_stride,
4870 uint32_t* sad_array);
4871 void vpx_highbd_sad64x64x4d_sse2(const uint8_t* src_ptr,
4872 int src_stride,
4873 const uint8_t* const ref_array[],
4874 int ref_stride,
4875 uint32_t* sad_array);
4876 #define vpx_highbd_sad64x64x4d vpx_highbd_sad64x64x4d_sse2
4877
4878 unsigned int vpx_highbd_sad8x16_c(const uint8_t* src_ptr,
4879 int src_stride,
4880 const uint8_t* ref_ptr,
4881 int ref_stride);
4882 unsigned int vpx_highbd_sad8x16_sse2(const uint8_t* src_ptr,
4883 int src_stride,
4884 const uint8_t* ref_ptr,
4885 int ref_stride);
4886 #define vpx_highbd_sad8x16 vpx_highbd_sad8x16_sse2
4887
4888 unsigned int vpx_highbd_sad8x16_avg_c(const uint8_t* src_ptr,
4889 int src_stride,
4890 const uint8_t* ref_ptr,
4891 int ref_stride,
4892 const uint8_t* second_pred);
4893 unsigned int vpx_highbd_sad8x16_avg_sse2(const uint8_t* src_ptr,
4894 int src_stride,
4895 const uint8_t* ref_ptr,
4896 int ref_stride,
4897 const uint8_t* second_pred);
4898 #define vpx_highbd_sad8x16_avg vpx_highbd_sad8x16_avg_sse2
4899
4900 void vpx_highbd_sad8x16x4d_c(const uint8_t* src_ptr,
4901 int src_stride,
4902 const uint8_t* const ref_array[],
4903 int ref_stride,
4904 uint32_t* sad_array);
4905 void vpx_highbd_sad8x16x4d_sse2(const uint8_t* src_ptr,
4906 int src_stride,
4907 const uint8_t* const ref_array[],
4908 int ref_stride,
4909 uint32_t* sad_array);
4910 #define vpx_highbd_sad8x16x4d vpx_highbd_sad8x16x4d_sse2
4911
4912 unsigned int vpx_highbd_sad8x4_c(const uint8_t* src_ptr,
4913 int src_stride,
4914 const uint8_t* ref_ptr,
4915 int ref_stride);
4916 unsigned int vpx_highbd_sad8x4_sse2(const uint8_t* src_ptr,
4917 int src_stride,
4918 const uint8_t* ref_ptr,
4919 int ref_stride);
4920 #define vpx_highbd_sad8x4 vpx_highbd_sad8x4_sse2
4921
4922 unsigned int vpx_highbd_sad8x4_avg_c(const uint8_t* src_ptr,
4923 int src_stride,
4924 const uint8_t* ref_ptr,
4925 int ref_stride,
4926 const uint8_t* second_pred);
4927 unsigned int vpx_highbd_sad8x4_avg_sse2(const uint8_t* src_ptr,
4928 int src_stride,
4929 const uint8_t* ref_ptr,
4930 int ref_stride,
4931 const uint8_t* second_pred);
4932 #define vpx_highbd_sad8x4_avg vpx_highbd_sad8x4_avg_sse2
4933
4934 void vpx_highbd_sad8x4x4d_c(const uint8_t* src_ptr,
4935 int src_stride,
4936 const uint8_t* const ref_array[],
4937 int ref_stride,
4938 uint32_t* sad_array);
4939 void vpx_highbd_sad8x4x4d_sse2(const uint8_t* src_ptr,
4940 int src_stride,
4941 const uint8_t* const ref_array[],
4942 int ref_stride,
4943 uint32_t* sad_array);
4944 #define vpx_highbd_sad8x4x4d vpx_highbd_sad8x4x4d_sse2
4945
4946 unsigned int vpx_highbd_sad8x8_c(const uint8_t* src_ptr,
4947 int src_stride,
4948 const uint8_t* ref_ptr,
4949 int ref_stride);
4950 unsigned int vpx_highbd_sad8x8_sse2(const uint8_t* src_ptr,
4951 int src_stride,
4952 const uint8_t* ref_ptr,
4953 int ref_stride);
4954 #define vpx_highbd_sad8x8 vpx_highbd_sad8x8_sse2
4955
4956 unsigned int vpx_highbd_sad8x8_avg_c(const uint8_t* src_ptr,
4957 int src_stride,
4958 const uint8_t* ref_ptr,
4959 int ref_stride,
4960 const uint8_t* second_pred);
4961 unsigned int vpx_highbd_sad8x8_avg_sse2(const uint8_t* src_ptr,
4962 int src_stride,
4963 const uint8_t* ref_ptr,
4964 int ref_stride,
4965 const uint8_t* second_pred);
4966 #define vpx_highbd_sad8x8_avg vpx_highbd_sad8x8_avg_sse2
4967
4968 void vpx_highbd_sad8x8x4d_c(const uint8_t* src_ptr,
4969 int src_stride,
4970 const uint8_t* const ref_array[],
4971 int ref_stride,
4972 uint32_t* sad_array);
4973 void vpx_highbd_sad8x8x4d_sse2(const uint8_t* src_ptr,
4974 int src_stride,
4975 const uint8_t* const ref_array[],
4976 int ref_stride,
4977 uint32_t* sad_array);
4978 #define vpx_highbd_sad8x8x4d vpx_highbd_sad8x8x4d_sse2
4979
4980 int vpx_highbd_satd_c(const tran_low_t* coeff, int length);
4981 int vpx_highbd_satd_avx2(const tran_low_t* coeff, int length);
4982 RTCD_EXTERN int (*vpx_highbd_satd)(const tran_low_t* coeff, int length);
4983
4984 void vpx_highbd_subtract_block_c(int rows,
4985 int cols,
4986 int16_t* diff_ptr,
4987 ptrdiff_t diff_stride,
4988 const uint8_t* src8_ptr,
4989 ptrdiff_t src_stride,
4990 const uint8_t* pred8_ptr,
4991 ptrdiff_t pred_stride,
4992 int bd);
4993 #define vpx_highbd_subtract_block vpx_highbd_subtract_block_c
4994
4995 void vpx_highbd_tm_predictor_16x16_c(uint16_t* dst,
4996 ptrdiff_t stride,
4997 const uint16_t* above,
4998 const uint16_t* left,
4999 int bd);
5000 void vpx_highbd_tm_predictor_16x16_sse2(uint16_t* dst,
5001 ptrdiff_t stride,
5002 const uint16_t* above,
5003 const uint16_t* left,
5004 int bd);
5005 #define vpx_highbd_tm_predictor_16x16 vpx_highbd_tm_predictor_16x16_sse2
5006
5007 void vpx_highbd_tm_predictor_32x32_c(uint16_t* dst,
5008 ptrdiff_t stride,
5009 const uint16_t* above,
5010 const uint16_t* left,
5011 int bd);
5012 void vpx_highbd_tm_predictor_32x32_sse2(uint16_t* dst,
5013 ptrdiff_t stride,
5014 const uint16_t* above,
5015 const uint16_t* left,
5016 int bd);
5017 #define vpx_highbd_tm_predictor_32x32 vpx_highbd_tm_predictor_32x32_sse2
5018
5019 void vpx_highbd_tm_predictor_4x4_c(uint16_t* dst,
5020 ptrdiff_t stride,
5021 const uint16_t* above,
5022 const uint16_t* left,
5023 int bd);
5024 void vpx_highbd_tm_predictor_4x4_sse2(uint16_t* dst,
5025 ptrdiff_t stride,
5026 const uint16_t* above,
5027 const uint16_t* left,
5028 int bd);
5029 #define vpx_highbd_tm_predictor_4x4 vpx_highbd_tm_predictor_4x4_sse2
5030
5031 void vpx_highbd_tm_predictor_8x8_c(uint16_t* dst,
5032 ptrdiff_t stride,
5033 const uint16_t* above,
5034 const uint16_t* left,
5035 int bd);
5036 void vpx_highbd_tm_predictor_8x8_sse2(uint16_t* dst,
5037 ptrdiff_t stride,
5038 const uint16_t* above,
5039 const uint16_t* left,
5040 int bd);
5041 #define vpx_highbd_tm_predictor_8x8 vpx_highbd_tm_predictor_8x8_sse2
5042
5043 void vpx_highbd_v_predictor_16x16_c(uint16_t* dst,
5044 ptrdiff_t stride,
5045 const uint16_t* above,
5046 const uint16_t* left,
5047 int bd);
5048 void vpx_highbd_v_predictor_16x16_sse2(uint16_t* dst,
5049 ptrdiff_t stride,
5050 const uint16_t* above,
5051 const uint16_t* left,
5052 int bd);
5053 #define vpx_highbd_v_predictor_16x16 vpx_highbd_v_predictor_16x16_sse2
5054
5055 void vpx_highbd_v_predictor_32x32_c(uint16_t* dst,
5056 ptrdiff_t stride,
5057 const uint16_t* above,
5058 const uint16_t* left,
5059 int bd);
5060 void vpx_highbd_v_predictor_32x32_sse2(uint16_t* dst,
5061 ptrdiff_t stride,
5062 const uint16_t* above,
5063 const uint16_t* left,
5064 int bd);
5065 #define vpx_highbd_v_predictor_32x32 vpx_highbd_v_predictor_32x32_sse2
5066
5067 void vpx_highbd_v_predictor_4x4_c(uint16_t* dst,
5068 ptrdiff_t stride,
5069 const uint16_t* above,
5070 const uint16_t* left,
5071 int bd);
5072 void vpx_highbd_v_predictor_4x4_sse2(uint16_t* dst,
5073 ptrdiff_t stride,
5074 const uint16_t* above,
5075 const uint16_t* left,
5076 int bd);
5077 #define vpx_highbd_v_predictor_4x4 vpx_highbd_v_predictor_4x4_sse2
5078
5079 void vpx_highbd_v_predictor_8x8_c(uint16_t* dst,
5080 ptrdiff_t stride,
5081 const uint16_t* above,
5082 const uint16_t* left,
5083 int bd);
5084 void vpx_highbd_v_predictor_8x8_sse2(uint16_t* dst,
5085 ptrdiff_t stride,
5086 const uint16_t* above,
5087 const uint16_t* left,
5088 int bd);
5089 #define vpx_highbd_v_predictor_8x8 vpx_highbd_v_predictor_8x8_sse2
5090
5091 void vpx_idct16x16_10_add_c(const tran_low_t* input, uint8_t* dest, int stride);
5092 void vpx_idct16x16_10_add_sse2(const tran_low_t* input,
5093 uint8_t* dest,
5094 int stride);
5095 #define vpx_idct16x16_10_add vpx_idct16x16_10_add_sse2
5096
5097 void vpx_idct16x16_1_add_c(const tran_low_t* input, uint8_t* dest, int stride);
5098 void vpx_idct16x16_1_add_sse2(const tran_low_t* input,
5099 uint8_t* dest,
5100 int stride);
5101 #define vpx_idct16x16_1_add vpx_idct16x16_1_add_sse2
5102
5103 void vpx_idct16x16_256_add_c(const tran_low_t* input,
5104 uint8_t* dest,
5105 int stride);
5106 void vpx_idct16x16_256_add_sse2(const tran_low_t* input,
5107 uint8_t* dest,
5108 int stride);
5109 #define vpx_idct16x16_256_add vpx_idct16x16_256_add_sse2
5110
5111 void vpx_idct16x16_38_add_c(const tran_low_t* input, uint8_t* dest, int stride);
5112 void vpx_idct16x16_38_add_sse2(const tran_low_t* input,
5113 uint8_t* dest,
5114 int stride);
5115 #define vpx_idct16x16_38_add vpx_idct16x16_38_add_sse2
5116
5117 void vpx_idct32x32_1024_add_c(const tran_low_t* input,
5118 uint8_t* dest,
5119 int stride);
5120 void vpx_idct32x32_1024_add_sse2(const tran_low_t* input,
5121 uint8_t* dest,
5122 int stride);
5123 #define vpx_idct32x32_1024_add vpx_idct32x32_1024_add_sse2
5124
5125 void vpx_idct32x32_135_add_c(const tran_low_t* input,
5126 uint8_t* dest,
5127 int stride);
5128 void vpx_idct32x32_135_add_sse2(const tran_low_t* input,
5129 uint8_t* dest,
5130 int stride);
5131 void vpx_idct32x32_135_add_ssse3(const tran_low_t* input,
5132 uint8_t* dest,
5133 int stride);
5134 RTCD_EXTERN void (*vpx_idct32x32_135_add)(const tran_low_t* input,
5135 uint8_t* dest,
5136 int stride);
5137
5138 void vpx_idct32x32_1_add_c(const tran_low_t* input, uint8_t* dest, int stride);
5139 void vpx_idct32x32_1_add_sse2(const tran_low_t* input,
5140 uint8_t* dest,
5141 int stride);
5142 #define vpx_idct32x32_1_add vpx_idct32x32_1_add_sse2
5143
5144 void vpx_idct32x32_34_add_c(const tran_low_t* input, uint8_t* dest, int stride);
5145 void vpx_idct32x32_34_add_sse2(const tran_low_t* input,
5146 uint8_t* dest,
5147 int stride);
5148 void vpx_idct32x32_34_add_ssse3(const tran_low_t* input,
5149 uint8_t* dest,
5150 int stride);
5151 RTCD_EXTERN void (*vpx_idct32x32_34_add)(const tran_low_t* input,
5152 uint8_t* dest,
5153 int stride);
5154
5155 void vpx_idct4x4_16_add_c(const tran_low_t* input, uint8_t* dest, int stride);
5156 void vpx_idct4x4_16_add_sse2(const tran_low_t* input,
5157 uint8_t* dest,
5158 int stride);
5159 #define vpx_idct4x4_16_add vpx_idct4x4_16_add_sse2
5160
5161 void vpx_idct4x4_1_add_c(const tran_low_t* input, uint8_t* dest, int stride);
5162 void vpx_idct4x4_1_add_sse2(const tran_low_t* input, uint8_t* dest, int stride);
5163 #define vpx_idct4x4_1_add vpx_idct4x4_1_add_sse2
5164
5165 void vpx_idct8x8_12_add_c(const tran_low_t* input, uint8_t* dest, int stride);
5166 void vpx_idct8x8_12_add_sse2(const tran_low_t* input,
5167 uint8_t* dest,
5168 int stride);
5169 void vpx_idct8x8_12_add_ssse3(const tran_low_t* input,
5170 uint8_t* dest,
5171 int stride);
5172 RTCD_EXTERN void (*vpx_idct8x8_12_add)(const tran_low_t* input,
5173 uint8_t* dest,
5174 int stride);
5175
5176 void vpx_idct8x8_1_add_c(const tran_low_t* input, uint8_t* dest, int stride);
5177 void vpx_idct8x8_1_add_sse2(const tran_low_t* input, uint8_t* dest, int stride);
5178 #define vpx_idct8x8_1_add vpx_idct8x8_1_add_sse2
5179
5180 void vpx_idct8x8_64_add_c(const tran_low_t* input, uint8_t* dest, int stride);
5181 void vpx_idct8x8_64_add_sse2(const tran_low_t* input,
5182 uint8_t* dest,
5183 int stride);
5184 #define vpx_idct8x8_64_add vpx_idct8x8_64_add_sse2
5185
5186 int16_t vpx_int_pro_col_c(const uint8_t* ref, const int width);
5187 int16_t vpx_int_pro_col_sse2(const uint8_t* ref, const int width);
5188 #define vpx_int_pro_col vpx_int_pro_col_sse2
5189
5190 void vpx_int_pro_row_c(int16_t* hbuf,
5191 const uint8_t* ref,
5192 const int ref_stride,
5193 const int height);
5194 void vpx_int_pro_row_sse2(int16_t* hbuf,
5195 const uint8_t* ref,
5196 const int ref_stride,
5197 const int height);
5198 #define vpx_int_pro_row vpx_int_pro_row_sse2
5199
5200 void vpx_iwht4x4_16_add_c(const tran_low_t* input, uint8_t* dest, int stride);
5201 void vpx_iwht4x4_16_add_sse2(const tran_low_t* input,
5202 uint8_t* dest,
5203 int stride);
5204 #define vpx_iwht4x4_16_add vpx_iwht4x4_16_add_sse2
5205
5206 void vpx_iwht4x4_1_add_c(const tran_low_t* input, uint8_t* dest, int stride);
5207 #define vpx_iwht4x4_1_add vpx_iwht4x4_1_add_c
5208
5209 void vpx_lpf_horizontal_16_c(uint8_t* s,
5210 int pitch,
5211 const uint8_t* blimit,
5212 const uint8_t* limit,
5213 const uint8_t* thresh);
5214 void vpx_lpf_horizontal_16_sse2(uint8_t* s,
5215 int pitch,
5216 const uint8_t* blimit,
5217 const uint8_t* limit,
5218 const uint8_t* thresh);
5219 void vpx_lpf_horizontal_16_avx2(uint8_t* s,
5220 int pitch,
5221 const uint8_t* blimit,
5222 const uint8_t* limit,
5223 const uint8_t* thresh);
5224 RTCD_EXTERN void (*vpx_lpf_horizontal_16)(uint8_t* s,
5225 int pitch,
5226 const uint8_t* blimit,
5227 const uint8_t* limit,
5228 const uint8_t* thresh);
5229
5230 void vpx_lpf_horizontal_16_dual_c(uint8_t* s,
5231 int pitch,
5232 const uint8_t* blimit,
5233 const uint8_t* limit,
5234 const uint8_t* thresh);
5235 void vpx_lpf_horizontal_16_dual_sse2(uint8_t* s,
5236 int pitch,
5237 const uint8_t* blimit,
5238 const uint8_t* limit,
5239 const uint8_t* thresh);
5240 void vpx_lpf_horizontal_16_dual_avx2(uint8_t* s,
5241 int pitch,
5242 const uint8_t* blimit,
5243 const uint8_t* limit,
5244 const uint8_t* thresh);
5245 RTCD_EXTERN void (*vpx_lpf_horizontal_16_dual)(uint8_t* s,
5246 int pitch,
5247 const uint8_t* blimit,
5248 const uint8_t* limit,
5249 const uint8_t* thresh);
5250
5251 void vpx_lpf_horizontal_4_c(uint8_t* s,
5252 int pitch,
5253 const uint8_t* blimit,
5254 const uint8_t* limit,
5255 const uint8_t* thresh);
5256 void vpx_lpf_horizontal_4_sse2(uint8_t* s,
5257 int pitch,
5258 const uint8_t* blimit,
5259 const uint8_t* limit,
5260 const uint8_t* thresh);
5261 #define vpx_lpf_horizontal_4 vpx_lpf_horizontal_4_sse2
5262
5263 void vpx_lpf_horizontal_4_dual_c(uint8_t* s,
5264 int pitch,
5265 const uint8_t* blimit0,
5266 const uint8_t* limit0,
5267 const uint8_t* thresh0,
5268 const uint8_t* blimit1,
5269 const uint8_t* limit1,
5270 const uint8_t* thresh1);
5271 void vpx_lpf_horizontal_4_dual_sse2(uint8_t* s,
5272 int pitch,
5273 const uint8_t* blimit0,
5274 const uint8_t* limit0,
5275 const uint8_t* thresh0,
5276 const uint8_t* blimit1,
5277 const uint8_t* limit1,
5278 const uint8_t* thresh1);
5279 #define vpx_lpf_horizontal_4_dual vpx_lpf_horizontal_4_dual_sse2
5280
5281 void vpx_lpf_horizontal_8_c(uint8_t* s,
5282 int pitch,
5283 const uint8_t* blimit,
5284 const uint8_t* limit,
5285 const uint8_t* thresh);
5286 void vpx_lpf_horizontal_8_sse2(uint8_t* s,
5287 int pitch,
5288 const uint8_t* blimit,
5289 const uint8_t* limit,
5290 const uint8_t* thresh);
5291 #define vpx_lpf_horizontal_8 vpx_lpf_horizontal_8_sse2
5292
5293 void vpx_lpf_horizontal_8_dual_c(uint8_t* s,
5294 int pitch,
5295 const uint8_t* blimit0,
5296 const uint8_t* limit0,
5297 const uint8_t* thresh0,
5298 const uint8_t* blimit1,
5299 const uint8_t* limit1,
5300 const uint8_t* thresh1);
5301 void vpx_lpf_horizontal_8_dual_sse2(uint8_t* s,
5302 int pitch,
5303 const uint8_t* blimit0,
5304 const uint8_t* limit0,
5305 const uint8_t* thresh0,
5306 const uint8_t* blimit1,
5307 const uint8_t* limit1,
5308 const uint8_t* thresh1);
5309 #define vpx_lpf_horizontal_8_dual vpx_lpf_horizontal_8_dual_sse2
5310
5311 void vpx_lpf_vertical_16_c(uint8_t* s,
5312 int pitch,
5313 const uint8_t* blimit,
5314 const uint8_t* limit,
5315 const uint8_t* thresh);
5316 void vpx_lpf_vertical_16_sse2(uint8_t* s,
5317 int pitch,
5318 const uint8_t* blimit,
5319 const uint8_t* limit,
5320 const uint8_t* thresh);
5321 #define vpx_lpf_vertical_16 vpx_lpf_vertical_16_sse2
5322
5323 void vpx_lpf_vertical_16_dual_c(uint8_t* s,
5324 int pitch,
5325 const uint8_t* blimit,
5326 const uint8_t* limit,
5327 const uint8_t* thresh);
5328 void vpx_lpf_vertical_16_dual_sse2(uint8_t* s,
5329 int pitch,
5330 const uint8_t* blimit,
5331 const uint8_t* limit,
5332 const uint8_t* thresh);
5333 #define vpx_lpf_vertical_16_dual vpx_lpf_vertical_16_dual_sse2
5334
5335 void vpx_lpf_vertical_4_c(uint8_t* s,
5336 int pitch,
5337 const uint8_t* blimit,
5338 const uint8_t* limit,
5339 const uint8_t* thresh);
5340 void vpx_lpf_vertical_4_sse2(uint8_t* s,
5341 int pitch,
5342 const uint8_t* blimit,
5343 const uint8_t* limit,
5344 const uint8_t* thresh);
5345 #define vpx_lpf_vertical_4 vpx_lpf_vertical_4_sse2
5346
5347 void vpx_lpf_vertical_4_dual_c(uint8_t* s,
5348 int pitch,
5349 const uint8_t* blimit0,
5350 const uint8_t* limit0,
5351 const uint8_t* thresh0,
5352 const uint8_t* blimit1,
5353 const uint8_t* limit1,
5354 const uint8_t* thresh1);
5355 void vpx_lpf_vertical_4_dual_sse2(uint8_t* s,
5356 int pitch,
5357 const uint8_t* blimit0,
5358 const uint8_t* limit0,
5359 const uint8_t* thresh0,
5360 const uint8_t* blimit1,
5361 const uint8_t* limit1,
5362 const uint8_t* thresh1);
5363 #define vpx_lpf_vertical_4_dual vpx_lpf_vertical_4_dual_sse2
5364
5365 void vpx_lpf_vertical_8_c(uint8_t* s,
5366 int pitch,
5367 const uint8_t* blimit,
5368 const uint8_t* limit,
5369 const uint8_t* thresh);
5370 void vpx_lpf_vertical_8_sse2(uint8_t* s,
5371 int pitch,
5372 const uint8_t* blimit,
5373 const uint8_t* limit,
5374 const uint8_t* thresh);
5375 #define vpx_lpf_vertical_8 vpx_lpf_vertical_8_sse2
5376
5377 void vpx_lpf_vertical_8_dual_c(uint8_t* s,
5378 int pitch,
5379 const uint8_t* blimit0,
5380 const uint8_t* limit0,
5381 const uint8_t* thresh0,
5382 const uint8_t* blimit1,
5383 const uint8_t* limit1,
5384 const uint8_t* thresh1);
5385 void vpx_lpf_vertical_8_dual_sse2(uint8_t* s,
5386 int pitch,
5387 const uint8_t* blimit0,
5388 const uint8_t* limit0,
5389 const uint8_t* thresh0,
5390 const uint8_t* blimit1,
5391 const uint8_t* limit1,
5392 const uint8_t* thresh1);
5393 #define vpx_lpf_vertical_8_dual vpx_lpf_vertical_8_dual_sse2
5394
5395 void vpx_mbpost_proc_across_ip_c(unsigned char* src,
5396 int pitch,
5397 int rows,
5398 int cols,
5399 int flimit);
5400 void vpx_mbpost_proc_across_ip_sse2(unsigned char* src,
5401 int pitch,
5402 int rows,
5403 int cols,
5404 int flimit);
5405 #define vpx_mbpost_proc_across_ip vpx_mbpost_proc_across_ip_sse2
5406
5407 void vpx_mbpost_proc_down_c(unsigned char* dst,
5408 int pitch,
5409 int rows,
5410 int cols,
5411 int flimit);
5412 void vpx_mbpost_proc_down_sse2(unsigned char* dst,
5413 int pitch,
5414 int rows,
5415 int cols,
5416 int flimit);
5417 #define vpx_mbpost_proc_down vpx_mbpost_proc_down_sse2
5418
5419 void vpx_minmax_8x8_c(const uint8_t* s,
5420 int p,
5421 const uint8_t* d,
5422 int dp,
5423 int* min,
5424 int* max);
5425 void vpx_minmax_8x8_sse2(const uint8_t* s,
5426 int p,
5427 const uint8_t* d,
5428 int dp,
5429 int* min,
5430 int* max);
5431 #define vpx_minmax_8x8 vpx_minmax_8x8_sse2
5432
5433 unsigned int vpx_mse16x16_c(const uint8_t* src_ptr,
5434 int src_stride,
5435 const uint8_t* ref_ptr,
5436 int ref_stride,
5437 unsigned int* sse);
5438 unsigned int vpx_mse16x16_sse2(const uint8_t* src_ptr,
5439 int src_stride,
5440 const uint8_t* ref_ptr,
5441 int ref_stride,
5442 unsigned int* sse);
5443 unsigned int vpx_mse16x16_avx2(const uint8_t* src_ptr,
5444 int src_stride,
5445 const uint8_t* ref_ptr,
5446 int ref_stride,
5447 unsigned int* sse);
5448 RTCD_EXTERN unsigned int (*vpx_mse16x16)(const uint8_t* src_ptr,
5449 int src_stride,
5450 const uint8_t* ref_ptr,
5451 int ref_stride,
5452 unsigned int* sse);
5453
5454 unsigned int vpx_mse16x8_c(const uint8_t* src_ptr,
5455 int src_stride,
5456 const uint8_t* ref_ptr,
5457 int ref_stride,
5458 unsigned int* sse);
5459 unsigned int vpx_mse16x8_sse2(const uint8_t* src_ptr,
5460 int src_stride,
5461 const uint8_t* ref_ptr,
5462 int ref_stride,
5463 unsigned int* sse);
5464 unsigned int vpx_mse16x8_avx2(const uint8_t* src_ptr,
5465 int src_stride,
5466 const uint8_t* ref_ptr,
5467 int ref_stride,
5468 unsigned int* sse);
5469 RTCD_EXTERN unsigned int (*vpx_mse16x8)(const uint8_t* src_ptr,
5470 int src_stride,
5471 const uint8_t* ref_ptr,
5472 int ref_stride,
5473 unsigned int* sse);
5474
5475 unsigned int vpx_mse8x16_c(const uint8_t* src_ptr,
5476 int src_stride,
5477 const uint8_t* ref_ptr,
5478 int ref_stride,
5479 unsigned int* sse);
5480 unsigned int vpx_mse8x16_sse2(const uint8_t* src_ptr,
5481 int src_stride,
5482 const uint8_t* ref_ptr,
5483 int ref_stride,
5484 unsigned int* sse);
5485 #define vpx_mse8x16 vpx_mse8x16_sse2
5486
5487 unsigned int vpx_mse8x8_c(const uint8_t* src_ptr,
5488 int src_stride,
5489 const uint8_t* ref_ptr,
5490 int ref_stride,
5491 unsigned int* sse);
5492 unsigned int vpx_mse8x8_sse2(const uint8_t* src_ptr,
5493 int src_stride,
5494 const uint8_t* ref_ptr,
5495 int ref_stride,
5496 unsigned int* sse);
5497 #define vpx_mse8x8 vpx_mse8x8_sse2
5498
5499 void vpx_plane_add_noise_c(uint8_t* start,
5500 const int8_t* noise,
5501 int blackclamp,
5502 int whiteclamp,
5503 int width,
5504 int height,
5505 int pitch);
5506 void vpx_plane_add_noise_sse2(uint8_t* start,
5507 const int8_t* noise,
5508 int blackclamp,
5509 int whiteclamp,
5510 int width,
5511 int height,
5512 int pitch);
5513 #define vpx_plane_add_noise vpx_plane_add_noise_sse2
5514
5515 void vpx_post_proc_down_and_across_mb_row_c(unsigned char* src,
5516 unsigned char* dst,
5517 int src_pitch,
5518 int dst_pitch,
5519 int cols,
5520 unsigned char* flimits,
5521 int size);
5522 void vpx_post_proc_down_and_across_mb_row_sse2(unsigned char* src,
5523 unsigned char* dst,
5524 int src_pitch,
5525 int dst_pitch,
5526 int cols,
5527 unsigned char* flimits,
5528 int size);
5529 #define vpx_post_proc_down_and_across_mb_row \
5530 vpx_post_proc_down_and_across_mb_row_sse2
5531
5532 void vpx_quantize_b_c(const tran_low_t* coeff_ptr,
5533 intptr_t n_coeffs,
5534 int skip_block,
5535 const int16_t* zbin_ptr,
5536 const int16_t* round_ptr,
5537 const int16_t* quant_ptr,
5538 const int16_t* quant_shift_ptr,
5539 tran_low_t* qcoeff_ptr,
5540 tran_low_t* dqcoeff_ptr,
5541 const int16_t* dequant_ptr,
5542 uint16_t* eob_ptr,
5543 const int16_t* scan,
5544 const int16_t* iscan);
5545 void vpx_quantize_b_sse2(const tran_low_t* coeff_ptr,
5546 intptr_t n_coeffs,
5547 int skip_block,
5548 const int16_t* zbin_ptr,
5549 const int16_t* round_ptr,
5550 const int16_t* quant_ptr,
5551 const int16_t* quant_shift_ptr,
5552 tran_low_t* qcoeff_ptr,
5553 tran_low_t* dqcoeff_ptr,
5554 const int16_t* dequant_ptr,
5555 uint16_t* eob_ptr,
5556 const int16_t* scan,
5557 const int16_t* iscan);
5558 void vpx_quantize_b_ssse3(const tran_low_t* coeff_ptr,
5559 intptr_t n_coeffs,
5560 int skip_block,
5561 const int16_t* zbin_ptr,
5562 const int16_t* round_ptr,
5563 const int16_t* quant_ptr,
5564 const int16_t* quant_shift_ptr,
5565 tran_low_t* qcoeff_ptr,
5566 tran_low_t* dqcoeff_ptr,
5567 const int16_t* dequant_ptr,
5568 uint16_t* eob_ptr,
5569 const int16_t* scan,
5570 const int16_t* iscan);
5571 void vpx_quantize_b_avx(const tran_low_t* coeff_ptr,
5572 intptr_t n_coeffs,
5573 int skip_block,
5574 const int16_t* zbin_ptr,
5575 const int16_t* round_ptr,
5576 const int16_t* quant_ptr,
5577 const int16_t* quant_shift_ptr,
5578 tran_low_t* qcoeff_ptr,
5579 tran_low_t* dqcoeff_ptr,
5580 const int16_t* dequant_ptr,
5581 uint16_t* eob_ptr,
5582 const int16_t* scan,
5583 const int16_t* iscan);
5584 RTCD_EXTERN void (*vpx_quantize_b)(const tran_low_t* coeff_ptr,
5585 intptr_t n_coeffs,
5586 int skip_block,
5587 const int16_t* zbin_ptr,
5588 const int16_t* round_ptr,
5589 const int16_t* quant_ptr,
5590 const int16_t* quant_shift_ptr,
5591 tran_low_t* qcoeff_ptr,
5592 tran_low_t* dqcoeff_ptr,
5593 const int16_t* dequant_ptr,
5594 uint16_t* eob_ptr,
5595 const int16_t* scan,
5596 const int16_t* iscan);
5597
5598 void vpx_quantize_b_32x32_c(const tran_low_t* coeff_ptr,
5599 intptr_t n_coeffs,
5600 int skip_block,
5601 const int16_t* zbin_ptr,
5602 const int16_t* round_ptr,
5603 const int16_t* quant_ptr,
5604 const int16_t* quant_shift_ptr,
5605 tran_low_t* qcoeff_ptr,
5606 tran_low_t* dqcoeff_ptr,
5607 const int16_t* dequant_ptr,
5608 uint16_t* eob_ptr,
5609 const int16_t* scan,
5610 const int16_t* iscan);
5611 void vpx_quantize_b_32x32_ssse3(const tran_low_t* coeff_ptr,
5612 intptr_t n_coeffs,
5613 int skip_block,
5614 const int16_t* zbin_ptr,
5615 const int16_t* round_ptr,
5616 const int16_t* quant_ptr,
5617 const int16_t* quant_shift_ptr,
5618 tran_low_t* qcoeff_ptr,
5619 tran_low_t* dqcoeff_ptr,
5620 const int16_t* dequant_ptr,
5621 uint16_t* eob_ptr,
5622 const int16_t* scan,
5623 const int16_t* iscan);
5624 void vpx_quantize_b_32x32_avx(const tran_low_t* coeff_ptr,
5625 intptr_t n_coeffs,
5626 int skip_block,
5627 const int16_t* zbin_ptr,
5628 const int16_t* round_ptr,
5629 const int16_t* quant_ptr,
5630 const int16_t* quant_shift_ptr,
5631 tran_low_t* qcoeff_ptr,
5632 tran_low_t* dqcoeff_ptr,
5633 const int16_t* dequant_ptr,
5634 uint16_t* eob_ptr,
5635 const int16_t* scan,
5636 const int16_t* iscan);
5637 RTCD_EXTERN void (*vpx_quantize_b_32x32)(const tran_low_t* coeff_ptr,
5638 intptr_t n_coeffs,
5639 int skip_block,
5640 const int16_t* zbin_ptr,
5641 const int16_t* round_ptr,
5642 const int16_t* quant_ptr,
5643 const int16_t* quant_shift_ptr,
5644 tran_low_t* qcoeff_ptr,
5645 tran_low_t* dqcoeff_ptr,
5646 const int16_t* dequant_ptr,
5647 uint16_t* eob_ptr,
5648 const int16_t* scan,
5649 const int16_t* iscan);
5650
5651 unsigned int vpx_sad16x16_c(const uint8_t* src_ptr,
5652 int src_stride,
5653 const uint8_t* ref_ptr,
5654 int ref_stride);
5655 unsigned int vpx_sad16x16_sse2(const uint8_t* src_ptr,
5656 int src_stride,
5657 const uint8_t* ref_ptr,
5658 int ref_stride);
5659 #define vpx_sad16x16 vpx_sad16x16_sse2
5660
5661 unsigned int vpx_sad16x16_avg_c(const uint8_t* src_ptr,
5662 int src_stride,
5663 const uint8_t* ref_ptr,
5664 int ref_stride,
5665 const uint8_t* second_pred);
5666 unsigned int vpx_sad16x16_avg_sse2(const uint8_t* src_ptr,
5667 int src_stride,
5668 const uint8_t* ref_ptr,
5669 int ref_stride,
5670 const uint8_t* second_pred);
5671 #define vpx_sad16x16_avg vpx_sad16x16_avg_sse2
5672
5673 void vpx_sad16x16x3_c(const uint8_t* src_ptr,
5674 int src_stride,
5675 const uint8_t* ref_ptr,
5676 int ref_stride,
5677 uint32_t* sad_array);
5678 void vpx_sad16x16x3_sse3(const uint8_t* src_ptr,
5679 int src_stride,
5680 const uint8_t* ref_ptr,
5681 int ref_stride,
5682 uint32_t* sad_array);
5683 void vpx_sad16x16x3_ssse3(const uint8_t* src_ptr,
5684 int src_stride,
5685 const uint8_t* ref_ptr,
5686 int ref_stride,
5687 uint32_t* sad_array);
5688 RTCD_EXTERN void (*vpx_sad16x16x3)(const uint8_t* src_ptr,
5689 int src_stride,
5690 const uint8_t* ref_ptr,
5691 int ref_stride,
5692 uint32_t* sad_array);
5693
5694 void vpx_sad16x16x4d_c(const uint8_t* src_ptr,
5695 int src_stride,
5696 const uint8_t* const ref_array[],
5697 int ref_stride,
5698 uint32_t* sad_array);
5699 void vpx_sad16x16x4d_sse2(const uint8_t* src_ptr,
5700 int src_stride,
5701 const uint8_t* const ref_array[],
5702 int ref_stride,
5703 uint32_t* sad_array);
5704 #define vpx_sad16x16x4d vpx_sad16x16x4d_sse2
5705
5706 void vpx_sad16x16x8_c(const uint8_t* src_ptr,
5707 int src_stride,
5708 const uint8_t* ref_ptr,
5709 int ref_stride,
5710 uint32_t* sad_array);
5711 void vpx_sad16x16x8_sse4_1(const uint8_t* src_ptr,
5712 int src_stride,
5713 const uint8_t* ref_ptr,
5714 int ref_stride,
5715 uint32_t* sad_array);
5716 RTCD_EXTERN void (*vpx_sad16x16x8)(const uint8_t* src_ptr,
5717 int src_stride,
5718 const uint8_t* ref_ptr,
5719 int ref_stride,
5720 uint32_t* sad_array);
5721
5722 unsigned int vpx_sad16x32_c(const uint8_t* src_ptr,
5723 int src_stride,
5724 const uint8_t* ref_ptr,
5725 int ref_stride);
5726 unsigned int vpx_sad16x32_sse2(const uint8_t* src_ptr,
5727 int src_stride,
5728 const uint8_t* ref_ptr,
5729 int ref_stride);
5730 #define vpx_sad16x32 vpx_sad16x32_sse2
5731
5732 unsigned int vpx_sad16x32_avg_c(const uint8_t* src_ptr,
5733 int src_stride,
5734 const uint8_t* ref_ptr,
5735 int ref_stride,
5736 const uint8_t* second_pred);
5737 unsigned int vpx_sad16x32_avg_sse2(const uint8_t* src_ptr,
5738 int src_stride,
5739 const uint8_t* ref_ptr,
5740 int ref_stride,
5741 const uint8_t* second_pred);
5742 #define vpx_sad16x32_avg vpx_sad16x32_avg_sse2
5743
5744 void vpx_sad16x32x4d_c(const uint8_t* src_ptr,
5745 int src_stride,
5746 const uint8_t* const ref_array[],
5747 int ref_stride,
5748 uint32_t* sad_array);
5749 void vpx_sad16x32x4d_sse2(const uint8_t* src_ptr,
5750 int src_stride,
5751 const uint8_t* const ref_array[],
5752 int ref_stride,
5753 uint32_t* sad_array);
5754 #define vpx_sad16x32x4d vpx_sad16x32x4d_sse2
5755
5756 unsigned int vpx_sad16x8_c(const uint8_t* src_ptr,
5757 int src_stride,
5758 const uint8_t* ref_ptr,
5759 int ref_stride);
5760 unsigned int vpx_sad16x8_sse2(const uint8_t* src_ptr,
5761 int src_stride,
5762 const uint8_t* ref_ptr,
5763 int ref_stride);
5764 #define vpx_sad16x8 vpx_sad16x8_sse2
5765
5766 unsigned int vpx_sad16x8_avg_c(const uint8_t* src_ptr,
5767 int src_stride,
5768 const uint8_t* ref_ptr,
5769 int ref_stride,
5770 const uint8_t* second_pred);
5771 unsigned int vpx_sad16x8_avg_sse2(const uint8_t* src_ptr,
5772 int src_stride,
5773 const uint8_t* ref_ptr,
5774 int ref_stride,
5775 const uint8_t* second_pred);
5776 #define vpx_sad16x8_avg vpx_sad16x8_avg_sse2
5777
5778 void vpx_sad16x8x3_c(const uint8_t* src_ptr,
5779 int src_stride,
5780 const uint8_t* ref_ptr,
5781 int ref_stride,
5782 uint32_t* sad_array);
5783 void vpx_sad16x8x3_sse3(const uint8_t* src_ptr,
5784 int src_stride,
5785 const uint8_t* ref_ptr,
5786 int ref_stride,
5787 uint32_t* sad_array);
5788 void vpx_sad16x8x3_ssse3(const uint8_t* src_ptr,
5789 int src_stride,
5790 const uint8_t* ref_ptr,
5791 int ref_stride,
5792 uint32_t* sad_array);
5793 RTCD_EXTERN void (*vpx_sad16x8x3)(const uint8_t* src_ptr,
5794 int src_stride,
5795 const uint8_t* ref_ptr,
5796 int ref_stride,
5797 uint32_t* sad_array);
5798
5799 void vpx_sad16x8x4d_c(const uint8_t* src_ptr,
5800 int src_stride,
5801 const uint8_t* const ref_array[],
5802 int ref_stride,
5803 uint32_t* sad_array);
5804 void vpx_sad16x8x4d_sse2(const uint8_t* src_ptr,
5805 int src_stride,
5806 const uint8_t* const ref_array[],
5807 int ref_stride,
5808 uint32_t* sad_array);
5809 #define vpx_sad16x8x4d vpx_sad16x8x4d_sse2
5810
5811 void vpx_sad16x8x8_c(const uint8_t* src_ptr,
5812 int src_stride,
5813 const uint8_t* ref_ptr,
5814 int ref_stride,
5815 uint32_t* sad_array);
5816 void vpx_sad16x8x8_sse4_1(const uint8_t* src_ptr,
5817 int src_stride,
5818 const uint8_t* ref_ptr,
5819 int ref_stride,
5820 uint32_t* sad_array);
5821 RTCD_EXTERN void (*vpx_sad16x8x8)(const uint8_t* src_ptr,
5822 int src_stride,
5823 const uint8_t* ref_ptr,
5824 int ref_stride,
5825 uint32_t* sad_array);
5826
5827 unsigned int vpx_sad32x16_c(const uint8_t* src_ptr,
5828 int src_stride,
5829 const uint8_t* ref_ptr,
5830 int ref_stride);
5831 unsigned int vpx_sad32x16_sse2(const uint8_t* src_ptr,
5832 int src_stride,
5833 const uint8_t* ref_ptr,
5834 int ref_stride);
5835 unsigned int vpx_sad32x16_avx2(const uint8_t* src_ptr,
5836 int src_stride,
5837 const uint8_t* ref_ptr,
5838 int ref_stride);
5839 RTCD_EXTERN unsigned int (*vpx_sad32x16)(const uint8_t* src_ptr,
5840 int src_stride,
5841 const uint8_t* ref_ptr,
5842 int ref_stride);
5843
5844 unsigned int vpx_sad32x16_avg_c(const uint8_t* src_ptr,
5845 int src_stride,
5846 const uint8_t* ref_ptr,
5847 int ref_stride,
5848 const uint8_t* second_pred);
5849 unsigned int vpx_sad32x16_avg_sse2(const uint8_t* src_ptr,
5850 int src_stride,
5851 const uint8_t* ref_ptr,
5852 int ref_stride,
5853 const uint8_t* second_pred);
5854 unsigned int vpx_sad32x16_avg_avx2(const uint8_t* src_ptr,
5855 int src_stride,
5856 const uint8_t* ref_ptr,
5857 int ref_stride,
5858 const uint8_t* second_pred);
5859 RTCD_EXTERN unsigned int (*vpx_sad32x16_avg)(const uint8_t* src_ptr,
5860 int src_stride,
5861 const uint8_t* ref_ptr,
5862 int ref_stride,
5863 const uint8_t* second_pred);
5864
5865 void vpx_sad32x16x4d_c(const uint8_t* src_ptr,
5866 int src_stride,
5867 const uint8_t* const ref_array[],
5868 int ref_stride,
5869 uint32_t* sad_array);
5870 void vpx_sad32x16x4d_sse2(const uint8_t* src_ptr,
5871 int src_stride,
5872 const uint8_t* const ref_array[],
5873 int ref_stride,
5874 uint32_t* sad_array);
5875 #define vpx_sad32x16x4d vpx_sad32x16x4d_sse2
5876
5877 unsigned int vpx_sad32x32_c(const uint8_t* src_ptr,
5878 int src_stride,
5879 const uint8_t* ref_ptr,
5880 int ref_stride);
5881 unsigned int vpx_sad32x32_sse2(const uint8_t* src_ptr,
5882 int src_stride,
5883 const uint8_t* ref_ptr,
5884 int ref_stride);
5885 unsigned int vpx_sad32x32_avx2(const uint8_t* src_ptr,
5886 int src_stride,
5887 const uint8_t* ref_ptr,
5888 int ref_stride);
5889 RTCD_EXTERN unsigned int (*vpx_sad32x32)(const uint8_t* src_ptr,
5890 int src_stride,
5891 const uint8_t* ref_ptr,
5892 int ref_stride);
5893
5894 unsigned int vpx_sad32x32_avg_c(const uint8_t* src_ptr,
5895 int src_stride,
5896 const uint8_t* ref_ptr,
5897 int ref_stride,
5898 const uint8_t* second_pred);
5899 unsigned int vpx_sad32x32_avg_sse2(const uint8_t* src_ptr,
5900 int src_stride,
5901 const uint8_t* ref_ptr,
5902 int ref_stride,
5903 const uint8_t* second_pred);
5904 unsigned int vpx_sad32x32_avg_avx2(const uint8_t* src_ptr,
5905 int src_stride,
5906 const uint8_t* ref_ptr,
5907 int ref_stride,
5908 const uint8_t* second_pred);
5909 RTCD_EXTERN unsigned int (*vpx_sad32x32_avg)(const uint8_t* src_ptr,
5910 int src_stride,
5911 const uint8_t* ref_ptr,
5912 int ref_stride,
5913 const uint8_t* second_pred);
5914
5915 void vpx_sad32x32x4d_c(const uint8_t* src_ptr,
5916 int src_stride,
5917 const uint8_t* const ref_array[],
5918 int ref_stride,
5919 uint32_t* sad_array);
5920 void vpx_sad32x32x4d_sse2(const uint8_t* src_ptr,
5921 int src_stride,
5922 const uint8_t* const ref_array[],
5923 int ref_stride,
5924 uint32_t* sad_array);
5925 void vpx_sad32x32x4d_avx2(const uint8_t* src_ptr,
5926 int src_stride,
5927 const uint8_t* const ref_array[],
5928 int ref_stride,
5929 uint32_t* sad_array);
5930 RTCD_EXTERN void (*vpx_sad32x32x4d)(const uint8_t* src_ptr,
5931 int src_stride,
5932 const uint8_t* const ref_array[],
5933 int ref_stride,
5934 uint32_t* sad_array);
5935
5936 void vpx_sad32x32x8_c(const uint8_t* src_ptr,
5937 int src_stride,
5938 const uint8_t* ref_ptr,
5939 int ref_stride,
5940 uint32_t* sad_array);
5941 void vpx_sad32x32x8_avx2(const uint8_t* src_ptr,
5942 int src_stride,
5943 const uint8_t* ref_ptr,
5944 int ref_stride,
5945 uint32_t* sad_array);
5946 RTCD_EXTERN void (*vpx_sad32x32x8)(const uint8_t* src_ptr,
5947 int src_stride,
5948 const uint8_t* ref_ptr,
5949 int ref_stride,
5950 uint32_t* sad_array);
5951
5952 unsigned int vpx_sad32x64_c(const uint8_t* src_ptr,
5953 int src_stride,
5954 const uint8_t* ref_ptr,
5955 int ref_stride);
5956 unsigned int vpx_sad32x64_sse2(const uint8_t* src_ptr,
5957 int src_stride,
5958 const uint8_t* ref_ptr,
5959 int ref_stride);
5960 unsigned int vpx_sad32x64_avx2(const uint8_t* src_ptr,
5961 int src_stride,
5962 const uint8_t* ref_ptr,
5963 int ref_stride);
5964 RTCD_EXTERN unsigned int (*vpx_sad32x64)(const uint8_t* src_ptr,
5965 int src_stride,
5966 const uint8_t* ref_ptr,
5967 int ref_stride);
5968
5969 unsigned int vpx_sad32x64_avg_c(const uint8_t* src_ptr,
5970 int src_stride,
5971 const uint8_t* ref_ptr,
5972 int ref_stride,
5973 const uint8_t* second_pred);
5974 unsigned int vpx_sad32x64_avg_sse2(const uint8_t* src_ptr,
5975 int src_stride,
5976 const uint8_t* ref_ptr,
5977 int ref_stride,
5978 const uint8_t* second_pred);
5979 unsigned int vpx_sad32x64_avg_avx2(const uint8_t* src_ptr,
5980 int src_stride,
5981 const uint8_t* ref_ptr,
5982 int ref_stride,
5983 const uint8_t* second_pred);
5984 RTCD_EXTERN unsigned int (*vpx_sad32x64_avg)(const uint8_t* src_ptr,
5985 int src_stride,
5986 const uint8_t* ref_ptr,
5987 int ref_stride,
5988 const uint8_t* second_pred);
5989
5990 void vpx_sad32x64x4d_c(const uint8_t* src_ptr,
5991 int src_stride,
5992 const uint8_t* const ref_array[],
5993 int ref_stride,
5994 uint32_t* sad_array);
5995 void vpx_sad32x64x4d_sse2(const uint8_t* src_ptr,
5996 int src_stride,
5997 const uint8_t* const ref_array[],
5998 int ref_stride,
5999 uint32_t* sad_array);
6000 #define vpx_sad32x64x4d vpx_sad32x64x4d_sse2
6001
6002 unsigned int vpx_sad4x4_c(const uint8_t* src_ptr,
6003 int src_stride,
6004 const uint8_t* ref_ptr,
6005 int ref_stride);
6006 unsigned int vpx_sad4x4_sse2(const uint8_t* src_ptr,
6007 int src_stride,
6008 const uint8_t* ref_ptr,
6009 int ref_stride);
6010 #define vpx_sad4x4 vpx_sad4x4_sse2
6011
6012 unsigned int vpx_sad4x4_avg_c(const uint8_t* src_ptr,
6013 int src_stride,
6014 const uint8_t* ref_ptr,
6015 int ref_stride,
6016 const uint8_t* second_pred);
6017 unsigned int vpx_sad4x4_avg_sse2(const uint8_t* src_ptr,
6018 int src_stride,
6019 const uint8_t* ref_ptr,
6020 int ref_stride,
6021 const uint8_t* second_pred);
6022 #define vpx_sad4x4_avg vpx_sad4x4_avg_sse2
6023
6024 void vpx_sad4x4x3_c(const uint8_t* src_ptr,
6025 int src_stride,
6026 const uint8_t* ref_ptr,
6027 int ref_stride,
6028 uint32_t* sad_array);
6029 void vpx_sad4x4x3_sse3(const uint8_t* src_ptr,
6030 int src_stride,
6031 const uint8_t* ref_ptr,
6032 int ref_stride,
6033 uint32_t* sad_array);
6034 RTCD_EXTERN void (*vpx_sad4x4x3)(const uint8_t* src_ptr,
6035 int src_stride,
6036 const uint8_t* ref_ptr,
6037 int ref_stride,
6038 uint32_t* sad_array);
6039
6040 void vpx_sad4x4x4d_c(const uint8_t* src_ptr,
6041 int src_stride,
6042 const uint8_t* const ref_array[],
6043 int ref_stride,
6044 uint32_t* sad_array);
6045 void vpx_sad4x4x4d_sse2(const uint8_t* src_ptr,
6046 int src_stride,
6047 const uint8_t* const ref_array[],
6048 int ref_stride,
6049 uint32_t* sad_array);
6050 #define vpx_sad4x4x4d vpx_sad4x4x4d_sse2
6051
6052 void vpx_sad4x4x8_c(const uint8_t* src_ptr,
6053 int src_stride,
6054 const uint8_t* ref_ptr,
6055 int ref_stride,
6056 uint32_t* sad_array);
6057 void vpx_sad4x4x8_sse4_1(const uint8_t* src_ptr,
6058 int src_stride,
6059 const uint8_t* ref_ptr,
6060 int ref_stride,
6061 uint32_t* sad_array);
6062 RTCD_EXTERN void (*vpx_sad4x4x8)(const uint8_t* src_ptr,
6063 int src_stride,
6064 const uint8_t* ref_ptr,
6065 int ref_stride,
6066 uint32_t* sad_array);
6067
6068 unsigned int vpx_sad4x8_c(const uint8_t* src_ptr,
6069 int src_stride,
6070 const uint8_t* ref_ptr,
6071 int ref_stride);
6072 unsigned int vpx_sad4x8_sse2(const uint8_t* src_ptr,
6073 int src_stride,
6074 const uint8_t* ref_ptr,
6075 int ref_stride);
6076 #define vpx_sad4x8 vpx_sad4x8_sse2
6077
6078 unsigned int vpx_sad4x8_avg_c(const uint8_t* src_ptr,
6079 int src_stride,
6080 const uint8_t* ref_ptr,
6081 int ref_stride,
6082 const uint8_t* second_pred);
6083 unsigned int vpx_sad4x8_avg_sse2(const uint8_t* src_ptr,
6084 int src_stride,
6085 const uint8_t* ref_ptr,
6086 int ref_stride,
6087 const uint8_t* second_pred);
6088 #define vpx_sad4x8_avg vpx_sad4x8_avg_sse2
6089
6090 void vpx_sad4x8x4d_c(const uint8_t* src_ptr,
6091 int src_stride,
6092 const uint8_t* const ref_array[],
6093 int ref_stride,
6094 uint32_t* sad_array);
6095 void vpx_sad4x8x4d_sse2(const uint8_t* src_ptr,
6096 int src_stride,
6097 const uint8_t* const ref_array[],
6098 int ref_stride,
6099 uint32_t* sad_array);
6100 #define vpx_sad4x8x4d vpx_sad4x8x4d_sse2
6101
6102 unsigned int vpx_sad64x32_c(const uint8_t* src_ptr,
6103 int src_stride,
6104 const uint8_t* ref_ptr,
6105 int ref_stride);
6106 unsigned int vpx_sad64x32_sse2(const uint8_t* src_ptr,
6107 int src_stride,
6108 const uint8_t* ref_ptr,
6109 int ref_stride);
6110 unsigned int vpx_sad64x32_avx2(const uint8_t* src_ptr,
6111 int src_stride,
6112 const uint8_t* ref_ptr,
6113 int ref_stride);
6114 RTCD_EXTERN unsigned int (*vpx_sad64x32)(const uint8_t* src_ptr,
6115 int src_stride,
6116 const uint8_t* ref_ptr,
6117 int ref_stride);
6118
6119 unsigned int vpx_sad64x32_avg_c(const uint8_t* src_ptr,
6120 int src_stride,
6121 const uint8_t* ref_ptr,
6122 int ref_stride,
6123 const uint8_t* second_pred);
6124 unsigned int vpx_sad64x32_avg_sse2(const uint8_t* src_ptr,
6125 int src_stride,
6126 const uint8_t* ref_ptr,
6127 int ref_stride,
6128 const uint8_t* second_pred);
6129 unsigned int vpx_sad64x32_avg_avx2(const uint8_t* src_ptr,
6130 int src_stride,
6131 const uint8_t* ref_ptr,
6132 int ref_stride,
6133 const uint8_t* second_pred);
6134 RTCD_EXTERN unsigned int (*vpx_sad64x32_avg)(const uint8_t* src_ptr,
6135 int src_stride,
6136 const uint8_t* ref_ptr,
6137 int ref_stride,
6138 const uint8_t* second_pred);
6139
6140 void vpx_sad64x32x4d_c(const uint8_t* src_ptr,
6141 int src_stride,
6142 const uint8_t* const ref_array[],
6143 int ref_stride,
6144 uint32_t* sad_array);
6145 void vpx_sad64x32x4d_sse2(const uint8_t* src_ptr,
6146 int src_stride,
6147 const uint8_t* const ref_array[],
6148 int ref_stride,
6149 uint32_t* sad_array);
6150 #define vpx_sad64x32x4d vpx_sad64x32x4d_sse2
6151
6152 unsigned int vpx_sad64x64_c(const uint8_t* src_ptr,
6153 int src_stride,
6154 const uint8_t* ref_ptr,
6155 int ref_stride);
6156 unsigned int vpx_sad64x64_sse2(const uint8_t* src_ptr,
6157 int src_stride,
6158 const uint8_t* ref_ptr,
6159 int ref_stride);
6160 unsigned int vpx_sad64x64_avx2(const uint8_t* src_ptr,
6161 int src_stride,
6162 const uint8_t* ref_ptr,
6163 int ref_stride);
6164 RTCD_EXTERN unsigned int (*vpx_sad64x64)(const uint8_t* src_ptr,
6165 int src_stride,
6166 const uint8_t* ref_ptr,
6167 int ref_stride);
6168
6169 unsigned int vpx_sad64x64_avg_c(const uint8_t* src_ptr,
6170 int src_stride,
6171 const uint8_t* ref_ptr,
6172 int ref_stride,
6173 const uint8_t* second_pred);
6174 unsigned int vpx_sad64x64_avg_sse2(const uint8_t* src_ptr,
6175 int src_stride,
6176 const uint8_t* ref_ptr,
6177 int ref_stride,
6178 const uint8_t* second_pred);
6179 unsigned int vpx_sad64x64_avg_avx2(const uint8_t* src_ptr,
6180 int src_stride,
6181 const uint8_t* ref_ptr,
6182 int ref_stride,
6183 const uint8_t* second_pred);
6184 RTCD_EXTERN unsigned int (*vpx_sad64x64_avg)(const uint8_t* src_ptr,
6185 int src_stride,
6186 const uint8_t* ref_ptr,
6187 int ref_stride,
6188 const uint8_t* second_pred);
6189
6190 void vpx_sad64x64x4d_c(const uint8_t* src_ptr,
6191 int src_stride,
6192 const uint8_t* const ref_array[],
6193 int ref_stride,
6194 uint32_t* sad_array);
6195 void vpx_sad64x64x4d_sse2(const uint8_t* src_ptr,
6196 int src_stride,
6197 const uint8_t* const ref_array[],
6198 int ref_stride,
6199 uint32_t* sad_array);
6200 void vpx_sad64x64x4d_avx2(const uint8_t* src_ptr,
6201 int src_stride,
6202 const uint8_t* const ref_array[],
6203 int ref_stride,
6204 uint32_t* sad_array);
6205 RTCD_EXTERN void (*vpx_sad64x64x4d)(const uint8_t* src_ptr,
6206 int src_stride,
6207 const uint8_t* const ref_array[],
6208 int ref_stride,
6209 uint32_t* sad_array);
6210
6211 unsigned int vpx_sad8x16_c(const uint8_t* src_ptr,
6212 int src_stride,
6213 const uint8_t* ref_ptr,
6214 int ref_stride);
6215 unsigned int vpx_sad8x16_sse2(const uint8_t* src_ptr,
6216 int src_stride,
6217 const uint8_t* ref_ptr,
6218 int ref_stride);
6219 #define vpx_sad8x16 vpx_sad8x16_sse2
6220
6221 unsigned int vpx_sad8x16_avg_c(const uint8_t* src_ptr,
6222 int src_stride,
6223 const uint8_t* ref_ptr,
6224 int ref_stride,
6225 const uint8_t* second_pred);
6226 unsigned int vpx_sad8x16_avg_sse2(const uint8_t* src_ptr,
6227 int src_stride,
6228 const uint8_t* ref_ptr,
6229 int ref_stride,
6230 const uint8_t* second_pred);
6231 #define vpx_sad8x16_avg vpx_sad8x16_avg_sse2
6232
6233 void vpx_sad8x16x3_c(const uint8_t* src_ptr,
6234 int src_stride,
6235 const uint8_t* ref_ptr,
6236 int ref_stride,
6237 uint32_t* sad_array);
6238 void vpx_sad8x16x3_sse3(const uint8_t* src_ptr,
6239 int src_stride,
6240 const uint8_t* ref_ptr,
6241 int ref_stride,
6242 uint32_t* sad_array);
6243 RTCD_EXTERN void (*vpx_sad8x16x3)(const uint8_t* src_ptr,
6244 int src_stride,
6245 const uint8_t* ref_ptr,
6246 int ref_stride,
6247 uint32_t* sad_array);
6248
6249 void vpx_sad8x16x4d_c(const uint8_t* src_ptr,
6250 int src_stride,
6251 const uint8_t* const ref_array[],
6252 int ref_stride,
6253 uint32_t* sad_array);
6254 void vpx_sad8x16x4d_sse2(const uint8_t* src_ptr,
6255 int src_stride,
6256 const uint8_t* const ref_array[],
6257 int ref_stride,
6258 uint32_t* sad_array);
6259 #define vpx_sad8x16x4d vpx_sad8x16x4d_sse2
6260
6261 void vpx_sad8x16x8_c(const uint8_t* src_ptr,
6262 int src_stride,
6263 const uint8_t* ref_ptr,
6264 int ref_stride,
6265 uint32_t* sad_array);
6266 void vpx_sad8x16x8_sse4_1(const uint8_t* src_ptr,
6267 int src_stride,
6268 const uint8_t* ref_ptr,
6269 int ref_stride,
6270 uint32_t* sad_array);
6271 RTCD_EXTERN void (*vpx_sad8x16x8)(const uint8_t* src_ptr,
6272 int src_stride,
6273 const uint8_t* ref_ptr,
6274 int ref_stride,
6275 uint32_t* sad_array);
6276
6277 unsigned int vpx_sad8x4_c(const uint8_t* src_ptr,
6278 int src_stride,
6279 const uint8_t* ref_ptr,
6280 int ref_stride);
6281 unsigned int vpx_sad8x4_sse2(const uint8_t* src_ptr,
6282 int src_stride,
6283 const uint8_t* ref_ptr,
6284 int ref_stride);
6285 #define vpx_sad8x4 vpx_sad8x4_sse2
6286
6287 unsigned int vpx_sad8x4_avg_c(const uint8_t* src_ptr,
6288 int src_stride,
6289 const uint8_t* ref_ptr,
6290 int ref_stride,
6291 const uint8_t* second_pred);
6292 unsigned int vpx_sad8x4_avg_sse2(const uint8_t* src_ptr,
6293 int src_stride,
6294 const uint8_t* ref_ptr,
6295 int ref_stride,
6296 const uint8_t* second_pred);
6297 #define vpx_sad8x4_avg vpx_sad8x4_avg_sse2
6298
6299 void vpx_sad8x4x4d_c(const uint8_t* src_ptr,
6300 int src_stride,
6301 const uint8_t* const ref_array[],
6302 int ref_stride,
6303 uint32_t* sad_array);
6304 void vpx_sad8x4x4d_sse2(const uint8_t* src_ptr,
6305 int src_stride,
6306 const uint8_t* const ref_array[],
6307 int ref_stride,
6308 uint32_t* sad_array);
6309 #define vpx_sad8x4x4d vpx_sad8x4x4d_sse2
6310
6311 unsigned int vpx_sad8x8_c(const uint8_t* src_ptr,
6312 int src_stride,
6313 const uint8_t* ref_ptr,
6314 int ref_stride);
6315 unsigned int vpx_sad8x8_sse2(const uint8_t* src_ptr,
6316 int src_stride,
6317 const uint8_t* ref_ptr,
6318 int ref_stride);
6319 #define vpx_sad8x8 vpx_sad8x8_sse2
6320
6321 unsigned int vpx_sad8x8_avg_c(const uint8_t* src_ptr,
6322 int src_stride,
6323 const uint8_t* ref_ptr,
6324 int ref_stride,
6325 const uint8_t* second_pred);
6326 unsigned int vpx_sad8x8_avg_sse2(const uint8_t* src_ptr,
6327 int src_stride,
6328 const uint8_t* ref_ptr,
6329 int ref_stride,
6330 const uint8_t* second_pred);
6331 #define vpx_sad8x8_avg vpx_sad8x8_avg_sse2
6332
6333 void vpx_sad8x8x3_c(const uint8_t* src_ptr,
6334 int src_stride,
6335 const uint8_t* ref_ptr,
6336 int ref_stride,
6337 uint32_t* sad_array);
6338 void vpx_sad8x8x3_sse3(const uint8_t* src_ptr,
6339 int src_stride,
6340 const uint8_t* ref_ptr,
6341 int ref_stride,
6342 uint32_t* sad_array);
6343 RTCD_EXTERN void (*vpx_sad8x8x3)(const uint8_t* src_ptr,
6344 int src_stride,
6345 const uint8_t* ref_ptr,
6346 int ref_stride,
6347 uint32_t* sad_array);
6348
6349 void vpx_sad8x8x4d_c(const uint8_t* src_ptr,
6350 int src_stride,
6351 const uint8_t* const ref_array[],
6352 int ref_stride,
6353 uint32_t* sad_array);
6354 void vpx_sad8x8x4d_sse2(const uint8_t* src_ptr,
6355 int src_stride,
6356 const uint8_t* const ref_array[],
6357 int ref_stride,
6358 uint32_t* sad_array);
6359 #define vpx_sad8x8x4d vpx_sad8x8x4d_sse2
6360
6361 void vpx_sad8x8x8_c(const uint8_t* src_ptr,
6362 int src_stride,
6363 const uint8_t* ref_ptr,
6364 int ref_stride,
6365 uint32_t* sad_array);
6366 void vpx_sad8x8x8_sse4_1(const uint8_t* src_ptr,
6367 int src_stride,
6368 const uint8_t* ref_ptr,
6369 int ref_stride,
6370 uint32_t* sad_array);
6371 RTCD_EXTERN void (*vpx_sad8x8x8)(const uint8_t* src_ptr,
6372 int src_stride,
6373 const uint8_t* ref_ptr,
6374 int ref_stride,
6375 uint32_t* sad_array);
6376
6377 int vpx_satd_c(const tran_low_t* coeff, int length);
6378 int vpx_satd_sse2(const tran_low_t* coeff, int length);
6379 int vpx_satd_avx2(const tran_low_t* coeff, int length);
6380 RTCD_EXTERN int (*vpx_satd)(const tran_low_t* coeff, int length);
6381
6382 void vpx_scaled_2d_c(const uint8_t* src,
6383 ptrdiff_t src_stride,
6384 uint8_t* dst,
6385 ptrdiff_t dst_stride,
6386 const InterpKernel* filter,
6387 int x0_q4,
6388 int x_step_q4,
6389 int y0_q4,
6390 int y_step_q4,
6391 int w,
6392 int h);
6393 void vpx_scaled_2d_ssse3(const uint8_t* src,
6394 ptrdiff_t src_stride,
6395 uint8_t* dst,
6396 ptrdiff_t dst_stride,
6397 const InterpKernel* filter,
6398 int x0_q4,
6399 int x_step_q4,
6400 int y0_q4,
6401 int y_step_q4,
6402 int w,
6403 int h);
6404 RTCD_EXTERN void (*vpx_scaled_2d)(const uint8_t* src,
6405 ptrdiff_t src_stride,
6406 uint8_t* dst,
6407 ptrdiff_t dst_stride,
6408 const InterpKernel* filter,
6409 int x0_q4,
6410 int x_step_q4,
6411 int y0_q4,
6412 int y_step_q4,
6413 int w,
6414 int h);
6415
6416 void vpx_scaled_avg_2d_c(const uint8_t* src,
6417 ptrdiff_t src_stride,
6418 uint8_t* dst,
6419 ptrdiff_t dst_stride,
6420 const InterpKernel* filter,
6421 int x0_q4,
6422 int x_step_q4,
6423 int y0_q4,
6424 int y_step_q4,
6425 int w,
6426 int h);
6427 #define vpx_scaled_avg_2d vpx_scaled_avg_2d_c
6428
6429 void vpx_scaled_avg_horiz_c(const uint8_t* src,
6430 ptrdiff_t src_stride,
6431 uint8_t* dst,
6432 ptrdiff_t dst_stride,
6433 const InterpKernel* filter,
6434 int x0_q4,
6435 int x_step_q4,
6436 int y0_q4,
6437 int y_step_q4,
6438 int w,
6439 int h);
6440 #define vpx_scaled_avg_horiz vpx_scaled_avg_horiz_c
6441
6442 void vpx_scaled_avg_vert_c(const uint8_t* src,
6443 ptrdiff_t src_stride,
6444 uint8_t* dst,
6445 ptrdiff_t dst_stride,
6446 const InterpKernel* filter,
6447 int x0_q4,
6448 int x_step_q4,
6449 int y0_q4,
6450 int y_step_q4,
6451 int w,
6452 int h);
6453 #define vpx_scaled_avg_vert vpx_scaled_avg_vert_c
6454
6455 void vpx_scaled_horiz_c(const uint8_t* src,
6456 ptrdiff_t src_stride,
6457 uint8_t* dst,
6458 ptrdiff_t dst_stride,
6459 const InterpKernel* filter,
6460 int x0_q4,
6461 int x_step_q4,
6462 int y0_q4,
6463 int y_step_q4,
6464 int w,
6465 int h);
6466 #define vpx_scaled_horiz vpx_scaled_horiz_c
6467
6468 void vpx_scaled_vert_c(const uint8_t* src,
6469 ptrdiff_t src_stride,
6470 uint8_t* dst,
6471 ptrdiff_t dst_stride,
6472 const InterpKernel* filter,
6473 int x0_q4,
6474 int x_step_q4,
6475 int y0_q4,
6476 int y_step_q4,
6477 int w,
6478 int h);
6479 #define vpx_scaled_vert vpx_scaled_vert_c
6480
6481 uint32_t vpx_sub_pixel_avg_variance16x16_c(const uint8_t* src_ptr,
6482 int src_stride,
6483 int x_offset,
6484 int y_offset,
6485 const uint8_t* ref_ptr,
6486 int ref_stride,
6487 uint32_t* sse,
6488 const uint8_t* second_pred);
6489 uint32_t vpx_sub_pixel_avg_variance16x16_sse2(const uint8_t* src_ptr,
6490 int src_stride,
6491 int x_offset,
6492 int y_offset,
6493 const uint8_t* ref_ptr,
6494 int ref_stride,
6495 uint32_t* sse,
6496 const uint8_t* second_pred);
6497 uint32_t vpx_sub_pixel_avg_variance16x16_ssse3(const uint8_t* src_ptr,
6498 int src_stride,
6499 int x_offset,
6500 int y_offset,
6501 const uint8_t* ref_ptr,
6502 int ref_stride,
6503 uint32_t* sse,
6504 const uint8_t* second_pred);
6505 RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance16x16)(
6506 const uint8_t* src_ptr,
6507 int src_stride,
6508 int x_offset,
6509 int y_offset,
6510 const uint8_t* ref_ptr,
6511 int ref_stride,
6512 uint32_t* sse,
6513 const uint8_t* second_pred);
6514
6515 uint32_t vpx_sub_pixel_avg_variance16x32_c(const uint8_t* src_ptr,
6516 int src_stride,
6517 int x_offset,
6518 int y_offset,
6519 const uint8_t* ref_ptr,
6520 int ref_stride,
6521 uint32_t* sse,
6522 const uint8_t* second_pred);
6523 uint32_t vpx_sub_pixel_avg_variance16x32_sse2(const uint8_t* src_ptr,
6524 int src_stride,
6525 int x_offset,
6526 int y_offset,
6527 const uint8_t* ref_ptr,
6528 int ref_stride,
6529 uint32_t* sse,
6530 const uint8_t* second_pred);
6531 uint32_t vpx_sub_pixel_avg_variance16x32_ssse3(const uint8_t* src_ptr,
6532 int src_stride,
6533 int x_offset,
6534 int y_offset,
6535 const uint8_t* ref_ptr,
6536 int ref_stride,
6537 uint32_t* sse,
6538 const uint8_t* second_pred);
6539 RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance16x32)(
6540 const uint8_t* src_ptr,
6541 int src_stride,
6542 int x_offset,
6543 int y_offset,
6544 const uint8_t* ref_ptr,
6545 int ref_stride,
6546 uint32_t* sse,
6547 const uint8_t* second_pred);
6548
6549 uint32_t vpx_sub_pixel_avg_variance16x8_c(const uint8_t* src_ptr,
6550 int src_stride,
6551 int x_offset,
6552 int y_offset,
6553 const uint8_t* ref_ptr,
6554 int ref_stride,
6555 uint32_t* sse,
6556 const uint8_t* second_pred);
6557 uint32_t vpx_sub_pixel_avg_variance16x8_sse2(const uint8_t* src_ptr,
6558 int src_stride,
6559 int x_offset,
6560 int y_offset,
6561 const uint8_t* ref_ptr,
6562 int ref_stride,
6563 uint32_t* sse,
6564 const uint8_t* second_pred);
6565 uint32_t vpx_sub_pixel_avg_variance16x8_ssse3(const uint8_t* src_ptr,
6566 int src_stride,
6567 int x_offset,
6568 int y_offset,
6569 const uint8_t* ref_ptr,
6570 int ref_stride,
6571 uint32_t* sse,
6572 const uint8_t* second_pred);
6573 RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance16x8)(
6574 const uint8_t* src_ptr,
6575 int src_stride,
6576 int x_offset,
6577 int y_offset,
6578 const uint8_t* ref_ptr,
6579 int ref_stride,
6580 uint32_t* sse,
6581 const uint8_t* second_pred);
6582
6583 uint32_t vpx_sub_pixel_avg_variance32x16_c(const uint8_t* src_ptr,
6584 int src_stride,
6585 int x_offset,
6586 int y_offset,
6587 const uint8_t* ref_ptr,
6588 int ref_stride,
6589 uint32_t* sse,
6590 const uint8_t* second_pred);
6591 uint32_t vpx_sub_pixel_avg_variance32x16_sse2(const uint8_t* src_ptr,
6592 int src_stride,
6593 int x_offset,
6594 int y_offset,
6595 const uint8_t* ref_ptr,
6596 int ref_stride,
6597 uint32_t* sse,
6598 const uint8_t* second_pred);
6599 uint32_t vpx_sub_pixel_avg_variance32x16_ssse3(const uint8_t* src_ptr,
6600 int src_stride,
6601 int x_offset,
6602 int y_offset,
6603 const uint8_t* ref_ptr,
6604 int ref_stride,
6605 uint32_t* sse,
6606 const uint8_t* second_pred);
6607 RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance32x16)(
6608 const uint8_t* src_ptr,
6609 int src_stride,
6610 int x_offset,
6611 int y_offset,
6612 const uint8_t* ref_ptr,
6613 int ref_stride,
6614 uint32_t* sse,
6615 const uint8_t* second_pred);
6616
6617 uint32_t vpx_sub_pixel_avg_variance32x32_c(const uint8_t* src_ptr,
6618 int src_stride,
6619 int x_offset,
6620 int y_offset,
6621 const uint8_t* ref_ptr,
6622 int ref_stride,
6623 uint32_t* sse,
6624 const uint8_t* second_pred);
6625 uint32_t vpx_sub_pixel_avg_variance32x32_sse2(const uint8_t* src_ptr,
6626 int src_stride,
6627 int x_offset,
6628 int y_offset,
6629 const uint8_t* ref_ptr,
6630 int ref_stride,
6631 uint32_t* sse,
6632 const uint8_t* second_pred);
6633 uint32_t vpx_sub_pixel_avg_variance32x32_ssse3(const uint8_t* src_ptr,
6634 int src_stride,
6635 int x_offset,
6636 int y_offset,
6637 const uint8_t* ref_ptr,
6638 int ref_stride,
6639 uint32_t* sse,
6640 const uint8_t* second_pred);
6641 uint32_t vpx_sub_pixel_avg_variance32x32_avx2(const uint8_t* src_ptr,
6642 int src_stride,
6643 int x_offset,
6644 int y_offset,
6645 const uint8_t* ref_ptr,
6646 int ref_stride,
6647 uint32_t* sse,
6648 const uint8_t* second_pred);
6649 RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance32x32)(
6650 const uint8_t* src_ptr,
6651 int src_stride,
6652 int x_offset,
6653 int y_offset,
6654 const uint8_t* ref_ptr,
6655 int ref_stride,
6656 uint32_t* sse,
6657 const uint8_t* second_pred);
6658
6659 uint32_t vpx_sub_pixel_avg_variance32x64_c(const uint8_t* src_ptr,
6660 int src_stride,
6661 int x_offset,
6662 int y_offset,
6663 const uint8_t* ref_ptr,
6664 int ref_stride,
6665 uint32_t* sse,
6666 const uint8_t* second_pred);
6667 uint32_t vpx_sub_pixel_avg_variance32x64_sse2(const uint8_t* src_ptr,
6668 int src_stride,
6669 int x_offset,
6670 int y_offset,
6671 const uint8_t* ref_ptr,
6672 int ref_stride,
6673 uint32_t* sse,
6674 const uint8_t* second_pred);
6675 uint32_t vpx_sub_pixel_avg_variance32x64_ssse3(const uint8_t* src_ptr,
6676 int src_stride,
6677 int x_offset,
6678 int y_offset,
6679 const uint8_t* ref_ptr,
6680 int ref_stride,
6681 uint32_t* sse,
6682 const uint8_t* second_pred);
6683 RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance32x64)(
6684 const uint8_t* src_ptr,
6685 int src_stride,
6686 int x_offset,
6687 int y_offset,
6688 const uint8_t* ref_ptr,
6689 int ref_stride,
6690 uint32_t* sse,
6691 const uint8_t* second_pred);
6692
6693 uint32_t vpx_sub_pixel_avg_variance4x4_c(const uint8_t* src_ptr,
6694 int src_stride,
6695 int x_offset,
6696 int y_offset,
6697 const uint8_t* ref_ptr,
6698 int ref_stride,
6699 uint32_t* sse,
6700 const uint8_t* second_pred);
6701 uint32_t vpx_sub_pixel_avg_variance4x4_sse2(const uint8_t* src_ptr,
6702 int src_stride,
6703 int x_offset,
6704 int y_offset,
6705 const uint8_t* ref_ptr,
6706 int ref_stride,
6707 uint32_t* sse,
6708 const uint8_t* second_pred);
6709 uint32_t vpx_sub_pixel_avg_variance4x4_ssse3(const uint8_t* src_ptr,
6710 int src_stride,
6711 int x_offset,
6712 int y_offset,
6713 const uint8_t* ref_ptr,
6714 int ref_stride,
6715 uint32_t* sse,
6716 const uint8_t* second_pred);
6717 RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance4x4)(
6718 const uint8_t* src_ptr,
6719 int src_stride,
6720 int x_offset,
6721 int y_offset,
6722 const uint8_t* ref_ptr,
6723 int ref_stride,
6724 uint32_t* sse,
6725 const uint8_t* second_pred);
6726
6727 uint32_t vpx_sub_pixel_avg_variance4x8_c(const uint8_t* src_ptr,
6728 int src_stride,
6729 int x_offset,
6730 int y_offset,
6731 const uint8_t* ref_ptr,
6732 int ref_stride,
6733 uint32_t* sse,
6734 const uint8_t* second_pred);
6735 uint32_t vpx_sub_pixel_avg_variance4x8_sse2(const uint8_t* src_ptr,
6736 int src_stride,
6737 int x_offset,
6738 int y_offset,
6739 const uint8_t* ref_ptr,
6740 int ref_stride,
6741 uint32_t* sse,
6742 const uint8_t* second_pred);
6743 uint32_t vpx_sub_pixel_avg_variance4x8_ssse3(const uint8_t* src_ptr,
6744 int src_stride,
6745 int x_offset,
6746 int y_offset,
6747 const uint8_t* ref_ptr,
6748 int ref_stride,
6749 uint32_t* sse,
6750 const uint8_t* second_pred);
6751 RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance4x8)(
6752 const uint8_t* src_ptr,
6753 int src_stride,
6754 int x_offset,
6755 int y_offset,
6756 const uint8_t* ref_ptr,
6757 int ref_stride,
6758 uint32_t* sse,
6759 const uint8_t* second_pred);
6760
6761 uint32_t vpx_sub_pixel_avg_variance64x32_c(const uint8_t* src_ptr,
6762 int src_stride,
6763 int x_offset,
6764 int y_offset,
6765 const uint8_t* ref_ptr,
6766 int ref_stride,
6767 uint32_t* sse,
6768 const uint8_t* second_pred);
6769 uint32_t vpx_sub_pixel_avg_variance64x32_sse2(const uint8_t* src_ptr,
6770 int src_stride,
6771 int x_offset,
6772 int y_offset,
6773 const uint8_t* ref_ptr,
6774 int ref_stride,
6775 uint32_t* sse,
6776 const uint8_t* second_pred);
6777 uint32_t vpx_sub_pixel_avg_variance64x32_ssse3(const uint8_t* src_ptr,
6778 int src_stride,
6779 int x_offset,
6780 int y_offset,
6781 const uint8_t* ref_ptr,
6782 int ref_stride,
6783 uint32_t* sse,
6784 const uint8_t* second_pred);
6785 RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance64x32)(
6786 const uint8_t* src_ptr,
6787 int src_stride,
6788 int x_offset,
6789 int y_offset,
6790 const uint8_t* ref_ptr,
6791 int ref_stride,
6792 uint32_t* sse,
6793 const uint8_t* second_pred);
6794
6795 uint32_t vpx_sub_pixel_avg_variance64x64_c(const uint8_t* src_ptr,
6796 int src_stride,
6797 int x_offset,
6798 int y_offset,
6799 const uint8_t* ref_ptr,
6800 int ref_stride,
6801 uint32_t* sse,
6802 const uint8_t* second_pred);
6803 uint32_t vpx_sub_pixel_avg_variance64x64_sse2(const uint8_t* src_ptr,
6804 int src_stride,
6805 int x_offset,
6806 int y_offset,
6807 const uint8_t* ref_ptr,
6808 int ref_stride,
6809 uint32_t* sse,
6810 const uint8_t* second_pred);
6811 uint32_t vpx_sub_pixel_avg_variance64x64_ssse3(const uint8_t* src_ptr,
6812 int src_stride,
6813 int x_offset,
6814 int y_offset,
6815 const uint8_t* ref_ptr,
6816 int ref_stride,
6817 uint32_t* sse,
6818 const uint8_t* second_pred);
6819 uint32_t vpx_sub_pixel_avg_variance64x64_avx2(const uint8_t* src_ptr,
6820 int src_stride,
6821 int x_offset,
6822 int y_offset,
6823 const uint8_t* ref_ptr,
6824 int ref_stride,
6825 uint32_t* sse,
6826 const uint8_t* second_pred);
6827 RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance64x64)(
6828 const uint8_t* src_ptr,
6829 int src_stride,
6830 int x_offset,
6831 int y_offset,
6832 const uint8_t* ref_ptr,
6833 int ref_stride,
6834 uint32_t* sse,
6835 const uint8_t* second_pred);
6836
6837 uint32_t vpx_sub_pixel_avg_variance8x16_c(const uint8_t* src_ptr,
6838 int src_stride,
6839 int x_offset,
6840 int y_offset,
6841 const uint8_t* ref_ptr,
6842 int ref_stride,
6843 uint32_t* sse,
6844 const uint8_t* second_pred);
6845 uint32_t vpx_sub_pixel_avg_variance8x16_sse2(const uint8_t* src_ptr,
6846 int src_stride,
6847 int x_offset,
6848 int y_offset,
6849 const uint8_t* ref_ptr,
6850 int ref_stride,
6851 uint32_t* sse,
6852 const uint8_t* second_pred);
6853 uint32_t vpx_sub_pixel_avg_variance8x16_ssse3(const uint8_t* src_ptr,
6854 int src_stride,
6855 int x_offset,
6856 int y_offset,
6857 const uint8_t* ref_ptr,
6858 int ref_stride,
6859 uint32_t* sse,
6860 const uint8_t* second_pred);
6861 RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance8x16)(
6862 const uint8_t* src_ptr,
6863 int src_stride,
6864 int x_offset,
6865 int y_offset,
6866 const uint8_t* ref_ptr,
6867 int ref_stride,
6868 uint32_t* sse,
6869 const uint8_t* second_pred);
6870
6871 uint32_t vpx_sub_pixel_avg_variance8x4_c(const uint8_t* src_ptr,
6872 int src_stride,
6873 int x_offset,
6874 int y_offset,
6875 const uint8_t* ref_ptr,
6876 int ref_stride,
6877 uint32_t* sse,
6878 const uint8_t* second_pred);
6879 uint32_t vpx_sub_pixel_avg_variance8x4_sse2(const uint8_t* src_ptr,
6880 int src_stride,
6881 int x_offset,
6882 int y_offset,
6883 const uint8_t* ref_ptr,
6884 int ref_stride,
6885 uint32_t* sse,
6886 const uint8_t* second_pred);
6887 uint32_t vpx_sub_pixel_avg_variance8x4_ssse3(const uint8_t* src_ptr,
6888 int src_stride,
6889 int x_offset,
6890 int y_offset,
6891 const uint8_t* ref_ptr,
6892 int ref_stride,
6893 uint32_t* sse,
6894 const uint8_t* second_pred);
6895 RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance8x4)(
6896 const uint8_t* src_ptr,
6897 int src_stride,
6898 int x_offset,
6899 int y_offset,
6900 const uint8_t* ref_ptr,
6901 int ref_stride,
6902 uint32_t* sse,
6903 const uint8_t* second_pred);
6904
6905 uint32_t vpx_sub_pixel_avg_variance8x8_c(const uint8_t* src_ptr,
6906 int src_stride,
6907 int x_offset,
6908 int y_offset,
6909 const uint8_t* ref_ptr,
6910 int ref_stride,
6911 uint32_t* sse,
6912 const uint8_t* second_pred);
6913 uint32_t vpx_sub_pixel_avg_variance8x8_sse2(const uint8_t* src_ptr,
6914 int src_stride,
6915 int x_offset,
6916 int y_offset,
6917 const uint8_t* ref_ptr,
6918 int ref_stride,
6919 uint32_t* sse,
6920 const uint8_t* second_pred);
6921 uint32_t vpx_sub_pixel_avg_variance8x8_ssse3(const uint8_t* src_ptr,
6922 int src_stride,
6923 int x_offset,
6924 int y_offset,
6925 const uint8_t* ref_ptr,
6926 int ref_stride,
6927 uint32_t* sse,
6928 const uint8_t* second_pred);
6929 RTCD_EXTERN uint32_t (*vpx_sub_pixel_avg_variance8x8)(
6930 const uint8_t* src_ptr,
6931 int src_stride,
6932 int x_offset,
6933 int y_offset,
6934 const uint8_t* ref_ptr,
6935 int ref_stride,
6936 uint32_t* sse,
6937 const uint8_t* second_pred);
6938
6939 uint32_t vpx_sub_pixel_variance16x16_c(const uint8_t* src_ptr,
6940 int src_stride,
6941 int x_offset,
6942 int y_offset,
6943 const uint8_t* ref_ptr,
6944 int ref_stride,
6945 uint32_t* sse);
6946 uint32_t vpx_sub_pixel_variance16x16_sse2(const uint8_t* src_ptr,
6947 int src_stride,
6948 int x_offset,
6949 int y_offset,
6950 const uint8_t* ref_ptr,
6951 int ref_stride,
6952 uint32_t* sse);
6953 uint32_t vpx_sub_pixel_variance16x16_ssse3(const uint8_t* src_ptr,
6954 int src_stride,
6955 int x_offset,
6956 int y_offset,
6957 const uint8_t* ref_ptr,
6958 int ref_stride,
6959 uint32_t* sse);
6960 RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance16x16)(const uint8_t* src_ptr,
6961 int src_stride,
6962 int x_offset,
6963 int y_offset,
6964 const uint8_t* ref_ptr,
6965 int ref_stride,
6966 uint32_t* sse);
6967
6968 uint32_t vpx_sub_pixel_variance16x32_c(const uint8_t* src_ptr,
6969 int src_stride,
6970 int x_offset,
6971 int y_offset,
6972 const uint8_t* ref_ptr,
6973 int ref_stride,
6974 uint32_t* sse);
6975 uint32_t vpx_sub_pixel_variance16x32_sse2(const uint8_t* src_ptr,
6976 int src_stride,
6977 int x_offset,
6978 int y_offset,
6979 const uint8_t* ref_ptr,
6980 int ref_stride,
6981 uint32_t* sse);
6982 uint32_t vpx_sub_pixel_variance16x32_ssse3(const uint8_t* src_ptr,
6983 int src_stride,
6984 int x_offset,
6985 int y_offset,
6986 const uint8_t* ref_ptr,
6987 int ref_stride,
6988 uint32_t* sse);
6989 RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance16x32)(const uint8_t* src_ptr,
6990 int src_stride,
6991 int x_offset,
6992 int y_offset,
6993 const uint8_t* ref_ptr,
6994 int ref_stride,
6995 uint32_t* sse);
6996
6997 uint32_t vpx_sub_pixel_variance16x8_c(const uint8_t* src_ptr,
6998 int src_stride,
6999 int x_offset,
7000 int y_offset,
7001 const uint8_t* ref_ptr,
7002 int ref_stride,
7003 uint32_t* sse);
7004 uint32_t vpx_sub_pixel_variance16x8_sse2(const uint8_t* src_ptr,
7005 int src_stride,
7006 int x_offset,
7007 int y_offset,
7008 const uint8_t* ref_ptr,
7009 int ref_stride,
7010 uint32_t* sse);
7011 uint32_t vpx_sub_pixel_variance16x8_ssse3(const uint8_t* src_ptr,
7012 int src_stride,
7013 int x_offset,
7014 int y_offset,
7015 const uint8_t* ref_ptr,
7016 int ref_stride,
7017 uint32_t* sse);
7018 RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance16x8)(const uint8_t* src_ptr,
7019 int src_stride,
7020 int x_offset,
7021 int y_offset,
7022 const uint8_t* ref_ptr,
7023 int ref_stride,
7024 uint32_t* sse);
7025
7026 uint32_t vpx_sub_pixel_variance32x16_c(const uint8_t* src_ptr,
7027 int src_stride,
7028 int x_offset,
7029 int y_offset,
7030 const uint8_t* ref_ptr,
7031 int ref_stride,
7032 uint32_t* sse);
7033 uint32_t vpx_sub_pixel_variance32x16_sse2(const uint8_t* src_ptr,
7034 int src_stride,
7035 int x_offset,
7036 int y_offset,
7037 const uint8_t* ref_ptr,
7038 int ref_stride,
7039 uint32_t* sse);
7040 uint32_t vpx_sub_pixel_variance32x16_ssse3(const uint8_t* src_ptr,
7041 int src_stride,
7042 int x_offset,
7043 int y_offset,
7044 const uint8_t* ref_ptr,
7045 int ref_stride,
7046 uint32_t* sse);
7047 RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance32x16)(const uint8_t* src_ptr,
7048 int src_stride,
7049 int x_offset,
7050 int y_offset,
7051 const uint8_t* ref_ptr,
7052 int ref_stride,
7053 uint32_t* sse);
7054
7055 uint32_t vpx_sub_pixel_variance32x32_c(const uint8_t* src_ptr,
7056 int src_stride,
7057 int x_offset,
7058 int y_offset,
7059 const uint8_t* ref_ptr,
7060 int ref_stride,
7061 uint32_t* sse);
7062 uint32_t vpx_sub_pixel_variance32x32_sse2(const uint8_t* src_ptr,
7063 int src_stride,
7064 int x_offset,
7065 int y_offset,
7066 const uint8_t* ref_ptr,
7067 int ref_stride,
7068 uint32_t* sse);
7069 uint32_t vpx_sub_pixel_variance32x32_ssse3(const uint8_t* src_ptr,
7070 int src_stride,
7071 int x_offset,
7072 int y_offset,
7073 const uint8_t* ref_ptr,
7074 int ref_stride,
7075 uint32_t* sse);
7076 uint32_t vpx_sub_pixel_variance32x32_avx2(const uint8_t* src_ptr,
7077 int src_stride,
7078 int x_offset,
7079 int y_offset,
7080 const uint8_t* ref_ptr,
7081 int ref_stride,
7082 uint32_t* sse);
7083 RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance32x32)(const uint8_t* src_ptr,
7084 int src_stride,
7085 int x_offset,
7086 int y_offset,
7087 const uint8_t* ref_ptr,
7088 int ref_stride,
7089 uint32_t* sse);
7090
7091 uint32_t vpx_sub_pixel_variance32x64_c(const uint8_t* src_ptr,
7092 int src_stride,
7093 int x_offset,
7094 int y_offset,
7095 const uint8_t* ref_ptr,
7096 int ref_stride,
7097 uint32_t* sse);
7098 uint32_t vpx_sub_pixel_variance32x64_sse2(const uint8_t* src_ptr,
7099 int src_stride,
7100 int x_offset,
7101 int y_offset,
7102 const uint8_t* ref_ptr,
7103 int ref_stride,
7104 uint32_t* sse);
7105 uint32_t vpx_sub_pixel_variance32x64_ssse3(const uint8_t* src_ptr,
7106 int src_stride,
7107 int x_offset,
7108 int y_offset,
7109 const uint8_t* ref_ptr,
7110 int ref_stride,
7111 uint32_t* sse);
7112 RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance32x64)(const uint8_t* src_ptr,
7113 int src_stride,
7114 int x_offset,
7115 int y_offset,
7116 const uint8_t* ref_ptr,
7117 int ref_stride,
7118 uint32_t* sse);
7119
7120 uint32_t vpx_sub_pixel_variance4x4_c(const uint8_t* src_ptr,
7121 int src_stride,
7122 int x_offset,
7123 int y_offset,
7124 const uint8_t* ref_ptr,
7125 int ref_stride,
7126 uint32_t* sse);
7127 uint32_t vpx_sub_pixel_variance4x4_sse2(const uint8_t* src_ptr,
7128 int src_stride,
7129 int x_offset,
7130 int y_offset,
7131 const uint8_t* ref_ptr,
7132 int ref_stride,
7133 uint32_t* sse);
7134 uint32_t vpx_sub_pixel_variance4x4_ssse3(const uint8_t* src_ptr,
7135 int src_stride,
7136 int x_offset,
7137 int y_offset,
7138 const uint8_t* ref_ptr,
7139 int ref_stride,
7140 uint32_t* sse);
7141 RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance4x4)(const uint8_t* src_ptr,
7142 int src_stride,
7143 int x_offset,
7144 int y_offset,
7145 const uint8_t* ref_ptr,
7146 int ref_stride,
7147 uint32_t* sse);
7148
7149 uint32_t vpx_sub_pixel_variance4x8_c(const uint8_t* src_ptr,
7150 int src_stride,
7151 int x_offset,
7152 int y_offset,
7153 const uint8_t* ref_ptr,
7154 int ref_stride,
7155 uint32_t* sse);
7156 uint32_t vpx_sub_pixel_variance4x8_sse2(const uint8_t* src_ptr,
7157 int src_stride,
7158 int x_offset,
7159 int y_offset,
7160 const uint8_t* ref_ptr,
7161 int ref_stride,
7162 uint32_t* sse);
7163 uint32_t vpx_sub_pixel_variance4x8_ssse3(const uint8_t* src_ptr,
7164 int src_stride,
7165 int x_offset,
7166 int y_offset,
7167 const uint8_t* ref_ptr,
7168 int ref_stride,
7169 uint32_t* sse);
7170 RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance4x8)(const uint8_t* src_ptr,
7171 int src_stride,
7172 int x_offset,
7173 int y_offset,
7174 const uint8_t* ref_ptr,
7175 int ref_stride,
7176 uint32_t* sse);
7177
7178 uint32_t vpx_sub_pixel_variance64x32_c(const uint8_t* src_ptr,
7179 int src_stride,
7180 int x_offset,
7181 int y_offset,
7182 const uint8_t* ref_ptr,
7183 int ref_stride,
7184 uint32_t* sse);
7185 uint32_t vpx_sub_pixel_variance64x32_sse2(const uint8_t* src_ptr,
7186 int src_stride,
7187 int x_offset,
7188 int y_offset,
7189 const uint8_t* ref_ptr,
7190 int ref_stride,
7191 uint32_t* sse);
7192 uint32_t vpx_sub_pixel_variance64x32_ssse3(const uint8_t* src_ptr,
7193 int src_stride,
7194 int x_offset,
7195 int y_offset,
7196 const uint8_t* ref_ptr,
7197 int ref_stride,
7198 uint32_t* sse);
7199 RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance64x32)(const uint8_t* src_ptr,
7200 int src_stride,
7201 int x_offset,
7202 int y_offset,
7203 const uint8_t* ref_ptr,
7204 int ref_stride,
7205 uint32_t* sse);
7206
7207 uint32_t vpx_sub_pixel_variance64x64_c(const uint8_t* src_ptr,
7208 int src_stride,
7209 int x_offset,
7210 int y_offset,
7211 const uint8_t* ref_ptr,
7212 int ref_stride,
7213 uint32_t* sse);
7214 uint32_t vpx_sub_pixel_variance64x64_sse2(const uint8_t* src_ptr,
7215 int src_stride,
7216 int x_offset,
7217 int y_offset,
7218 const uint8_t* ref_ptr,
7219 int ref_stride,
7220 uint32_t* sse);
7221 uint32_t vpx_sub_pixel_variance64x64_ssse3(const uint8_t* src_ptr,
7222 int src_stride,
7223 int x_offset,
7224 int y_offset,
7225 const uint8_t* ref_ptr,
7226 int ref_stride,
7227 uint32_t* sse);
7228 uint32_t vpx_sub_pixel_variance64x64_avx2(const uint8_t* src_ptr,
7229 int src_stride,
7230 int x_offset,
7231 int y_offset,
7232 const uint8_t* ref_ptr,
7233 int ref_stride,
7234 uint32_t* sse);
7235 RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance64x64)(const uint8_t* src_ptr,
7236 int src_stride,
7237 int x_offset,
7238 int y_offset,
7239 const uint8_t* ref_ptr,
7240 int ref_stride,
7241 uint32_t* sse);
7242
7243 uint32_t vpx_sub_pixel_variance8x16_c(const uint8_t* src_ptr,
7244 int src_stride,
7245 int x_offset,
7246 int y_offset,
7247 const uint8_t* ref_ptr,
7248 int ref_stride,
7249 uint32_t* sse);
7250 uint32_t vpx_sub_pixel_variance8x16_sse2(const uint8_t* src_ptr,
7251 int src_stride,
7252 int x_offset,
7253 int y_offset,
7254 const uint8_t* ref_ptr,
7255 int ref_stride,
7256 uint32_t* sse);
7257 uint32_t vpx_sub_pixel_variance8x16_ssse3(const uint8_t* src_ptr,
7258 int src_stride,
7259 int x_offset,
7260 int y_offset,
7261 const uint8_t* ref_ptr,
7262 int ref_stride,
7263 uint32_t* sse);
7264 RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance8x16)(const uint8_t* src_ptr,
7265 int src_stride,
7266 int x_offset,
7267 int y_offset,
7268 const uint8_t* ref_ptr,
7269 int ref_stride,
7270 uint32_t* sse);
7271
7272 uint32_t vpx_sub_pixel_variance8x4_c(const uint8_t* src_ptr,
7273 int src_stride,
7274 int x_offset,
7275 int y_offset,
7276 const uint8_t* ref_ptr,
7277 int ref_stride,
7278 uint32_t* sse);
7279 uint32_t vpx_sub_pixel_variance8x4_sse2(const uint8_t* src_ptr,
7280 int src_stride,
7281 int x_offset,
7282 int y_offset,
7283 const uint8_t* ref_ptr,
7284 int ref_stride,
7285 uint32_t* sse);
7286 uint32_t vpx_sub_pixel_variance8x4_ssse3(const uint8_t* src_ptr,
7287 int src_stride,
7288 int x_offset,
7289 int y_offset,
7290 const uint8_t* ref_ptr,
7291 int ref_stride,
7292 uint32_t* sse);
7293 RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance8x4)(const uint8_t* src_ptr,
7294 int src_stride,
7295 int x_offset,
7296 int y_offset,
7297 const uint8_t* ref_ptr,
7298 int ref_stride,
7299 uint32_t* sse);
7300
7301 uint32_t vpx_sub_pixel_variance8x8_c(const uint8_t* src_ptr,
7302 int src_stride,
7303 int x_offset,
7304 int y_offset,
7305 const uint8_t* ref_ptr,
7306 int ref_stride,
7307 uint32_t* sse);
7308 uint32_t vpx_sub_pixel_variance8x8_sse2(const uint8_t* src_ptr,
7309 int src_stride,
7310 int x_offset,
7311 int y_offset,
7312 const uint8_t* ref_ptr,
7313 int ref_stride,
7314 uint32_t* sse);
7315 uint32_t vpx_sub_pixel_variance8x8_ssse3(const uint8_t* src_ptr,
7316 int src_stride,
7317 int x_offset,
7318 int y_offset,
7319 const uint8_t* ref_ptr,
7320 int ref_stride,
7321 uint32_t* sse);
7322 RTCD_EXTERN uint32_t (*vpx_sub_pixel_variance8x8)(const uint8_t* src_ptr,
7323 int src_stride,
7324 int x_offset,
7325 int y_offset,
7326 const uint8_t* ref_ptr,
7327 int ref_stride,
7328 uint32_t* sse);
7329
7330 void vpx_subtract_block_c(int rows,
7331 int cols,
7332 int16_t* diff_ptr,
7333 ptrdiff_t diff_stride,
7334 const uint8_t* src_ptr,
7335 ptrdiff_t src_stride,
7336 const uint8_t* pred_ptr,
7337 ptrdiff_t pred_stride);
7338 void vpx_subtract_block_sse2(int rows,
7339 int cols,
7340 int16_t* diff_ptr,
7341 ptrdiff_t diff_stride,
7342 const uint8_t* src_ptr,
7343 ptrdiff_t src_stride,
7344 const uint8_t* pred_ptr,
7345 ptrdiff_t pred_stride);
7346 #define vpx_subtract_block vpx_subtract_block_sse2
7347
7348 uint64_t vpx_sum_squares_2d_i16_c(const int16_t* src, int stride, int size);
7349 uint64_t vpx_sum_squares_2d_i16_sse2(const int16_t* src, int stride, int size);
7350 #define vpx_sum_squares_2d_i16 vpx_sum_squares_2d_i16_sse2
7351
7352 void vpx_tm_predictor_16x16_c(uint8_t* dst,
7353 ptrdiff_t stride,
7354 const uint8_t* above,
7355 const uint8_t* left);
7356 void vpx_tm_predictor_16x16_sse2(uint8_t* dst,
7357 ptrdiff_t stride,
7358 const uint8_t* above,
7359 const uint8_t* left);
7360 #define vpx_tm_predictor_16x16 vpx_tm_predictor_16x16_sse2
7361
7362 void vpx_tm_predictor_32x32_c(uint8_t* dst,
7363 ptrdiff_t stride,
7364 const uint8_t* above,
7365 const uint8_t* left);
7366 void vpx_tm_predictor_32x32_sse2(uint8_t* dst,
7367 ptrdiff_t stride,
7368 const uint8_t* above,
7369 const uint8_t* left);
7370 #define vpx_tm_predictor_32x32 vpx_tm_predictor_32x32_sse2
7371
7372 void vpx_tm_predictor_4x4_c(uint8_t* dst,
7373 ptrdiff_t stride,
7374 const uint8_t* above,
7375 const uint8_t* left);
7376 void vpx_tm_predictor_4x4_sse2(uint8_t* dst,
7377 ptrdiff_t stride,
7378 const uint8_t* above,
7379 const uint8_t* left);
7380 #define vpx_tm_predictor_4x4 vpx_tm_predictor_4x4_sse2
7381
7382 void vpx_tm_predictor_8x8_c(uint8_t* dst,
7383 ptrdiff_t stride,
7384 const uint8_t* above,
7385 const uint8_t* left);
7386 void vpx_tm_predictor_8x8_sse2(uint8_t* dst,
7387 ptrdiff_t stride,
7388 const uint8_t* above,
7389 const uint8_t* left);
7390 #define vpx_tm_predictor_8x8 vpx_tm_predictor_8x8_sse2
7391
7392 void vpx_v_predictor_16x16_c(uint8_t* dst,
7393 ptrdiff_t stride,
7394 const uint8_t* above,
7395 const uint8_t* left);
7396 void vpx_v_predictor_16x16_sse2(uint8_t* dst,
7397 ptrdiff_t stride,
7398 const uint8_t* above,
7399 const uint8_t* left);
7400 #define vpx_v_predictor_16x16 vpx_v_predictor_16x16_sse2
7401
7402 void vpx_v_predictor_32x32_c(uint8_t* dst,
7403 ptrdiff_t stride,
7404 const uint8_t* above,
7405 const uint8_t* left);
7406 void vpx_v_predictor_32x32_sse2(uint8_t* dst,
7407 ptrdiff_t stride,
7408 const uint8_t* above,
7409 const uint8_t* left);
7410 #define vpx_v_predictor_32x32 vpx_v_predictor_32x32_sse2
7411
7412 void vpx_v_predictor_4x4_c(uint8_t* dst,
7413 ptrdiff_t stride,
7414 const uint8_t* above,
7415 const uint8_t* left);
7416 void vpx_v_predictor_4x4_sse2(uint8_t* dst,
7417 ptrdiff_t stride,
7418 const uint8_t* above,
7419 const uint8_t* left);
7420 #define vpx_v_predictor_4x4 vpx_v_predictor_4x4_sse2
7421
7422 void vpx_v_predictor_8x8_c(uint8_t* dst,
7423 ptrdiff_t stride,
7424 const uint8_t* above,
7425 const uint8_t* left);
7426 void vpx_v_predictor_8x8_sse2(uint8_t* dst,
7427 ptrdiff_t stride,
7428 const uint8_t* above,
7429 const uint8_t* left);
7430 #define vpx_v_predictor_8x8 vpx_v_predictor_8x8_sse2
7431
7432 unsigned int vpx_variance16x16_c(const uint8_t* src_ptr,
7433 int src_stride,
7434 const uint8_t* ref_ptr,
7435 int ref_stride,
7436 unsigned int* sse);
7437 unsigned int vpx_variance16x16_sse2(const uint8_t* src_ptr,
7438 int src_stride,
7439 const uint8_t* ref_ptr,
7440 int ref_stride,
7441 unsigned int* sse);
7442 unsigned int vpx_variance16x16_avx2(const uint8_t* src_ptr,
7443 int src_stride,
7444 const uint8_t* ref_ptr,
7445 int ref_stride,
7446 unsigned int* sse);
7447 RTCD_EXTERN unsigned int (*vpx_variance16x16)(const uint8_t* src_ptr,
7448 int src_stride,
7449 const uint8_t* ref_ptr,
7450 int ref_stride,
7451 unsigned int* sse);
7452
7453 unsigned int vpx_variance16x32_c(const uint8_t* src_ptr,
7454 int src_stride,
7455 const uint8_t* ref_ptr,
7456 int ref_stride,
7457 unsigned int* sse);
7458 unsigned int vpx_variance16x32_sse2(const uint8_t* src_ptr,
7459 int src_stride,
7460 const uint8_t* ref_ptr,
7461 int ref_stride,
7462 unsigned int* sse);
7463 unsigned int vpx_variance16x32_avx2(const uint8_t* src_ptr,
7464 int src_stride,
7465 const uint8_t* ref_ptr,
7466 int ref_stride,
7467 unsigned int* sse);
7468 RTCD_EXTERN unsigned int (*vpx_variance16x32)(const uint8_t* src_ptr,
7469 int src_stride,
7470 const uint8_t* ref_ptr,
7471 int ref_stride,
7472 unsigned int* sse);
7473
7474 unsigned int vpx_variance16x8_c(const uint8_t* src_ptr,
7475 int src_stride,
7476 const uint8_t* ref_ptr,
7477 int ref_stride,
7478 unsigned int* sse);
7479 unsigned int vpx_variance16x8_sse2(const uint8_t* src_ptr,
7480 int src_stride,
7481 const uint8_t* ref_ptr,
7482 int ref_stride,
7483 unsigned int* sse);
7484 unsigned int vpx_variance16x8_avx2(const uint8_t* src_ptr,
7485 int src_stride,
7486 const uint8_t* ref_ptr,
7487 int ref_stride,
7488 unsigned int* sse);
7489 RTCD_EXTERN unsigned int (*vpx_variance16x8)(const uint8_t* src_ptr,
7490 int src_stride,
7491 const uint8_t* ref_ptr,
7492 int ref_stride,
7493 unsigned int* sse);
7494
7495 unsigned int vpx_variance32x16_c(const uint8_t* src_ptr,
7496 int src_stride,
7497 const uint8_t* ref_ptr,
7498 int ref_stride,
7499 unsigned int* sse);
7500 unsigned int vpx_variance32x16_sse2(const uint8_t* src_ptr,
7501 int src_stride,
7502 const uint8_t* ref_ptr,
7503 int ref_stride,
7504 unsigned int* sse);
7505 unsigned int vpx_variance32x16_avx2(const uint8_t* src_ptr,
7506 int src_stride,
7507 const uint8_t* ref_ptr,
7508 int ref_stride,
7509 unsigned int* sse);
7510 RTCD_EXTERN unsigned int (*vpx_variance32x16)(const uint8_t* src_ptr,
7511 int src_stride,
7512 const uint8_t* ref_ptr,
7513 int ref_stride,
7514 unsigned int* sse);
7515
7516 unsigned int vpx_variance32x32_c(const uint8_t* src_ptr,
7517 int src_stride,
7518 const uint8_t* ref_ptr,
7519 int ref_stride,
7520 unsigned int* sse);
7521 unsigned int vpx_variance32x32_sse2(const uint8_t* src_ptr,
7522 int src_stride,
7523 const uint8_t* ref_ptr,
7524 int ref_stride,
7525 unsigned int* sse);
7526 unsigned int vpx_variance32x32_avx2(const uint8_t* src_ptr,
7527 int src_stride,
7528 const uint8_t* ref_ptr,
7529 int ref_stride,
7530 unsigned int* sse);
7531 RTCD_EXTERN unsigned int (*vpx_variance32x32)(const uint8_t* src_ptr,
7532 int src_stride,
7533 const uint8_t* ref_ptr,
7534 int ref_stride,
7535 unsigned int* sse);
7536
7537 unsigned int vpx_variance32x64_c(const uint8_t* src_ptr,
7538 int src_stride,
7539 const uint8_t* ref_ptr,
7540 int ref_stride,
7541 unsigned int* sse);
7542 unsigned int vpx_variance32x64_sse2(const uint8_t* src_ptr,
7543 int src_stride,
7544 const uint8_t* ref_ptr,
7545 int ref_stride,
7546 unsigned int* sse);
7547 unsigned int vpx_variance32x64_avx2(const uint8_t* src_ptr,
7548 int src_stride,
7549 const uint8_t* ref_ptr,
7550 int ref_stride,
7551 unsigned int* sse);
7552 RTCD_EXTERN unsigned int (*vpx_variance32x64)(const uint8_t* src_ptr,
7553 int src_stride,
7554 const uint8_t* ref_ptr,
7555 int ref_stride,
7556 unsigned int* sse);
7557
7558 unsigned int vpx_variance4x4_c(const uint8_t* src_ptr,
7559 int src_stride,
7560 const uint8_t* ref_ptr,
7561 int ref_stride,
7562 unsigned int* sse);
7563 unsigned int vpx_variance4x4_sse2(const uint8_t* src_ptr,
7564 int src_stride,
7565 const uint8_t* ref_ptr,
7566 int ref_stride,
7567 unsigned int* sse);
7568 #define vpx_variance4x4 vpx_variance4x4_sse2
7569
7570 unsigned int vpx_variance4x8_c(const uint8_t* src_ptr,
7571 int src_stride,
7572 const uint8_t* ref_ptr,
7573 int ref_stride,
7574 unsigned int* sse);
7575 unsigned int vpx_variance4x8_sse2(const uint8_t* src_ptr,
7576 int src_stride,
7577 const uint8_t* ref_ptr,
7578 int ref_stride,
7579 unsigned int* sse);
7580 #define vpx_variance4x8 vpx_variance4x8_sse2
7581
7582 unsigned int vpx_variance64x32_c(const uint8_t* src_ptr,
7583 int src_stride,
7584 const uint8_t* ref_ptr,
7585 int ref_stride,
7586 unsigned int* sse);
7587 unsigned int vpx_variance64x32_sse2(const uint8_t* src_ptr,
7588 int src_stride,
7589 const uint8_t* ref_ptr,
7590 int ref_stride,
7591 unsigned int* sse);
7592 unsigned int vpx_variance64x32_avx2(const uint8_t* src_ptr,
7593 int src_stride,
7594 const uint8_t* ref_ptr,
7595 int ref_stride,
7596 unsigned int* sse);
7597 RTCD_EXTERN unsigned int (*vpx_variance64x32)(const uint8_t* src_ptr,
7598 int src_stride,
7599 const uint8_t* ref_ptr,
7600 int ref_stride,
7601 unsigned int* sse);
7602
7603 unsigned int vpx_variance64x64_c(const uint8_t* src_ptr,
7604 int src_stride,
7605 const uint8_t* ref_ptr,
7606 int ref_stride,
7607 unsigned int* sse);
7608 unsigned int vpx_variance64x64_sse2(const uint8_t* src_ptr,
7609 int src_stride,
7610 const uint8_t* ref_ptr,
7611 int ref_stride,
7612 unsigned int* sse);
7613 unsigned int vpx_variance64x64_avx2(const uint8_t* src_ptr,
7614 int src_stride,
7615 const uint8_t* ref_ptr,
7616 int ref_stride,
7617 unsigned int* sse);
7618 RTCD_EXTERN unsigned int (*vpx_variance64x64)(const uint8_t* src_ptr,
7619 int src_stride,
7620 const uint8_t* ref_ptr,
7621 int ref_stride,
7622 unsigned int* sse);
7623
7624 unsigned int vpx_variance8x16_c(const uint8_t* src_ptr,
7625 int src_stride,
7626 const uint8_t* ref_ptr,
7627 int ref_stride,
7628 unsigned int* sse);
7629 unsigned int vpx_variance8x16_sse2(const uint8_t* src_ptr,
7630 int src_stride,
7631 const uint8_t* ref_ptr,
7632 int ref_stride,
7633 unsigned int* sse);
7634 #define vpx_variance8x16 vpx_variance8x16_sse2
7635
7636 unsigned int vpx_variance8x4_c(const uint8_t* src_ptr,
7637 int src_stride,
7638 const uint8_t* ref_ptr,
7639 int ref_stride,
7640 unsigned int* sse);
7641 unsigned int vpx_variance8x4_sse2(const uint8_t* src_ptr,
7642 int src_stride,
7643 const uint8_t* ref_ptr,
7644 int ref_stride,
7645 unsigned int* sse);
7646 #define vpx_variance8x4 vpx_variance8x4_sse2
7647
7648 unsigned int vpx_variance8x8_c(const uint8_t* src_ptr,
7649 int src_stride,
7650 const uint8_t* ref_ptr,
7651 int ref_stride,
7652 unsigned int* sse);
7653 unsigned int vpx_variance8x8_sse2(const uint8_t* src_ptr,
7654 int src_stride,
7655 const uint8_t* ref_ptr,
7656 int ref_stride,
7657 unsigned int* sse);
7658 #define vpx_variance8x8 vpx_variance8x8_sse2
7659
7660 void vpx_ve_predictor_4x4_c(uint8_t* dst,
7661 ptrdiff_t stride,
7662 const uint8_t* above,
7663 const uint8_t* left);
7664 #define vpx_ve_predictor_4x4 vpx_ve_predictor_4x4_c
7665
7666 int vpx_vector_var_c(const int16_t* ref, const int16_t* src, const int bwl);
7667 int vpx_vector_var_sse2(const int16_t* ref, const int16_t* src, const int bwl);
7668 #define vpx_vector_var vpx_vector_var_sse2
7669
7670 void vpx_dsp_rtcd(void);
7671
7672 #ifdef RTCD_C
7673 #include "vpx_ports/x86.h"
setup_rtcd_internal(void)7674 static void setup_rtcd_internal(void) {
7675 int flags = x86_simd_caps();
7676
7677 (void)flags;
7678
7679 vpx_convolve8 = vpx_convolve8_sse2;
7680 if (flags & HAS_SSSE3)
7681 vpx_convolve8 = vpx_convolve8_ssse3;
7682 if (flags & HAS_AVX2)
7683 vpx_convolve8 = vpx_convolve8_avx2;
7684 vpx_convolve8_avg = vpx_convolve8_avg_sse2;
7685 if (flags & HAS_SSSE3)
7686 vpx_convolve8_avg = vpx_convolve8_avg_ssse3;
7687 if (flags & HAS_AVX2)
7688 vpx_convolve8_avg = vpx_convolve8_avg_avx2;
7689 vpx_convolve8_avg_horiz = vpx_convolve8_avg_horiz_sse2;
7690 if (flags & HAS_SSSE3)
7691 vpx_convolve8_avg_horiz = vpx_convolve8_avg_horiz_ssse3;
7692 if (flags & HAS_AVX2)
7693 vpx_convolve8_avg_horiz = vpx_convolve8_avg_horiz_avx2;
7694 vpx_convolve8_avg_vert = vpx_convolve8_avg_vert_sse2;
7695 if (flags & HAS_SSSE3)
7696 vpx_convolve8_avg_vert = vpx_convolve8_avg_vert_ssse3;
7697 if (flags & HAS_AVX2)
7698 vpx_convolve8_avg_vert = vpx_convolve8_avg_vert_avx2;
7699 vpx_convolve8_horiz = vpx_convolve8_horiz_sse2;
7700 if (flags & HAS_SSSE3)
7701 vpx_convolve8_horiz = vpx_convolve8_horiz_ssse3;
7702 if (flags & HAS_AVX2)
7703 vpx_convolve8_horiz = vpx_convolve8_horiz_avx2;
7704 vpx_convolve8_vert = vpx_convolve8_vert_sse2;
7705 if (flags & HAS_SSSE3)
7706 vpx_convolve8_vert = vpx_convolve8_vert_ssse3;
7707 if (flags & HAS_AVX2)
7708 vpx_convolve8_vert = vpx_convolve8_vert_avx2;
7709 vpx_d153_predictor_16x16 = vpx_d153_predictor_16x16_c;
7710 if (flags & HAS_SSSE3)
7711 vpx_d153_predictor_16x16 = vpx_d153_predictor_16x16_ssse3;
7712 vpx_d153_predictor_32x32 = vpx_d153_predictor_32x32_c;
7713 if (flags & HAS_SSSE3)
7714 vpx_d153_predictor_32x32 = vpx_d153_predictor_32x32_ssse3;
7715 vpx_d153_predictor_4x4 = vpx_d153_predictor_4x4_c;
7716 if (flags & HAS_SSSE3)
7717 vpx_d153_predictor_4x4 = vpx_d153_predictor_4x4_ssse3;
7718 vpx_d153_predictor_8x8 = vpx_d153_predictor_8x8_c;
7719 if (flags & HAS_SSSE3)
7720 vpx_d153_predictor_8x8 = vpx_d153_predictor_8x8_ssse3;
7721 vpx_d207_predictor_16x16 = vpx_d207_predictor_16x16_c;
7722 if (flags & HAS_SSSE3)
7723 vpx_d207_predictor_16x16 = vpx_d207_predictor_16x16_ssse3;
7724 vpx_d207_predictor_32x32 = vpx_d207_predictor_32x32_c;
7725 if (flags & HAS_SSSE3)
7726 vpx_d207_predictor_32x32 = vpx_d207_predictor_32x32_ssse3;
7727 vpx_d207_predictor_8x8 = vpx_d207_predictor_8x8_c;
7728 if (flags & HAS_SSSE3)
7729 vpx_d207_predictor_8x8 = vpx_d207_predictor_8x8_ssse3;
7730 vpx_d45_predictor_16x16 = vpx_d45_predictor_16x16_c;
7731 if (flags & HAS_SSSE3)
7732 vpx_d45_predictor_16x16 = vpx_d45_predictor_16x16_ssse3;
7733 vpx_d45_predictor_32x32 = vpx_d45_predictor_32x32_c;
7734 if (flags & HAS_SSSE3)
7735 vpx_d45_predictor_32x32 = vpx_d45_predictor_32x32_ssse3;
7736 vpx_d63_predictor_16x16 = vpx_d63_predictor_16x16_c;
7737 if (flags & HAS_SSSE3)
7738 vpx_d63_predictor_16x16 = vpx_d63_predictor_16x16_ssse3;
7739 vpx_d63_predictor_32x32 = vpx_d63_predictor_32x32_c;
7740 if (flags & HAS_SSSE3)
7741 vpx_d63_predictor_32x32 = vpx_d63_predictor_32x32_ssse3;
7742 vpx_d63_predictor_4x4 = vpx_d63_predictor_4x4_c;
7743 if (flags & HAS_SSSE3)
7744 vpx_d63_predictor_4x4 = vpx_d63_predictor_4x4_ssse3;
7745 vpx_d63_predictor_8x8 = vpx_d63_predictor_8x8_c;
7746 if (flags & HAS_SSSE3)
7747 vpx_d63_predictor_8x8 = vpx_d63_predictor_8x8_ssse3;
7748 vpx_get16x16var = vpx_get16x16var_sse2;
7749 if (flags & HAS_AVX2)
7750 vpx_get16x16var = vpx_get16x16var_avx2;
7751 vpx_hadamard_16x16 = vpx_hadamard_16x16_sse2;
7752 if (flags & HAS_AVX2)
7753 vpx_hadamard_16x16 = vpx_hadamard_16x16_avx2;
7754 vpx_hadamard_32x32 = vpx_hadamard_32x32_sse2;
7755 if (flags & HAS_AVX2)
7756 vpx_hadamard_32x32 = vpx_hadamard_32x32_avx2;
7757 vpx_hadamard_8x8 = vpx_hadamard_8x8_sse2;
7758 if (flags & HAS_SSSE3)
7759 vpx_hadamard_8x8 = vpx_hadamard_8x8_ssse3;
7760 vpx_highbd_convolve8 = vpx_highbd_convolve8_sse2;
7761 if (flags & HAS_AVX2)
7762 vpx_highbd_convolve8 = vpx_highbd_convolve8_avx2;
7763 vpx_highbd_convolve8_avg = vpx_highbd_convolve8_avg_sse2;
7764 if (flags & HAS_AVX2)
7765 vpx_highbd_convolve8_avg = vpx_highbd_convolve8_avg_avx2;
7766 vpx_highbd_convolve8_avg_horiz = vpx_highbd_convolve8_avg_horiz_sse2;
7767 if (flags & HAS_AVX2)
7768 vpx_highbd_convolve8_avg_horiz = vpx_highbd_convolve8_avg_horiz_avx2;
7769 vpx_highbd_convolve8_avg_vert = vpx_highbd_convolve8_avg_vert_sse2;
7770 if (flags & HAS_AVX2)
7771 vpx_highbd_convolve8_avg_vert = vpx_highbd_convolve8_avg_vert_avx2;
7772 vpx_highbd_convolve8_horiz = vpx_highbd_convolve8_horiz_sse2;
7773 if (flags & HAS_AVX2)
7774 vpx_highbd_convolve8_horiz = vpx_highbd_convolve8_horiz_avx2;
7775 vpx_highbd_convolve8_vert = vpx_highbd_convolve8_vert_sse2;
7776 if (flags & HAS_AVX2)
7777 vpx_highbd_convolve8_vert = vpx_highbd_convolve8_vert_avx2;
7778 vpx_highbd_convolve_avg = vpx_highbd_convolve_avg_sse2;
7779 if (flags & HAS_AVX2)
7780 vpx_highbd_convolve_avg = vpx_highbd_convolve_avg_avx2;
7781 vpx_highbd_convolve_copy = vpx_highbd_convolve_copy_sse2;
7782 if (flags & HAS_AVX2)
7783 vpx_highbd_convolve_copy = vpx_highbd_convolve_copy_avx2;
7784 vpx_highbd_d117_predictor_16x16 = vpx_highbd_d117_predictor_16x16_c;
7785 if (flags & HAS_SSSE3)
7786 vpx_highbd_d117_predictor_16x16 = vpx_highbd_d117_predictor_16x16_ssse3;
7787 vpx_highbd_d117_predictor_32x32 = vpx_highbd_d117_predictor_32x32_c;
7788 if (flags & HAS_SSSE3)
7789 vpx_highbd_d117_predictor_32x32 = vpx_highbd_d117_predictor_32x32_ssse3;
7790 vpx_highbd_d117_predictor_8x8 = vpx_highbd_d117_predictor_8x8_c;
7791 if (flags & HAS_SSSE3)
7792 vpx_highbd_d117_predictor_8x8 = vpx_highbd_d117_predictor_8x8_ssse3;
7793 vpx_highbd_d135_predictor_16x16 = vpx_highbd_d135_predictor_16x16_c;
7794 if (flags & HAS_SSSE3)
7795 vpx_highbd_d135_predictor_16x16 = vpx_highbd_d135_predictor_16x16_ssse3;
7796 vpx_highbd_d135_predictor_32x32 = vpx_highbd_d135_predictor_32x32_c;
7797 if (flags & HAS_SSSE3)
7798 vpx_highbd_d135_predictor_32x32 = vpx_highbd_d135_predictor_32x32_ssse3;
7799 vpx_highbd_d135_predictor_8x8 = vpx_highbd_d135_predictor_8x8_c;
7800 if (flags & HAS_SSSE3)
7801 vpx_highbd_d135_predictor_8x8 = vpx_highbd_d135_predictor_8x8_ssse3;
7802 vpx_highbd_d153_predictor_16x16 = vpx_highbd_d153_predictor_16x16_c;
7803 if (flags & HAS_SSSE3)
7804 vpx_highbd_d153_predictor_16x16 = vpx_highbd_d153_predictor_16x16_ssse3;
7805 vpx_highbd_d153_predictor_32x32 = vpx_highbd_d153_predictor_32x32_c;
7806 if (flags & HAS_SSSE3)
7807 vpx_highbd_d153_predictor_32x32 = vpx_highbd_d153_predictor_32x32_ssse3;
7808 vpx_highbd_d153_predictor_8x8 = vpx_highbd_d153_predictor_8x8_c;
7809 if (flags & HAS_SSSE3)
7810 vpx_highbd_d153_predictor_8x8 = vpx_highbd_d153_predictor_8x8_ssse3;
7811 vpx_highbd_d207_predictor_16x16 = vpx_highbd_d207_predictor_16x16_c;
7812 if (flags & HAS_SSSE3)
7813 vpx_highbd_d207_predictor_16x16 = vpx_highbd_d207_predictor_16x16_ssse3;
7814 vpx_highbd_d207_predictor_32x32 = vpx_highbd_d207_predictor_32x32_c;
7815 if (flags & HAS_SSSE3)
7816 vpx_highbd_d207_predictor_32x32 = vpx_highbd_d207_predictor_32x32_ssse3;
7817 vpx_highbd_d207_predictor_8x8 = vpx_highbd_d207_predictor_8x8_c;
7818 if (flags & HAS_SSSE3)
7819 vpx_highbd_d207_predictor_8x8 = vpx_highbd_d207_predictor_8x8_ssse3;
7820 vpx_highbd_d45_predictor_16x16 = vpx_highbd_d45_predictor_16x16_c;
7821 if (flags & HAS_SSSE3)
7822 vpx_highbd_d45_predictor_16x16 = vpx_highbd_d45_predictor_16x16_ssse3;
7823 vpx_highbd_d45_predictor_32x32 = vpx_highbd_d45_predictor_32x32_c;
7824 if (flags & HAS_SSSE3)
7825 vpx_highbd_d45_predictor_32x32 = vpx_highbd_d45_predictor_32x32_ssse3;
7826 vpx_highbd_d45_predictor_4x4 = vpx_highbd_d45_predictor_4x4_c;
7827 if (flags & HAS_SSSE3)
7828 vpx_highbd_d45_predictor_4x4 = vpx_highbd_d45_predictor_4x4_ssse3;
7829 vpx_highbd_d45_predictor_8x8 = vpx_highbd_d45_predictor_8x8_c;
7830 if (flags & HAS_SSSE3)
7831 vpx_highbd_d45_predictor_8x8 = vpx_highbd_d45_predictor_8x8_ssse3;
7832 vpx_highbd_d63_predictor_16x16 = vpx_highbd_d63_predictor_16x16_c;
7833 if (flags & HAS_SSSE3)
7834 vpx_highbd_d63_predictor_16x16 = vpx_highbd_d63_predictor_16x16_ssse3;
7835 vpx_highbd_d63_predictor_32x32 = vpx_highbd_d63_predictor_32x32_c;
7836 if (flags & HAS_SSSE3)
7837 vpx_highbd_d63_predictor_32x32 = vpx_highbd_d63_predictor_32x32_ssse3;
7838 vpx_highbd_d63_predictor_8x8 = vpx_highbd_d63_predictor_8x8_c;
7839 if (flags & HAS_SSSE3)
7840 vpx_highbd_d63_predictor_8x8 = vpx_highbd_d63_predictor_8x8_ssse3;
7841 vpx_highbd_hadamard_16x16 = vpx_highbd_hadamard_16x16_c;
7842 if (flags & HAS_AVX2)
7843 vpx_highbd_hadamard_16x16 = vpx_highbd_hadamard_16x16_avx2;
7844 vpx_highbd_hadamard_32x32 = vpx_highbd_hadamard_32x32_c;
7845 if (flags & HAS_AVX2)
7846 vpx_highbd_hadamard_32x32 = vpx_highbd_hadamard_32x32_avx2;
7847 vpx_highbd_hadamard_8x8 = vpx_highbd_hadamard_8x8_c;
7848 if (flags & HAS_AVX2)
7849 vpx_highbd_hadamard_8x8 = vpx_highbd_hadamard_8x8_avx2;
7850 vpx_highbd_idct16x16_10_add = vpx_highbd_idct16x16_10_add_sse2;
7851 if (flags & HAS_SSE4_1)
7852 vpx_highbd_idct16x16_10_add = vpx_highbd_idct16x16_10_add_sse4_1;
7853 vpx_highbd_idct16x16_256_add = vpx_highbd_idct16x16_256_add_sse2;
7854 if (flags & HAS_SSE4_1)
7855 vpx_highbd_idct16x16_256_add = vpx_highbd_idct16x16_256_add_sse4_1;
7856 vpx_highbd_idct16x16_38_add = vpx_highbd_idct16x16_38_add_sse2;
7857 if (flags & HAS_SSE4_1)
7858 vpx_highbd_idct16x16_38_add = vpx_highbd_idct16x16_38_add_sse4_1;
7859 vpx_highbd_idct32x32_1024_add = vpx_highbd_idct32x32_1024_add_sse2;
7860 if (flags & HAS_SSE4_1)
7861 vpx_highbd_idct32x32_1024_add = vpx_highbd_idct32x32_1024_add_sse4_1;
7862 vpx_highbd_idct32x32_135_add = vpx_highbd_idct32x32_135_add_sse2;
7863 if (flags & HAS_SSE4_1)
7864 vpx_highbd_idct32x32_135_add = vpx_highbd_idct32x32_135_add_sse4_1;
7865 vpx_highbd_idct32x32_34_add = vpx_highbd_idct32x32_34_add_sse2;
7866 if (flags & HAS_SSE4_1)
7867 vpx_highbd_idct32x32_34_add = vpx_highbd_idct32x32_34_add_sse4_1;
7868 vpx_highbd_idct4x4_16_add = vpx_highbd_idct4x4_16_add_sse2;
7869 if (flags & HAS_SSE4_1)
7870 vpx_highbd_idct4x4_16_add = vpx_highbd_idct4x4_16_add_sse4_1;
7871 vpx_highbd_idct8x8_12_add = vpx_highbd_idct8x8_12_add_sse2;
7872 if (flags & HAS_SSE4_1)
7873 vpx_highbd_idct8x8_12_add = vpx_highbd_idct8x8_12_add_sse4_1;
7874 vpx_highbd_idct8x8_64_add = vpx_highbd_idct8x8_64_add_sse2;
7875 if (flags & HAS_SSE4_1)
7876 vpx_highbd_idct8x8_64_add = vpx_highbd_idct8x8_64_add_sse4_1;
7877 vpx_highbd_satd = vpx_highbd_satd_c;
7878 if (flags & HAS_AVX2)
7879 vpx_highbd_satd = vpx_highbd_satd_avx2;
7880 vpx_idct32x32_135_add = vpx_idct32x32_135_add_sse2;
7881 if (flags & HAS_SSSE3)
7882 vpx_idct32x32_135_add = vpx_idct32x32_135_add_ssse3;
7883 vpx_idct32x32_34_add = vpx_idct32x32_34_add_sse2;
7884 if (flags & HAS_SSSE3)
7885 vpx_idct32x32_34_add = vpx_idct32x32_34_add_ssse3;
7886 vpx_idct8x8_12_add = vpx_idct8x8_12_add_sse2;
7887 if (flags & HAS_SSSE3)
7888 vpx_idct8x8_12_add = vpx_idct8x8_12_add_ssse3;
7889 vpx_lpf_horizontal_16 = vpx_lpf_horizontal_16_sse2;
7890 if (flags & HAS_AVX2)
7891 vpx_lpf_horizontal_16 = vpx_lpf_horizontal_16_avx2;
7892 vpx_lpf_horizontal_16_dual = vpx_lpf_horizontal_16_dual_sse2;
7893 if (flags & HAS_AVX2)
7894 vpx_lpf_horizontal_16_dual = vpx_lpf_horizontal_16_dual_avx2;
7895 vpx_mse16x16 = vpx_mse16x16_sse2;
7896 if (flags & HAS_AVX2)
7897 vpx_mse16x16 = vpx_mse16x16_avx2;
7898 vpx_mse16x8 = vpx_mse16x8_sse2;
7899 if (flags & HAS_AVX2)
7900 vpx_mse16x8 = vpx_mse16x8_avx2;
7901 vpx_quantize_b = vpx_quantize_b_sse2;
7902 if (flags & HAS_SSSE3)
7903 vpx_quantize_b = vpx_quantize_b_ssse3;
7904 if (flags & HAS_AVX)
7905 vpx_quantize_b = vpx_quantize_b_avx;
7906 vpx_quantize_b_32x32 = vpx_quantize_b_32x32_c;
7907 if (flags & HAS_SSSE3)
7908 vpx_quantize_b_32x32 = vpx_quantize_b_32x32_ssse3;
7909 if (flags & HAS_AVX)
7910 vpx_quantize_b_32x32 = vpx_quantize_b_32x32_avx;
7911 vpx_sad16x16x3 = vpx_sad16x16x3_c;
7912 if (flags & HAS_SSE3)
7913 vpx_sad16x16x3 = vpx_sad16x16x3_sse3;
7914 if (flags & HAS_SSSE3)
7915 vpx_sad16x16x3 = vpx_sad16x16x3_ssse3;
7916 vpx_sad16x16x8 = vpx_sad16x16x8_c;
7917 if (flags & HAS_SSE4_1)
7918 vpx_sad16x16x8 = vpx_sad16x16x8_sse4_1;
7919 vpx_sad16x8x3 = vpx_sad16x8x3_c;
7920 if (flags & HAS_SSE3)
7921 vpx_sad16x8x3 = vpx_sad16x8x3_sse3;
7922 if (flags & HAS_SSSE3)
7923 vpx_sad16x8x3 = vpx_sad16x8x3_ssse3;
7924 vpx_sad16x8x8 = vpx_sad16x8x8_c;
7925 if (flags & HAS_SSE4_1)
7926 vpx_sad16x8x8 = vpx_sad16x8x8_sse4_1;
7927 vpx_sad32x16 = vpx_sad32x16_sse2;
7928 if (flags & HAS_AVX2)
7929 vpx_sad32x16 = vpx_sad32x16_avx2;
7930 vpx_sad32x16_avg = vpx_sad32x16_avg_sse2;
7931 if (flags & HAS_AVX2)
7932 vpx_sad32x16_avg = vpx_sad32x16_avg_avx2;
7933 vpx_sad32x32 = vpx_sad32x32_sse2;
7934 if (flags & HAS_AVX2)
7935 vpx_sad32x32 = vpx_sad32x32_avx2;
7936 vpx_sad32x32_avg = vpx_sad32x32_avg_sse2;
7937 if (flags & HAS_AVX2)
7938 vpx_sad32x32_avg = vpx_sad32x32_avg_avx2;
7939 vpx_sad32x32x4d = vpx_sad32x32x4d_sse2;
7940 if (flags & HAS_AVX2)
7941 vpx_sad32x32x4d = vpx_sad32x32x4d_avx2;
7942 vpx_sad32x32x8 = vpx_sad32x32x8_c;
7943 if (flags & HAS_AVX2)
7944 vpx_sad32x32x8 = vpx_sad32x32x8_avx2;
7945 vpx_sad32x64 = vpx_sad32x64_sse2;
7946 if (flags & HAS_AVX2)
7947 vpx_sad32x64 = vpx_sad32x64_avx2;
7948 vpx_sad32x64_avg = vpx_sad32x64_avg_sse2;
7949 if (flags & HAS_AVX2)
7950 vpx_sad32x64_avg = vpx_sad32x64_avg_avx2;
7951 vpx_sad4x4x3 = vpx_sad4x4x3_c;
7952 if (flags & HAS_SSE3)
7953 vpx_sad4x4x3 = vpx_sad4x4x3_sse3;
7954 vpx_sad4x4x8 = vpx_sad4x4x8_c;
7955 if (flags & HAS_SSE4_1)
7956 vpx_sad4x4x8 = vpx_sad4x4x8_sse4_1;
7957 vpx_sad64x32 = vpx_sad64x32_sse2;
7958 if (flags & HAS_AVX2)
7959 vpx_sad64x32 = vpx_sad64x32_avx2;
7960 vpx_sad64x32_avg = vpx_sad64x32_avg_sse2;
7961 if (flags & HAS_AVX2)
7962 vpx_sad64x32_avg = vpx_sad64x32_avg_avx2;
7963 vpx_sad64x64 = vpx_sad64x64_sse2;
7964 if (flags & HAS_AVX2)
7965 vpx_sad64x64 = vpx_sad64x64_avx2;
7966 vpx_sad64x64_avg = vpx_sad64x64_avg_sse2;
7967 if (flags & HAS_AVX2)
7968 vpx_sad64x64_avg = vpx_sad64x64_avg_avx2;
7969 vpx_sad64x64x4d = vpx_sad64x64x4d_sse2;
7970 if (flags & HAS_AVX2)
7971 vpx_sad64x64x4d = vpx_sad64x64x4d_avx2;
7972 vpx_sad8x16x3 = vpx_sad8x16x3_c;
7973 if (flags & HAS_SSE3)
7974 vpx_sad8x16x3 = vpx_sad8x16x3_sse3;
7975 vpx_sad8x16x8 = vpx_sad8x16x8_c;
7976 if (flags & HAS_SSE4_1)
7977 vpx_sad8x16x8 = vpx_sad8x16x8_sse4_1;
7978 vpx_sad8x8x3 = vpx_sad8x8x3_c;
7979 if (flags & HAS_SSE3)
7980 vpx_sad8x8x3 = vpx_sad8x8x3_sse3;
7981 vpx_sad8x8x8 = vpx_sad8x8x8_c;
7982 if (flags & HAS_SSE4_1)
7983 vpx_sad8x8x8 = vpx_sad8x8x8_sse4_1;
7984 vpx_satd = vpx_satd_sse2;
7985 if (flags & HAS_AVX2)
7986 vpx_satd = vpx_satd_avx2;
7987 vpx_scaled_2d = vpx_scaled_2d_c;
7988 if (flags & HAS_SSSE3)
7989 vpx_scaled_2d = vpx_scaled_2d_ssse3;
7990 vpx_sub_pixel_avg_variance16x16 = vpx_sub_pixel_avg_variance16x16_sse2;
7991 if (flags & HAS_SSSE3)
7992 vpx_sub_pixel_avg_variance16x16 = vpx_sub_pixel_avg_variance16x16_ssse3;
7993 vpx_sub_pixel_avg_variance16x32 = vpx_sub_pixel_avg_variance16x32_sse2;
7994 if (flags & HAS_SSSE3)
7995 vpx_sub_pixel_avg_variance16x32 = vpx_sub_pixel_avg_variance16x32_ssse3;
7996 vpx_sub_pixel_avg_variance16x8 = vpx_sub_pixel_avg_variance16x8_sse2;
7997 if (flags & HAS_SSSE3)
7998 vpx_sub_pixel_avg_variance16x8 = vpx_sub_pixel_avg_variance16x8_ssse3;
7999 vpx_sub_pixel_avg_variance32x16 = vpx_sub_pixel_avg_variance32x16_sse2;
8000 if (flags & HAS_SSSE3)
8001 vpx_sub_pixel_avg_variance32x16 = vpx_sub_pixel_avg_variance32x16_ssse3;
8002 vpx_sub_pixel_avg_variance32x32 = vpx_sub_pixel_avg_variance32x32_sse2;
8003 if (flags & HAS_SSSE3)
8004 vpx_sub_pixel_avg_variance32x32 = vpx_sub_pixel_avg_variance32x32_ssse3;
8005 if (flags & HAS_AVX2)
8006 vpx_sub_pixel_avg_variance32x32 = vpx_sub_pixel_avg_variance32x32_avx2;
8007 vpx_sub_pixel_avg_variance32x64 = vpx_sub_pixel_avg_variance32x64_sse2;
8008 if (flags & HAS_SSSE3)
8009 vpx_sub_pixel_avg_variance32x64 = vpx_sub_pixel_avg_variance32x64_ssse3;
8010 vpx_sub_pixel_avg_variance4x4 = vpx_sub_pixel_avg_variance4x4_sse2;
8011 if (flags & HAS_SSSE3)
8012 vpx_sub_pixel_avg_variance4x4 = vpx_sub_pixel_avg_variance4x4_ssse3;
8013 vpx_sub_pixel_avg_variance4x8 = vpx_sub_pixel_avg_variance4x8_sse2;
8014 if (flags & HAS_SSSE3)
8015 vpx_sub_pixel_avg_variance4x8 = vpx_sub_pixel_avg_variance4x8_ssse3;
8016 vpx_sub_pixel_avg_variance64x32 = vpx_sub_pixel_avg_variance64x32_sse2;
8017 if (flags & HAS_SSSE3)
8018 vpx_sub_pixel_avg_variance64x32 = vpx_sub_pixel_avg_variance64x32_ssse3;
8019 vpx_sub_pixel_avg_variance64x64 = vpx_sub_pixel_avg_variance64x64_sse2;
8020 if (flags & HAS_SSSE3)
8021 vpx_sub_pixel_avg_variance64x64 = vpx_sub_pixel_avg_variance64x64_ssse3;
8022 if (flags & HAS_AVX2)
8023 vpx_sub_pixel_avg_variance64x64 = vpx_sub_pixel_avg_variance64x64_avx2;
8024 vpx_sub_pixel_avg_variance8x16 = vpx_sub_pixel_avg_variance8x16_sse2;
8025 if (flags & HAS_SSSE3)
8026 vpx_sub_pixel_avg_variance8x16 = vpx_sub_pixel_avg_variance8x16_ssse3;
8027 vpx_sub_pixel_avg_variance8x4 = vpx_sub_pixel_avg_variance8x4_sse2;
8028 if (flags & HAS_SSSE3)
8029 vpx_sub_pixel_avg_variance8x4 = vpx_sub_pixel_avg_variance8x4_ssse3;
8030 vpx_sub_pixel_avg_variance8x8 = vpx_sub_pixel_avg_variance8x8_sse2;
8031 if (flags & HAS_SSSE3)
8032 vpx_sub_pixel_avg_variance8x8 = vpx_sub_pixel_avg_variance8x8_ssse3;
8033 vpx_sub_pixel_variance16x16 = vpx_sub_pixel_variance16x16_sse2;
8034 if (flags & HAS_SSSE3)
8035 vpx_sub_pixel_variance16x16 = vpx_sub_pixel_variance16x16_ssse3;
8036 vpx_sub_pixel_variance16x32 = vpx_sub_pixel_variance16x32_sse2;
8037 if (flags & HAS_SSSE3)
8038 vpx_sub_pixel_variance16x32 = vpx_sub_pixel_variance16x32_ssse3;
8039 vpx_sub_pixel_variance16x8 = vpx_sub_pixel_variance16x8_sse2;
8040 if (flags & HAS_SSSE3)
8041 vpx_sub_pixel_variance16x8 = vpx_sub_pixel_variance16x8_ssse3;
8042 vpx_sub_pixel_variance32x16 = vpx_sub_pixel_variance32x16_sse2;
8043 if (flags & HAS_SSSE3)
8044 vpx_sub_pixel_variance32x16 = vpx_sub_pixel_variance32x16_ssse3;
8045 vpx_sub_pixel_variance32x32 = vpx_sub_pixel_variance32x32_sse2;
8046 if (flags & HAS_SSSE3)
8047 vpx_sub_pixel_variance32x32 = vpx_sub_pixel_variance32x32_ssse3;
8048 if (flags & HAS_AVX2)
8049 vpx_sub_pixel_variance32x32 = vpx_sub_pixel_variance32x32_avx2;
8050 vpx_sub_pixel_variance32x64 = vpx_sub_pixel_variance32x64_sse2;
8051 if (flags & HAS_SSSE3)
8052 vpx_sub_pixel_variance32x64 = vpx_sub_pixel_variance32x64_ssse3;
8053 vpx_sub_pixel_variance4x4 = vpx_sub_pixel_variance4x4_sse2;
8054 if (flags & HAS_SSSE3)
8055 vpx_sub_pixel_variance4x4 = vpx_sub_pixel_variance4x4_ssse3;
8056 vpx_sub_pixel_variance4x8 = vpx_sub_pixel_variance4x8_sse2;
8057 if (flags & HAS_SSSE3)
8058 vpx_sub_pixel_variance4x8 = vpx_sub_pixel_variance4x8_ssse3;
8059 vpx_sub_pixel_variance64x32 = vpx_sub_pixel_variance64x32_sse2;
8060 if (flags & HAS_SSSE3)
8061 vpx_sub_pixel_variance64x32 = vpx_sub_pixel_variance64x32_ssse3;
8062 vpx_sub_pixel_variance64x64 = vpx_sub_pixel_variance64x64_sse2;
8063 if (flags & HAS_SSSE3)
8064 vpx_sub_pixel_variance64x64 = vpx_sub_pixel_variance64x64_ssse3;
8065 if (flags & HAS_AVX2)
8066 vpx_sub_pixel_variance64x64 = vpx_sub_pixel_variance64x64_avx2;
8067 vpx_sub_pixel_variance8x16 = vpx_sub_pixel_variance8x16_sse2;
8068 if (flags & HAS_SSSE3)
8069 vpx_sub_pixel_variance8x16 = vpx_sub_pixel_variance8x16_ssse3;
8070 vpx_sub_pixel_variance8x4 = vpx_sub_pixel_variance8x4_sse2;
8071 if (flags & HAS_SSSE3)
8072 vpx_sub_pixel_variance8x4 = vpx_sub_pixel_variance8x4_ssse3;
8073 vpx_sub_pixel_variance8x8 = vpx_sub_pixel_variance8x8_sse2;
8074 if (flags & HAS_SSSE3)
8075 vpx_sub_pixel_variance8x8 = vpx_sub_pixel_variance8x8_ssse3;
8076 vpx_variance16x16 = vpx_variance16x16_sse2;
8077 if (flags & HAS_AVX2)
8078 vpx_variance16x16 = vpx_variance16x16_avx2;
8079 vpx_variance16x32 = vpx_variance16x32_sse2;
8080 if (flags & HAS_AVX2)
8081 vpx_variance16x32 = vpx_variance16x32_avx2;
8082 vpx_variance16x8 = vpx_variance16x8_sse2;
8083 if (flags & HAS_AVX2)
8084 vpx_variance16x8 = vpx_variance16x8_avx2;
8085 vpx_variance32x16 = vpx_variance32x16_sse2;
8086 if (flags & HAS_AVX2)
8087 vpx_variance32x16 = vpx_variance32x16_avx2;
8088 vpx_variance32x32 = vpx_variance32x32_sse2;
8089 if (flags & HAS_AVX2)
8090 vpx_variance32x32 = vpx_variance32x32_avx2;
8091 vpx_variance32x64 = vpx_variance32x64_sse2;
8092 if (flags & HAS_AVX2)
8093 vpx_variance32x64 = vpx_variance32x64_avx2;
8094 vpx_variance64x32 = vpx_variance64x32_sse2;
8095 if (flags & HAS_AVX2)
8096 vpx_variance64x32 = vpx_variance64x32_avx2;
8097 vpx_variance64x64 = vpx_variance64x64_sse2;
8098 if (flags & HAS_AVX2)
8099 vpx_variance64x64 = vpx_variance64x64_avx2;
8100 }
8101 #endif
8102
8103 #ifdef __cplusplus
8104 } // extern "C"
8105 #endif
8106
8107 #endif
8108