14b95526e5c4eb4fecde1cd642cf991a82c51b9f2johannkoenig@chromium.org#ifndef VP9_RTCD_H_ 24b95526e5c4eb4fecde1cd642cf991a82c51b9f2johannkoenig@chromium.org#define VP9_RTCD_H_ 38ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org 48ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org#ifdef RTCD_C 58ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org#define RTCD_EXTERN 68ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org#else 78ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org#define RTCD_EXTERN extern 88ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org#endif 98ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org 10dddee1ec7cedf276305b107429f684539b105276johannkoenig@chromium.org#ifdef __cplusplus 11dddee1ec7cedf276305b107429f684539b105276johannkoenig@chromium.orgextern "C" { 12dddee1ec7cedf276305b107429f684539b105276johannkoenig@chromium.org#endif 13dddee1ec7cedf276305b107429f684539b105276johannkoenig@chromium.org 148ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org/* 158ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org * VP9 168ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org */ 178ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org 188ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org#include "vpx/vpx_integer.h" 1910a9a0d835561a7f2300c561c514efcf374554d6fgalligan@chromium.org#include "vp9/common/vp9_enums.h" 208ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org 218ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.orgstruct macroblockd; 228ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org 238ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org/* Encoder forward decls */ 248ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.orgstruct macroblock; 254b95526e5c4eb4fecde1cd642cf991a82c51b9f2johannkoenig@chromium.orgstruct vp9_variance_vtable; 2677496404dc182c2f4a5f86ebabffe1d1ceb81e7ejohannkoenig@chromium.orgstruct search_site_config; 27d851b91d14ef0bd71acdce7b90c9a8f1af1181adjohannkoenig@chromium.orgstruct mv; 288ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.orgunion int_mv; 298ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.orgstruct yv12_buffer_config; 308ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org 3162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_blend_b_c(uint8_t *y, uint8_t *u, uint8_t *v, int y1, int u1, int v1, int alpha, int stride); 3262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_blend_b vp9_blend_b_c 338ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org 3462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_blend_mb_inner_c(uint8_t *y, uint8_t *u, uint8_t *v, int y1, int u1, int v1, int alpha, int stride); 3562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_blend_mb_inner vp9_blend_mb_inner_c 368ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org 3762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_blend_mb_outer_c(uint8_t *y, uint8_t *u, uint8_t *v, int y1, int u1, int v1, int alpha, int stride); 3862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_blend_mb_outer vp9_blend_mb_outer_c 398ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org 4062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgint64_t vp9_block_error_c(const int16_t *coeff, const int16_t *dqcoeff, intptr_t block_size, int64_t *ssz); 4162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgint64_t vp9_block_error_sse2(const int16_t *coeff, const int16_t *dqcoeff, intptr_t block_size, int64_t *ssz); 4262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_block_error vp9_block_error_sse2 4362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 4462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_convolve8_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h); 4562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_convolve8_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h); 4662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_convolve8_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h); 4762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN void (*vp9_convolve8)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h); 4862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 4962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_convolve8_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h); 5062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_convolve8_avg_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h); 5162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_convolve8_avg_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h); 5262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN void (*vp9_convolve8_avg)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h); 5362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 5462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_convolve8_avg_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h); 5562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_convolve8_avg_horiz_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h); 5662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_convolve8_avg_horiz_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h); 5762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN void (*vp9_convolve8_avg_horiz)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h); 5862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 5962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_convolve8_avg_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h); 6062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_convolve8_avg_vert_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h); 6162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_convolve8_avg_vert_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h); 6262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN void (*vp9_convolve8_avg_vert)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h); 6362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 6462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_convolve8_horiz_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h); 6562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_convolve8_horiz_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h); 6662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_convolve8_horiz_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h); 6762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN void (*vp9_convolve8_horiz)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h); 6862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 6962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_convolve8_vert_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h); 7062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_convolve8_vert_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h); 7162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_convolve8_vert_ssse3(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h); 7262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN void (*vp9_convolve8_vert)(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h); 7362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 7462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_convolve_avg_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h); 7562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_convolve_avg_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h); 7662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_convolve_avg vp9_convolve_avg_sse2 7762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 7862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_convolve_copy_c(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h); 7962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_convolve_copy_sse2(const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h); 8062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_convolve_copy vp9_convolve_copy_sse2 8162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 8262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_d117_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 8362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_d117_predictor_16x16 vp9_d117_predictor_16x16_c 8462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 8562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_d117_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 8662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_d117_predictor_32x32 vp9_d117_predictor_32x32_c 87511499294b6e6b7ce4e4071f0d4a72f0f8c31a19johannkoenig@chromium.org 8853a13f1fa964820f7a8f9d3932a6f3c0433f8bf5fgalligan@chromium.orgvoid vp9_d117_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 8947265f8fe3a36a426773454ad90d20c9aa616c24johannkoenig@chromium.org#define vp9_d117_predictor_4x4 vp9_d117_predictor_4x4_c 908ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org 9162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_d117_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 9262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_d117_predictor_8x8 vp9_d117_predictor_8x8_c 9362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 9462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_d135_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 9562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_d135_predictor_16x16 vp9_d135_predictor_16x16_c 9662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 9762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_d135_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 9862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_d135_predictor_32x32 vp9_d135_predictor_32x32_c 9962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 10053a13f1fa964820f7a8f9d3932a6f3c0433f8bf5fgalligan@chromium.orgvoid vp9_d135_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 10147265f8fe3a36a426773454ad90d20c9aa616c24johannkoenig@chromium.org#define vp9_d135_predictor_4x4 vp9_d135_predictor_4x4_c 1028ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org 10362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_d135_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 10462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_d135_predictor_8x8 vp9_d135_predictor_8x8_c 10562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 10662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_d153_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 10762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_d153_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 10862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN void (*vp9_d153_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 10962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 11062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_d153_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 11162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_d153_predictor_32x32 vp9_d153_predictor_32x32_c 11262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 11353a13f1fa964820f7a8f9d3932a6f3c0433f8bf5fgalligan@chromium.orgvoid vp9_d153_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 1140d106b34dc08439a7c6887d1316a3e1a35f8f0cajohannkoenig@chromium.orgvoid vp9_d153_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 1150d106b34dc08439a7c6887d1316a3e1a35f8f0cajohannkoenig@chromium.orgRTCD_EXTERN void (*vp9_d153_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 11647265f8fe3a36a426773454ad90d20c9aa616c24johannkoenig@chromium.org 11762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_d153_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 11862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_d153_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 11962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN void (*vp9_d153_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 12047265f8fe3a36a426773454ad90d20c9aa616c24johannkoenig@chromium.org 12162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_d207_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 12262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_d207_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 12362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN void (*vp9_d207_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 12447265f8fe3a36a426773454ad90d20c9aa616c24johannkoenig@chromium.org 12562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_d207_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 12662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_d207_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 12762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN void (*vp9_d207_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 12847265f8fe3a36a426773454ad90d20c9aa616c24johannkoenig@chromium.org 12962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_d207_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 13062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_d207_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 13162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN void (*vp9_d207_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 13247265f8fe3a36a426773454ad90d20c9aa616c24johannkoenig@chromium.org 13353a13f1fa964820f7a8f9d3932a6f3c0433f8bf5fgalligan@chromium.orgvoid vp9_d207_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 1340d106b34dc08439a7c6887d1316a3e1a35f8f0cajohannkoenig@chromium.orgvoid vp9_d207_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 1350d106b34dc08439a7c6887d1316a3e1a35f8f0cajohannkoenig@chromium.orgRTCD_EXTERN void (*vp9_d207_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 13647265f8fe3a36a426773454ad90d20c9aa616c24johannkoenig@chromium.org 13762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_d45_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 13862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_d45_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 13962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN void (*vp9_d45_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 14062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 14162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_d45_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 14262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_d45_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 14362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN void (*vp9_d45_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 14462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 14562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_d45_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 14662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_d45_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 14762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN void (*vp9_d45_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 14862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 14953a13f1fa964820f7a8f9d3932a6f3c0433f8bf5fgalligan@chromium.orgvoid vp9_d45_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 15053a13f1fa964820f7a8f9d3932a6f3c0433f8bf5fgalligan@chromium.orgvoid vp9_d45_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 15153a13f1fa964820f7a8f9d3932a6f3c0433f8bf5fgalligan@chromium.orgRTCD_EXTERN void (*vp9_d45_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 15247265f8fe3a36a426773454ad90d20c9aa616c24johannkoenig@chromium.org 15362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_d63_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 15462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_d63_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 15562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN void (*vp9_d63_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 15662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 15762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_d63_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 15862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_d63_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 15962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN void (*vp9_d63_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 16062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 16162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_d63_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 16262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_d63_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 16362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN void (*vp9_d63_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 16462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 16553a13f1fa964820f7a8f9d3932a6f3c0433f8bf5fgalligan@chromium.orgvoid vp9_d63_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 1660d106b34dc08439a7c6887d1316a3e1a35f8f0cajohannkoenig@chromium.orgvoid vp9_d63_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 1670d106b34dc08439a7c6887d1316a3e1a35f8f0cajohannkoenig@chromium.orgRTCD_EXTERN void (*vp9_d63_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 16847265f8fe3a36a426773454ad90d20c9aa616c24johannkoenig@chromium.org 16962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_dc_128_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 17062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_dc_128_predictor_16x16 vp9_dc_128_predictor_16x16_c 17162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 17262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_dc_128_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 17362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_dc_128_predictor_32x32 vp9_dc_128_predictor_32x32_c 17462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 17562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_dc_128_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 17662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_dc_128_predictor_4x4 vp9_dc_128_predictor_4x4_c 17762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 17862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_dc_128_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 17962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_dc_128_predictor_8x8 vp9_dc_128_predictor_8x8_c 18062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 18162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_dc_left_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 18262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_dc_left_predictor_16x16 vp9_dc_left_predictor_16x16_c 18362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 18462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_dc_left_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 18562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_dc_left_predictor_32x32 vp9_dc_left_predictor_32x32_c 18662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 18762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_dc_left_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 18862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_dc_left_predictor_4x4 vp9_dc_left_predictor_4x4_c 18962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 19062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_dc_left_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 19162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_dc_left_predictor_8x8 vp9_dc_left_predictor_8x8_c 19262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 19362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_dc_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 19462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_dc_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 19562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_dc_predictor_16x16 vp9_dc_predictor_16x16_sse2 19662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 19762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_dc_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 19862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_dc_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 19962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_dc_predictor_32x32 vp9_dc_predictor_32x32_sse2 20062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 20162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_dc_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 20262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_dc_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 20362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_dc_predictor_4x4 vp9_dc_predictor_4x4_sse 20462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 20562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_dc_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 20662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_dc_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 20762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_dc_predictor_8x8 vp9_dc_predictor_8x8_sse 20862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 20962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_dc_top_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 21062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_dc_top_predictor_16x16 vp9_dc_top_predictor_16x16_c 21162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 21262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_dc_top_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 21362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_dc_top_predictor_32x32 vp9_dc_top_predictor_32x32_c 21462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 21562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_dc_top_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 21662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_dc_top_predictor_4x4 vp9_dc_top_predictor_4x4_c 21762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 21862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_dc_top_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 21962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_dc_top_predictor_8x8 vp9_dc_top_predictor_8x8_c 22062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 22177496404dc182c2f4a5f86ebabffe1d1ceb81e7ejohannkoenig@chromium.orgint vp9_diamond_search_sad_c(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv); 22277496404dc182c2f4a5f86ebabffe1d1ceb81e7ejohannkoenig@chromium.orgint vp9_diamond_search_sadx4(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv); 22377496404dc182c2f4a5f86ebabffe1d1ceb81e7ejohannkoenig@chromium.orgRTCD_EXTERN int (*vp9_diamond_search_sad)(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv); 22462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 22562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_fdct16x16_c(const int16_t *input, int16_t *output, int stride); 22662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_fdct16x16_sse2(const int16_t *input, int16_t *output, int stride); 227497a01b086cc703ed01af8e8aeed3e5733ad8315johannkoenig@chromium.org#define vp9_fdct16x16 vp9_fdct16x16_sse2 22862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 22962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_fdct32x32_c(const int16_t *input, int16_t *output, int stride); 23062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_fdct32x32_sse2(const int16_t *input, int16_t *output, int stride); 231497a01b086cc703ed01af8e8aeed3e5733ad8315johannkoenig@chromium.org#define vp9_fdct32x32 vp9_fdct32x32_sse2 23262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 23362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_fdct32x32_rd_c(const int16_t *input, int16_t *output, int stride); 23462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_fdct32x32_rd_sse2(const int16_t *input, int16_t *output, int stride); 235497a01b086cc703ed01af8e8aeed3e5733ad8315johannkoenig@chromium.org#define vp9_fdct32x32_rd vp9_fdct32x32_rd_sse2 23662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 23762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_fdct4x4_c(const int16_t *input, int16_t *output, int stride); 23862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_fdct4x4_sse2(const int16_t *input, int16_t *output, int stride); 239497a01b086cc703ed01af8e8aeed3e5733ad8315johannkoenig@chromium.org#define vp9_fdct4x4 vp9_fdct4x4_sse2 24062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 24162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_fdct8x8_c(const int16_t *input, int16_t *output, int stride); 24262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_fdct8x8_sse2(const int16_t *input, int16_t *output, int stride); 24377496404dc182c2f4a5f86ebabffe1d1ceb81e7ejohannkoenig@chromium.orgvoid vp9_fdct8x8_ssse3(const int16_t *input, int16_t *output, int stride); 24477496404dc182c2f4a5f86ebabffe1d1ceb81e7ejohannkoenig@chromium.orgRTCD_EXTERN void (*vp9_fdct8x8)(const int16_t *input, int16_t *output, int stride); 24562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 24662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_fht16x16_c(const int16_t *input, int16_t *output, int stride, int tx_type); 24762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_fht16x16_sse2(const int16_t *input, int16_t *output, int stride, int tx_type); 248497a01b086cc703ed01af8e8aeed3e5733ad8315johannkoenig@chromium.org#define vp9_fht16x16 vp9_fht16x16_sse2 24962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 25062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_fht4x4_c(const int16_t *input, int16_t *output, int stride, int tx_type); 25162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_fht4x4_sse2(const int16_t *input, int16_t *output, int stride, int tx_type); 252497a01b086cc703ed01af8e8aeed3e5733ad8315johannkoenig@chromium.org#define vp9_fht4x4 vp9_fht4x4_sse2 25362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 25462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_fht8x8_c(const int16_t *input, int16_t *output, int stride, int tx_type); 25562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_fht8x8_sse2(const int16_t *input, int16_t *output, int stride, int tx_type); 256497a01b086cc703ed01af8e8aeed3e5733ad8315johannkoenig@chromium.org#define vp9_fht8x8 vp9_fht8x8_sse2 25762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 25877496404dc182c2f4a5f86ebabffe1d1ceb81e7ejohannkoenig@chromium.orgint vp9_full_range_search_c(const struct macroblock *x, const struct search_site_config *cfg, struct mv *ref_mv, struct mv *best_mv, int search_param, int sad_per_bit, int *num00, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv); 25962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_full_range_search vp9_full_range_search_c 26062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 261693441efe611de7ca09c00f4e79776f604b689f4joeyparrish@google.comint vp9_full_search_sad_c(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv); 262693441efe611de7ca09c00f4e79776f604b689f4joeyparrish@google.comint vp9_full_search_sadx3(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv); 263693441efe611de7ca09c00f4e79776f604b689f4joeyparrish@google.comint vp9_full_search_sadx8(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv); 264693441efe611de7ca09c00f4e79776f604b689f4joeyparrish@google.comRTCD_EXTERN int (*vp9_full_search_sad)(const struct macroblock *x, const struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv, struct mv *best_mv); 26562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 26662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_fwht4x4_c(const int16_t *input, int16_t *output, int stride); 2677765c078fa920ba6c949c15f16b6cc979d8bb95bjohannkoenig@chromium.orgvoid vp9_fwht4x4_mmx(const int16_t *input, int16_t *output, int stride); 2687765c078fa920ba6c949c15f16b6cc979d8bb95bjohannkoenig@chromium.org#define vp9_fwht4x4 vp9_fwht4x4_mmx 26962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 27062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_get_mb_ss_c(const int16_t *); 27162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_get_mb_ss_mmx(const int16_t *); 27262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_get_mb_ss_sse2(const int16_t *); 27362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_get_mb_ss vp9_get_mb_ss_sse2 27462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 27562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_h_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 27662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_h_predictor_16x16_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 27762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN void (*vp9_h_predictor_16x16)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 27862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 27962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_h_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 28062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_h_predictor_32x32_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 28162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN void (*vp9_h_predictor_32x32)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 28262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 28362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_h_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 28462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_h_predictor_4x4_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 28562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN void (*vp9_h_predictor_4x4)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 28662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 28753a13f1fa964820f7a8f9d3932a6f3c0433f8bf5fgalligan@chromium.orgvoid vp9_h_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 28853a13f1fa964820f7a8f9d3932a6f3c0433f8bf5fgalligan@chromium.orgvoid vp9_h_predictor_8x8_ssse3(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 28953a13f1fa964820f7a8f9d3932a6f3c0433f8bf5fgalligan@chromium.orgRTCD_EXTERN void (*vp9_h_predictor_8x8)(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 29047265f8fe3a36a426773454ad90d20c9aa616c24johannkoenig@chromium.org 29162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_idct16x16_10_add_c(const int16_t *input, uint8_t *dest, int dest_stride); 29262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_idct16x16_10_add_sse2(const int16_t *input, uint8_t *dest, int dest_stride); 29362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_idct16x16_10_add vp9_idct16x16_10_add_sse2 29462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 29562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_idct16x16_1_add_c(const int16_t *input, uint8_t *dest, int dest_stride); 29662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_idct16x16_1_add_sse2(const int16_t *input, uint8_t *dest, int dest_stride); 29762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_idct16x16_1_add vp9_idct16x16_1_add_sse2 29862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 29962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_idct16x16_256_add_c(const int16_t *input, uint8_t *dest, int dest_stride); 30062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_idct16x16_256_add_sse2(const int16_t *input, uint8_t *dest, int dest_stride); 30162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_idct16x16_256_add vp9_idct16x16_256_add_sse2 30262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 30362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_idct32x32_1024_add_c(const int16_t *input, uint8_t *dest, int dest_stride); 30462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_idct32x32_1024_add_sse2(const int16_t *input, uint8_t *dest, int dest_stride); 30562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_idct32x32_1024_add vp9_idct32x32_1024_add_sse2 30662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 30762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_idct32x32_1_add_c(const int16_t *input, uint8_t *dest, int dest_stride); 30862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_idct32x32_1_add_sse2(const int16_t *input, uint8_t *dest, int dest_stride); 30962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_idct32x32_1_add vp9_idct32x32_1_add_sse2 31062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 31162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_idct32x32_34_add_c(const int16_t *input, uint8_t *dest, int dest_stride); 31262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_idct32x32_34_add_sse2(const int16_t *input, uint8_t *dest, int dest_stride); 31362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_idct32x32_34_add vp9_idct32x32_34_add_sse2 31462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 31562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_idct4x4_16_add_c(const int16_t *input, uint8_t *dest, int dest_stride); 31662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_idct4x4_16_add_sse2(const int16_t *input, uint8_t *dest, int dest_stride); 31762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_idct4x4_16_add vp9_idct4x4_16_add_sse2 31862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 31962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_idct4x4_1_add_c(const int16_t *input, uint8_t *dest, int dest_stride); 32062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_idct4x4_1_add_sse2(const int16_t *input, uint8_t *dest, int dest_stride); 32162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_idct4x4_1_add vp9_idct4x4_1_add_sse2 32262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 3237765c078fa920ba6c949c15f16b6cc979d8bb95bjohannkoenig@chromium.orgvoid vp9_idct8x8_12_add_c(const int16_t *input, uint8_t *dest, int dest_stride); 3247765c078fa920ba6c949c15f16b6cc979d8bb95bjohannkoenig@chromium.orgvoid vp9_idct8x8_12_add_sse2(const int16_t *input, uint8_t *dest, int dest_stride); 3257765c078fa920ba6c949c15f16b6cc979d8bb95bjohannkoenig@chromium.orgvoid vp9_idct8x8_12_add_ssse3(const int16_t *input, uint8_t *dest, int dest_stride); 3267765c078fa920ba6c949c15f16b6cc979d8bb95bjohannkoenig@chromium.orgRTCD_EXTERN void (*vp9_idct8x8_12_add)(const int16_t *input, uint8_t *dest, int dest_stride); 32762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 32862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_idct8x8_1_add_c(const int16_t *input, uint8_t *dest, int dest_stride); 32962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_idct8x8_1_add_sse2(const int16_t *input, uint8_t *dest, int dest_stride); 33062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_idct8x8_1_add vp9_idct8x8_1_add_sse2 33162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 33262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_idct8x8_64_add_c(const int16_t *input, uint8_t *dest, int dest_stride); 33362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_idct8x8_64_add_sse2(const int16_t *input, uint8_t *dest, int dest_stride); 334810cf1767dc8df4783e02ba8a712072f50ddc99efgalligan@chromium.orgvoid vp9_idct8x8_64_add_ssse3(const int16_t *input, uint8_t *dest, int dest_stride); 335810cf1767dc8df4783e02ba8a712072f50ddc99efgalligan@chromium.orgRTCD_EXTERN void (*vp9_idct8x8_64_add)(const int16_t *input, uint8_t *dest, int dest_stride); 33662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 33762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_iht16x16_256_add_c(const int16_t *input, uint8_t *output, int pitch, int tx_type); 33862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_iht16x16_256_add_sse2(const int16_t *input, uint8_t *output, int pitch, int tx_type); 33962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_iht16x16_256_add vp9_iht16x16_256_add_sse2 34062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 34162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_iht4x4_16_add_c(const int16_t *input, uint8_t *dest, int dest_stride, int tx_type); 34262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_iht4x4_16_add_sse2(const int16_t *input, uint8_t *dest, int dest_stride, int tx_type); 34362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_iht4x4_16_add vp9_iht4x4_16_add_sse2 34462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 34562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_iht8x8_64_add_c(const int16_t *input, uint8_t *dest, int dest_stride, int tx_type); 34662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_iht8x8_64_add_sse2(const int16_t *input, uint8_t *dest, int dest_stride, int tx_type); 34762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_iht8x8_64_add vp9_iht8x8_64_add_sse2 34862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 34962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_iwht4x4_16_add_c(const int16_t *input, uint8_t *dest, int dest_stride); 35062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_iwht4x4_16_add vp9_iwht4x4_16_add_c 35162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 35262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_iwht4x4_1_add_c(const int16_t *input, uint8_t *dest, int dest_stride); 35362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_iwht4x4_1_add vp9_iwht4x4_1_add_c 35462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 35562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_lpf_horizontal_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count); 35662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_lpf_horizontal_16_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count); 357497a01b086cc703ed01af8e8aeed3e5733ad8315johannkoenig@chromium.org#define vp9_lpf_horizontal_16 vp9_lpf_horizontal_16_sse2 35862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 35962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_lpf_horizontal_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count); 36062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_lpf_horizontal_4_mmx(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count); 36162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_lpf_horizontal_4 vp9_lpf_horizontal_4_mmx 36262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 36362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_lpf_horizontal_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1); 36462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_lpf_horizontal_4_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1); 36562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_lpf_horizontal_4_dual vp9_lpf_horizontal_4_dual_sse2 36662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 36762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_lpf_horizontal_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count); 36862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_lpf_horizontal_8_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count); 36962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_lpf_horizontal_8 vp9_lpf_horizontal_8_sse2 37062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 37162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_lpf_horizontal_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1); 37262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_lpf_horizontal_8_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1); 37362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_lpf_horizontal_8_dual vp9_lpf_horizontal_8_dual_sse2 37462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 37562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_lpf_vertical_16_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh); 37662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_lpf_vertical_16_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh); 37762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_lpf_vertical_16 vp9_lpf_vertical_16_sse2 37862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 37962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_lpf_vertical_16_dual_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh); 38062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_lpf_vertical_16_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh); 38162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_lpf_vertical_16_dual vp9_lpf_vertical_16_dual_sse2 38262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 38362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_lpf_vertical_4_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count); 38462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_lpf_vertical_4_mmx(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count); 38562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_lpf_vertical_4 vp9_lpf_vertical_4_mmx 38662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 38762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_lpf_vertical_4_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1); 38862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_lpf_vertical_4_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1); 38962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_lpf_vertical_4_dual vp9_lpf_vertical_4_dual_sse2 39062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 39162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_lpf_vertical_8_c(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count); 39262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_lpf_vertical_8_sse2(uint8_t *s, int pitch, const uint8_t *blimit, const uint8_t *limit, const uint8_t *thresh, int count); 39362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_lpf_vertical_8 vp9_lpf_vertical_8_sse2 39462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 39562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_lpf_vertical_8_dual_c(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1); 39662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_lpf_vertical_8_dual_sse2(uint8_t *s, int pitch, const uint8_t *blimit0, const uint8_t *limit0, const uint8_t *thresh0, const uint8_t *blimit1, const uint8_t *limit1, const uint8_t *thresh1); 39762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_lpf_vertical_8_dual vp9_lpf_vertical_8_dual_sse2 39862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 39962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_mse16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse); 40062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_mse16x16_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse); 40162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_mse16x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse); 402497a01b086cc703ed01af8e8aeed3e5733ad8315johannkoenig@chromium.org#define vp9_mse16x16 vp9_mse16x16_sse2 40362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 40462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_mse16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse); 40562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_mse16x8 vp9_mse16x8_c 40662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 40762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_mse8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse); 40862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_mse8x16 vp9_mse8x16_c 40962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 41062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_mse8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int recon_stride, unsigned int *sse); 41162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_mse8x8 vp9_mse8x8_c 41262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 41362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_quantize_b_c(const int16_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, int16_t *qcoeff_ptr, int16_t *dqcoeff_ptr, const int16_t *dequant_ptr, int zbin_oq_value, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan); 41462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_quantize_b_ssse3(const int16_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, int16_t *qcoeff_ptr, int16_t *dqcoeff_ptr, const int16_t *dequant_ptr, int zbin_oq_value, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan); 41562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN void (*vp9_quantize_b)(const int16_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, int16_t *qcoeff_ptr, int16_t *dqcoeff_ptr, const int16_t *dequant_ptr, int zbin_oq_value, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan); 41662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 41762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_quantize_b_32x32_c(const int16_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, int16_t *qcoeff_ptr, int16_t *dqcoeff_ptr, const int16_t *dequant_ptr, int zbin_oq_value, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan); 41862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_quantize_b_32x32_ssse3(const int16_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, int16_t *qcoeff_ptr, int16_t *dqcoeff_ptr, const int16_t *dequant_ptr, int zbin_oq_value, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan); 41962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN void (*vp9_quantize_b_32x32)(const int16_t *coeff_ptr, intptr_t n_coeffs, int skip_block, const int16_t *zbin_ptr, const int16_t *round_ptr, const int16_t *quant_ptr, const int16_t *quant_shift_ptr, int16_t *qcoeff_ptr, int16_t *dqcoeff_ptr, const int16_t *dequant_ptr, int zbin_oq_value, uint16_t *eob_ptr, const int16_t *scan, const int16_t *iscan); 42062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 421693441efe611de7ca09c00f4e79776f604b689f4joeyparrish@google.comint vp9_refining_search_sad_c(const struct macroblock *x, struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv); 422693441efe611de7ca09c00f4e79776f604b689f4joeyparrish@google.comint vp9_refining_search_sadx4(const struct macroblock *x, struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv); 423693441efe611de7ca09c00f4e79776f604b689f4joeyparrish@google.comRTCD_EXTERN int (*vp9_refining_search_sad)(const struct macroblock *x, struct mv *ref_mv, int sad_per_bit, int distance, const struct vp9_variance_vtable *fn_ptr, const struct mv *center_mv); 42462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 42562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int max_sad); 42662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad16x16_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int max_sad); 42762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad16x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int max_sad); 42862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad16x16 vp9_sad16x16_sse2 42962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 43062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad16x16_avg_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred, unsigned int max_sad); 43162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad16x16_avg_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred, unsigned int max_sad); 43262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad16x16_avg vp9_sad16x16_avg_sse2 43362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 43462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad16x16x3_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sad_array); 43562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad16x16x3_sse3(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sad_array); 43662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad16x16x3_ssse3(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sad_array); 43762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN void (*vp9_sad16x16x3)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sad_array); 43862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 43962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad16x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t* const ref_ptr[], int ref_stride, unsigned int *sad_array); 44062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad16x16x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t* const ref_ptr[], int ref_stride, unsigned int *sad_array); 44162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad16x16x4d vp9_sad16x16x4d_sse2 44262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 44362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad16x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array); 44462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad16x16x8 vp9_sad16x16x8_c 44562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 44662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad16x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int max_sad); 44762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad16x32_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int max_sad); 44862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad16x32 vp9_sad16x32_sse2 44962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 45062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad16x32_avg_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred, unsigned int max_sad); 45162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad16x32_avg_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred, unsigned int max_sad); 45262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad16x32_avg vp9_sad16x32_avg_sse2 45362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 45462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad16x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t* const ref_ptr[], int ref_stride, unsigned int *sad_array); 45562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad16x32x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t* const ref_ptr[], int ref_stride, unsigned int *sad_array); 45662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad16x32x4d vp9_sad16x32x4d_sse2 45762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 45862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int max_sad); 45962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad16x8_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int max_sad); 46062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad16x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int max_sad); 46162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad16x8 vp9_sad16x8_sse2 46262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 46362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad16x8_avg_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred, unsigned int max_sad); 46462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad16x8_avg_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred, unsigned int max_sad); 46562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad16x8_avg vp9_sad16x8_avg_sse2 46662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 46762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad16x8x3_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sad_array); 46862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad16x8x3_sse3(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sad_array); 46962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad16x8x3_ssse3(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sad_array); 47062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN void (*vp9_sad16x8x3)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sad_array); 47162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 47262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad16x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t* const ref_ptr[], int ref_stride, unsigned int *sad_array); 47362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad16x8x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t* const ref_ptr[], int ref_stride, unsigned int *sad_array); 47462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad16x8x4d vp9_sad16x8x4d_sse2 47562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 47662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad16x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array); 47762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad16x8x8 vp9_sad16x8x8_c 47862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 47962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad32x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int max_sad); 48062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad32x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int max_sad); 48162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad32x16 vp9_sad32x16_sse2 48262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 48362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad32x16_avg_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred, unsigned int max_sad); 48462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad32x16_avg_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred, unsigned int max_sad); 48562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad32x16_avg vp9_sad32x16_avg_sse2 48662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 48762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad32x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t* const ref_ptr[], int ref_stride, unsigned int *sad_array); 48862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad32x16x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t* const ref_ptr[], int ref_stride, unsigned int *sad_array); 48962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad32x16x4d vp9_sad32x16x4d_sse2 49062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 49162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad32x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int max_sad); 49262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad32x32_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int max_sad); 49362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad32x32 vp9_sad32x32_sse2 49462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 49562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad32x32_avg_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred, unsigned int max_sad); 49662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad32x32_avg_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred, unsigned int max_sad); 49762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad32x32_avg vp9_sad32x32_avg_sse2 49862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 49962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad32x32x3_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sad_array); 50062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad32x32x3 vp9_sad32x32x3_c 50162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 50262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad32x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t* const ref_ptr[], int ref_stride, unsigned int *sad_array); 50362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad32x32x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t* const ref_ptr[], int ref_stride, unsigned int *sad_array); 504497a01b086cc703ed01af8e8aeed3e5733ad8315johannkoenig@chromium.org#define vp9_sad32x32x4d vp9_sad32x32x4d_sse2 50562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 50662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad32x32x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array); 50762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad32x32x8 vp9_sad32x32x8_c 50862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 50962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad32x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int max_sad); 51062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad32x64_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int max_sad); 51162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad32x64 vp9_sad32x64_sse2 51262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 51362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad32x64_avg_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred, unsigned int max_sad); 51462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad32x64_avg_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred, unsigned int max_sad); 51562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad32x64_avg vp9_sad32x64_avg_sse2 51662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 51762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad32x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t* const ref_ptr[], int ref_stride, unsigned int *sad_array); 51862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad32x64x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t* const ref_ptr[], int ref_stride, unsigned int *sad_array); 51962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad32x64x4d vp9_sad32x64x4d_sse2 52062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 52162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad4x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int max_sad); 52262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad4x4_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int max_sad); 52362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad4x4_sse(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int max_sad); 52462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad4x4 vp9_sad4x4_sse 52562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 52662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad4x4_avg_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred, unsigned int max_sad); 52762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad4x4_avg_sse(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred, unsigned int max_sad); 52862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad4x4_avg vp9_sad4x4_avg_sse 52962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 53062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad4x4x3_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sad_array); 53162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad4x4x3_sse3(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sad_array); 53262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN void (*vp9_sad4x4x3)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sad_array); 53362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 53462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad4x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t* const ref_ptr[], int ref_stride, unsigned int *sad_array); 53562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad4x4x4d_sse(const uint8_t *src_ptr, int src_stride, const uint8_t* const ref_ptr[], int ref_stride, unsigned int *sad_array); 53662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad4x4x4d vp9_sad4x4x4d_sse 53762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 53862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad4x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array); 53962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad4x4x8 vp9_sad4x4x8_c 54062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 54162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad4x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int max_sad); 54262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad4x8_sse(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int max_sad); 54362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad4x8 vp9_sad4x8_sse 54462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 54562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad4x8_avg_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred, unsigned int max_sad); 54662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad4x8_avg_sse(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred, unsigned int max_sad); 54762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad4x8_avg vp9_sad4x8_avg_sse 54862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 54962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad4x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t* const ref_ptr[], int ref_stride, unsigned int *sad_array); 55062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad4x8x4d_sse(const uint8_t *src_ptr, int src_stride, const uint8_t* const ref_ptr[], int ref_stride, unsigned int *sad_array); 55162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad4x8x4d vp9_sad4x8x4d_sse 55262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 55362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad4x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array); 55462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad4x8x8 vp9_sad4x8x8_c 55562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 55662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad64x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int max_sad); 55762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad64x32_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int max_sad); 55862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad64x32 vp9_sad64x32_sse2 55962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 56062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad64x32_avg_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred, unsigned int max_sad); 56162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad64x32_avg_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred, unsigned int max_sad); 56262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad64x32_avg vp9_sad64x32_avg_sse2 56362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 56462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad64x32x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t* const ref_ptr[], int ref_stride, unsigned int *sad_array); 56562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad64x32x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t* const ref_ptr[], int ref_stride, unsigned int *sad_array); 56662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad64x32x4d vp9_sad64x32x4d_sse2 56762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 56862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad64x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int max_sad); 56962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad64x64_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int max_sad); 57062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad64x64 vp9_sad64x64_sse2 57162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 57262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad64x64_avg_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred, unsigned int max_sad); 57362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad64x64_avg_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred, unsigned int max_sad); 57462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad64x64_avg vp9_sad64x64_avg_sse2 57562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 57662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad64x64x3_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sad_array); 57762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad64x64x3 vp9_sad64x64x3_c 57862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 57962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad64x64x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t* const ref_ptr[], int ref_stride, unsigned int *sad_array); 58062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad64x64x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t* const ref_ptr[], int ref_stride, unsigned int *sad_array); 581497a01b086cc703ed01af8e8aeed3e5733ad8315johannkoenig@chromium.org#define vp9_sad64x64x4d vp9_sad64x64x4d_sse2 58262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 58362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad64x64x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array); 58462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad64x64x8 vp9_sad64x64x8_c 58562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 58662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int max_sad); 58762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad8x16_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int max_sad); 58862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad8x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int max_sad); 58962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad8x16 vp9_sad8x16_sse2 59062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 59162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad8x16_avg_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred, unsigned int max_sad); 59262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad8x16_avg_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred, unsigned int max_sad); 59362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad8x16_avg vp9_sad8x16_avg_sse2 59462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 59562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad8x16x3_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sad_array); 59662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad8x16x3_sse3(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sad_array); 59762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN void (*vp9_sad8x16x3)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sad_array); 59862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 59962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad8x16x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t* const ref_ptr[], int ref_stride, unsigned int *sad_array); 60062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad8x16x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t* const ref_ptr[], int ref_stride, unsigned int *sad_array); 60162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad8x16x4d vp9_sad8x16x4d_sse2 60262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 60362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad8x16x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array); 60462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad8x16x8 vp9_sad8x16x8_c 60562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 60662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad8x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int max_sad); 60762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad8x4_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int max_sad); 60862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad8x4 vp9_sad8x4_sse2 60962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 61062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad8x4_avg_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred, unsigned int max_sad); 61162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad8x4_avg_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred, unsigned int max_sad); 61262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad8x4_avg vp9_sad8x4_avg_sse2 61362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 61462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad8x4x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t* const ref_ptr[], int ref_stride, unsigned int *sad_array); 61562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad8x4x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t* const ref_ptr[], int ref_stride, unsigned int *sad_array); 61662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad8x4x4d vp9_sad8x4x4d_sse2 61762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 61862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad8x4x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array); 61962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad8x4x8 vp9_sad8x4x8_c 62062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 62162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int max_sad); 62262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad8x8_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int max_sad); 62362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad8x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int max_sad); 62462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad8x8 vp9_sad8x8_sse2 62562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 62662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad8x8_avg_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred, unsigned int max_sad); 62762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sad8x8_avg_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, const uint8_t *second_pred, unsigned int max_sad); 62862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad8x8_avg vp9_sad8x8_avg_sse2 62962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 63062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad8x8x3_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sad_array); 63162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad8x8x3_sse3(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sad_array); 63262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN void (*vp9_sad8x8x3)(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sad_array); 63362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 63462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad8x8x4d_c(const uint8_t *src_ptr, int src_stride, const uint8_t* const ref_ptr[], int ref_stride, unsigned int *sad_array); 63562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad8x8x4d_sse2(const uint8_t *src_ptr, int src_stride, const uint8_t* const ref_ptr[], int ref_stride, unsigned int *sad_array); 63662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad8x8x4d vp9_sad8x8x4d_sse2 63762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 63862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_sad8x8x8_c(const uint8_t *src_ptr, int src_stride, const uint8_t *ref_ptr, int ref_stride, uint32_t *sad_array); 63962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_sad8x8x8 vp9_sad8x8x8_c 64062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 64162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 64262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance16x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 64362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance16x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 64462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN unsigned int (*vp9_sub_pixel_avg_variance16x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 64562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 64662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 64762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance16x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 64862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance16x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 64962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN unsigned int (*vp9_sub_pixel_avg_variance16x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 65062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 65162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 65262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance16x8_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 65362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance16x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 65462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN unsigned int (*vp9_sub_pixel_avg_variance16x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 65562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 65662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 65762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance32x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 65862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance32x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 65962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN unsigned int (*vp9_sub_pixel_avg_variance32x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 66062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 66162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 66262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance32x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 66362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance32x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 66462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN unsigned int (*vp9_sub_pixel_avg_variance32x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 66562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 66662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 66762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance32x64_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 66862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance32x64_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 66962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN unsigned int (*vp9_sub_pixel_avg_variance32x64)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 67062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 67162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 67262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance4x4_sse(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 67362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance4x4_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 67462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN unsigned int (*vp9_sub_pixel_avg_variance4x4)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 67562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 67662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 67762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance4x8_sse(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 67862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance4x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 67962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN unsigned int (*vp9_sub_pixel_avg_variance4x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 68062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 68162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 68262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance64x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 68362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance64x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 68462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN unsigned int (*vp9_sub_pixel_avg_variance64x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 68562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 68662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 68762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance64x64_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 68862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance64x64_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 68962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN unsigned int (*vp9_sub_pixel_avg_variance64x64)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 69062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 69162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 69262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance8x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 69362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance8x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 69462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN unsigned int (*vp9_sub_pixel_avg_variance8x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 69562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 69662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 69762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance8x4_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 69862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance8x4_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 69962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN unsigned int (*vp9_sub_pixel_avg_variance8x4)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 70062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 70162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 70262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance8x8_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 70362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_avg_variance8x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 70462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN unsigned int (*vp9_sub_pixel_avg_variance8x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse, const uint8_t *second_pred); 70562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 70662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance16x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 70762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance16x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 70862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance16x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 70962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN unsigned int (*vp9_sub_pixel_variance16x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 71062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 71162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance16x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 71262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance16x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 71362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance16x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 71462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN unsigned int (*vp9_sub_pixel_variance16x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 71562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 71662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance16x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 71762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance16x8_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 71862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance16x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 71962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN unsigned int (*vp9_sub_pixel_variance16x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 72062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 72162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance32x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 72262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance32x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 72362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance32x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 72462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN unsigned int (*vp9_sub_pixel_variance32x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 72562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 72662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance32x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 72762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance32x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 72862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance32x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 72962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN unsigned int (*vp9_sub_pixel_variance32x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 73062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 73162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance32x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 73262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance32x64_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 73362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance32x64_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 73462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN unsigned int (*vp9_sub_pixel_variance32x64)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 73562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 73662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance4x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 73762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance4x4_sse(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 73862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance4x4_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 73962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN unsigned int (*vp9_sub_pixel_variance4x4)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 74062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 74162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance4x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 74262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance4x8_sse(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 74362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance4x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 74462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN unsigned int (*vp9_sub_pixel_variance4x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 74562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 74662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance64x32_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 74762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance64x32_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 74862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance64x32_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 74962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN unsigned int (*vp9_sub_pixel_variance64x32)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 75062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 75162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance64x64_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 75262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance64x64_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 75362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance64x64_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 75462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN unsigned int (*vp9_sub_pixel_variance64x64)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 75562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 75662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance8x16_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 75762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance8x16_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 75862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance8x16_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 75962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN unsigned int (*vp9_sub_pixel_variance8x16)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 76062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 76162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance8x4_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 76262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance8x4_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 76362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance8x4_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 76462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN unsigned int (*vp9_sub_pixel_variance8x4)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 76562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 76662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance8x8_c(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 76762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance8x8_sse2(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 76862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_sub_pixel_variance8x8_ssse3(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 76962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgRTCD_EXTERN unsigned int (*vp9_sub_pixel_variance8x8)(const uint8_t *src_ptr, int source_stride, int xoffset, int yoffset, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 77062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 77162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_subtract_block_c(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride); 77262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_subtract_block_sse2(int rows, int cols, int16_t *diff_ptr, ptrdiff_t diff_stride, const uint8_t *src_ptr, ptrdiff_t src_stride, const uint8_t *pred_ptr, ptrdiff_t pred_stride); 77362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_subtract_block vp9_subtract_block_sse2 77462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 77562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_temporal_filter_apply_c(uint8_t *frame1, unsigned int stride, uint8_t *frame2, unsigned int block_size, int strength, int filter_weight, unsigned int *accumulator, uint16_t *count); 77662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_temporal_filter_apply_sse2(uint8_t *frame1, unsigned int stride, uint8_t *frame2, unsigned int block_size, int strength, int filter_weight, unsigned int *accumulator, uint16_t *count); 77762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_temporal_filter_apply vp9_temporal_filter_apply_sse2 77862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 77962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_tm_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 78062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_tm_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 78162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_tm_predictor_16x16 vp9_tm_predictor_16x16_sse2 78262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 78362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_tm_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 78462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_tm_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 78562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_tm_predictor_32x32 vp9_tm_predictor_32x32_sse2 78662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 78762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_tm_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 78862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_tm_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 78962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_tm_predictor_4x4 vp9_tm_predictor_4x4_sse 79062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 79162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_tm_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 79262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_tm_predictor_8x8_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 79362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_tm_predictor_8x8 vp9_tm_predictor_8x8_sse2 79462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 79562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_v_predictor_16x16_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 79662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_v_predictor_16x16_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 79762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_v_predictor_16x16 vp9_v_predictor_16x16_sse2 79862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 79962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_v_predictor_32x32_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 80062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_v_predictor_32x32_sse2(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 80162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_v_predictor_32x32 vp9_v_predictor_32x32_sse2 80262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 80362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_v_predictor_4x4_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 80462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_v_predictor_4x4_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 80562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_v_predictor_4x4 vp9_v_predictor_4x4_sse 80662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 80762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_v_predictor_8x8_c(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 80862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_v_predictor_8x8_sse(uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left); 80962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_v_predictor_8x8 vp9_v_predictor_8x8_sse 81062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 81162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_variance16x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 81262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_variance16x16_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 81362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_variance16x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 814497a01b086cc703ed01af8e8aeed3e5733ad8315johannkoenig@chromium.org#define vp9_variance16x16 vp9_variance16x16_sse2 81562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 81662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_variance16x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 81762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_variance16x32_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 81862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_variance16x32 vp9_variance16x32_sse2 81962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 82062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_variance16x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 82162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_variance16x8_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 82262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_variance16x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 82362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_variance16x8 vp9_variance16x8_sse2 82462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 82562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_variance32x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 82662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_variance32x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 827497a01b086cc703ed01af8e8aeed3e5733ad8315johannkoenig@chromium.org#define vp9_variance32x16 vp9_variance32x16_sse2 82862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 82962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_variance32x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 83062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_variance32x32_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 831497a01b086cc703ed01af8e8aeed3e5733ad8315johannkoenig@chromium.org#define vp9_variance32x32 vp9_variance32x32_sse2 83262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 83362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_variance32x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 83462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_variance32x64_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 83562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_variance32x64 vp9_variance32x64_sse2 83662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 83762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_variance4x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 83862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_variance4x4_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 83962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_variance4x4_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 84062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_variance4x4 vp9_variance4x4_sse2 84162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 84262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_variance4x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 84362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_variance4x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 84462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_variance4x8 vp9_variance4x8_sse2 84562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 84662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_variance64x32_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 84762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_variance64x32_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 848497a01b086cc703ed01af8e8aeed3e5733ad8315johannkoenig@chromium.org#define vp9_variance64x32 vp9_variance64x32_sse2 84962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 85062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_variance64x64_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 85162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_variance64x64_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 852497a01b086cc703ed01af8e8aeed3e5733ad8315johannkoenig@chromium.org#define vp9_variance64x64 vp9_variance64x64_sse2 85362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 85462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_variance8x16_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 85562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_variance8x16_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 85662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_variance8x16_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 85762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_variance8x16 vp9_variance8x16_sse2 85862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 85962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_variance8x4_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 86062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_variance8x4_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 86162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_variance8x4 vp9_variance8x4_sse2 86262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 86362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_variance8x8_c(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 86462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_variance8x8_mmx(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 86562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgunsigned int vp9_variance8x8_sse2(const uint8_t *src_ptr, int source_stride, const uint8_t *ref_ptr, int ref_stride, unsigned int *sse); 86662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#define vp9_variance8x8 vp9_variance8x8_sse2 86762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 86862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgvoid vp9_rtcd(void); 86962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 87062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#ifdef RTCD_C 87162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org#include "vpx_ports/x86.h" 87262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.orgstatic void setup_rtcd_internal(void) 87362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org{ 87462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org int flags = x86_simd_caps(); 87562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 87662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org (void)flags; 87762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org 87862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_convolve8 = vp9_convolve8_sse2; 87962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_convolve8 = vp9_convolve8_ssse3; 88062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_convolve8_avg = vp9_convolve8_avg_sse2; 88162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_convolve8_avg = vp9_convolve8_avg_ssse3; 88262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_convolve8_avg_horiz = vp9_convolve8_avg_horiz_sse2; 88362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_convolve8_avg_horiz = vp9_convolve8_avg_horiz_ssse3; 88462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_convolve8_avg_vert = vp9_convolve8_avg_vert_sse2; 88562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_convolve8_avg_vert = vp9_convolve8_avg_vert_ssse3; 88662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_convolve8_horiz = vp9_convolve8_horiz_sse2; 88762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_convolve8_horiz = vp9_convolve8_horiz_ssse3; 88862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_convolve8_vert = vp9_convolve8_vert_sse2; 88962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_convolve8_vert = vp9_convolve8_vert_ssse3; 89062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_d153_predictor_16x16 = vp9_d153_predictor_16x16_c; 89162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_d153_predictor_16x16 = vp9_d153_predictor_16x16_ssse3; 89262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_d153_predictor_4x4 = vp9_d153_predictor_4x4_c; 89362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_d153_predictor_4x4 = vp9_d153_predictor_4x4_ssse3; 89462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_d153_predictor_8x8 = vp9_d153_predictor_8x8_c; 89562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_d153_predictor_8x8 = vp9_d153_predictor_8x8_ssse3; 89662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_d207_predictor_16x16 = vp9_d207_predictor_16x16_c; 89762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_d207_predictor_16x16 = vp9_d207_predictor_16x16_ssse3; 89862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_d207_predictor_32x32 = vp9_d207_predictor_32x32_c; 89962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_d207_predictor_32x32 = vp9_d207_predictor_32x32_ssse3; 90062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_d207_predictor_4x4 = vp9_d207_predictor_4x4_c; 90162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_d207_predictor_4x4 = vp9_d207_predictor_4x4_ssse3; 90262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_d207_predictor_8x8 = vp9_d207_predictor_8x8_c; 90362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_d207_predictor_8x8 = vp9_d207_predictor_8x8_ssse3; 90462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_d45_predictor_16x16 = vp9_d45_predictor_16x16_c; 90562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_d45_predictor_16x16 = vp9_d45_predictor_16x16_ssse3; 90662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_d45_predictor_32x32 = vp9_d45_predictor_32x32_c; 90762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_d45_predictor_32x32 = vp9_d45_predictor_32x32_ssse3; 90862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_d45_predictor_4x4 = vp9_d45_predictor_4x4_c; 90962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_d45_predictor_4x4 = vp9_d45_predictor_4x4_ssse3; 91062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_d45_predictor_8x8 = vp9_d45_predictor_8x8_c; 91162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_d45_predictor_8x8 = vp9_d45_predictor_8x8_ssse3; 91262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_d63_predictor_16x16 = vp9_d63_predictor_16x16_c; 91362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_d63_predictor_16x16 = vp9_d63_predictor_16x16_ssse3; 91462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_d63_predictor_32x32 = vp9_d63_predictor_32x32_c; 91562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_d63_predictor_32x32 = vp9_d63_predictor_32x32_ssse3; 91662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_d63_predictor_4x4 = vp9_d63_predictor_4x4_c; 91762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_d63_predictor_4x4 = vp9_d63_predictor_4x4_ssse3; 91862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_d63_predictor_8x8 = vp9_d63_predictor_8x8_c; 91962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_d63_predictor_8x8 = vp9_d63_predictor_8x8_ssse3; 92062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_diamond_search_sad = vp9_diamond_search_sad_c; 92162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSE3) vp9_diamond_search_sad = vp9_diamond_search_sadx4; 92277496404dc182c2f4a5f86ebabffe1d1ceb81e7ejohannkoenig@chromium.org vp9_fdct8x8 = vp9_fdct8x8_sse2; 92377496404dc182c2f4a5f86ebabffe1d1ceb81e7ejohannkoenig@chromium.org if (flags & HAS_SSSE3) vp9_fdct8x8 = vp9_fdct8x8_ssse3; 92462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_full_search_sad = vp9_full_search_sad_c; 92562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSE3) vp9_full_search_sad = vp9_full_search_sadx3; 92662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSE4_1) vp9_full_search_sad = vp9_full_search_sadx8; 92762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_h_predictor_16x16 = vp9_h_predictor_16x16_c; 92862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_h_predictor_16x16 = vp9_h_predictor_16x16_ssse3; 92962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_h_predictor_32x32 = vp9_h_predictor_32x32_c; 93062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_h_predictor_32x32 = vp9_h_predictor_32x32_ssse3; 93162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_h_predictor_4x4 = vp9_h_predictor_4x4_c; 93262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_h_predictor_4x4 = vp9_h_predictor_4x4_ssse3; 93362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_h_predictor_8x8 = vp9_h_predictor_8x8_c; 93462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_h_predictor_8x8 = vp9_h_predictor_8x8_ssse3; 9357765c078fa920ba6c949c15f16b6cc979d8bb95bjohannkoenig@chromium.org vp9_idct8x8_12_add = vp9_idct8x8_12_add_sse2; 9367765c078fa920ba6c949c15f16b6cc979d8bb95bjohannkoenig@chromium.org if (flags & HAS_SSSE3) vp9_idct8x8_12_add = vp9_idct8x8_12_add_ssse3; 937810cf1767dc8df4783e02ba8a712072f50ddc99efgalligan@chromium.org vp9_idct8x8_64_add = vp9_idct8x8_64_add_sse2; 938810cf1767dc8df4783e02ba8a712072f50ddc99efgalligan@chromium.org if (flags & HAS_SSSE3) vp9_idct8x8_64_add = vp9_idct8x8_64_add_ssse3; 93962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_quantize_b = vp9_quantize_b_c; 94062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_quantize_b = vp9_quantize_b_ssse3; 94162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_quantize_b_32x32 = vp9_quantize_b_32x32_c; 94262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_quantize_b_32x32 = vp9_quantize_b_32x32_ssse3; 94362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_refining_search_sad = vp9_refining_search_sad_c; 94462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSE3) vp9_refining_search_sad = vp9_refining_search_sadx4; 94562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_sad16x16x3 = vp9_sad16x16x3_c; 94662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSE3) vp9_sad16x16x3 = vp9_sad16x16x3_sse3; 94762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_sad16x16x3 = vp9_sad16x16x3_ssse3; 94862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_sad16x8x3 = vp9_sad16x8x3_c; 94962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSE3) vp9_sad16x8x3 = vp9_sad16x8x3_sse3; 95062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_sad16x8x3 = vp9_sad16x8x3_ssse3; 95162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_sad4x4x3 = vp9_sad4x4x3_c; 95262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSE3) vp9_sad4x4x3 = vp9_sad4x4x3_sse3; 95362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_sad8x16x3 = vp9_sad8x16x3_c; 95462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSE3) vp9_sad8x16x3 = vp9_sad8x16x3_sse3; 95562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_sad8x8x3 = vp9_sad8x8x3_c; 95662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSE3) vp9_sad8x8x3 = vp9_sad8x8x3_sse3; 95762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_sub_pixel_avg_variance16x16 = vp9_sub_pixel_avg_variance16x16_sse2; 95862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_sub_pixel_avg_variance16x16 = vp9_sub_pixel_avg_variance16x16_ssse3; 95962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_sub_pixel_avg_variance16x32 = vp9_sub_pixel_avg_variance16x32_sse2; 96062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_sub_pixel_avg_variance16x32 = vp9_sub_pixel_avg_variance16x32_ssse3; 96162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_sub_pixel_avg_variance16x8 = vp9_sub_pixel_avg_variance16x8_sse2; 96262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_sub_pixel_avg_variance16x8 = vp9_sub_pixel_avg_variance16x8_ssse3; 96362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_sub_pixel_avg_variance32x16 = vp9_sub_pixel_avg_variance32x16_sse2; 96462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_sub_pixel_avg_variance32x16 = vp9_sub_pixel_avg_variance32x16_ssse3; 96562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_sub_pixel_avg_variance32x32 = vp9_sub_pixel_avg_variance32x32_sse2; 96662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_sub_pixel_avg_variance32x32 = vp9_sub_pixel_avg_variance32x32_ssse3; 96762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_sub_pixel_avg_variance32x64 = vp9_sub_pixel_avg_variance32x64_sse2; 96862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_sub_pixel_avg_variance32x64 = vp9_sub_pixel_avg_variance32x64_ssse3; 96962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_sub_pixel_avg_variance4x4 = vp9_sub_pixel_avg_variance4x4_sse; 97062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_sub_pixel_avg_variance4x4 = vp9_sub_pixel_avg_variance4x4_ssse3; 97162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_sub_pixel_avg_variance4x8 = vp9_sub_pixel_avg_variance4x8_sse; 97262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_sub_pixel_avg_variance4x8 = vp9_sub_pixel_avg_variance4x8_ssse3; 97362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_sub_pixel_avg_variance64x32 = vp9_sub_pixel_avg_variance64x32_sse2; 97462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_sub_pixel_avg_variance64x32 = vp9_sub_pixel_avg_variance64x32_ssse3; 97562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_sub_pixel_avg_variance64x64 = vp9_sub_pixel_avg_variance64x64_sse2; 97662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_sub_pixel_avg_variance64x64 = vp9_sub_pixel_avg_variance64x64_ssse3; 97762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_sub_pixel_avg_variance8x16 = vp9_sub_pixel_avg_variance8x16_sse2; 97862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_sub_pixel_avg_variance8x16 = vp9_sub_pixel_avg_variance8x16_ssse3; 97962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_sub_pixel_avg_variance8x4 = vp9_sub_pixel_avg_variance8x4_sse2; 98062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_sub_pixel_avg_variance8x4 = vp9_sub_pixel_avg_variance8x4_ssse3; 98162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_sub_pixel_avg_variance8x8 = vp9_sub_pixel_avg_variance8x8_sse2; 98262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_sub_pixel_avg_variance8x8 = vp9_sub_pixel_avg_variance8x8_ssse3; 98362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_sub_pixel_variance16x16 = vp9_sub_pixel_variance16x16_sse2; 98462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_sub_pixel_variance16x16 = vp9_sub_pixel_variance16x16_ssse3; 98562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_sub_pixel_variance16x32 = vp9_sub_pixel_variance16x32_sse2; 98662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_sub_pixel_variance16x32 = vp9_sub_pixel_variance16x32_ssse3; 98762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_sub_pixel_variance16x8 = vp9_sub_pixel_variance16x8_sse2; 98862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_sub_pixel_variance16x8 = vp9_sub_pixel_variance16x8_ssse3; 98962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_sub_pixel_variance32x16 = vp9_sub_pixel_variance32x16_sse2; 99062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_sub_pixel_variance32x16 = vp9_sub_pixel_variance32x16_ssse3; 99162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_sub_pixel_variance32x32 = vp9_sub_pixel_variance32x32_sse2; 99262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_sub_pixel_variance32x32 = vp9_sub_pixel_variance32x32_ssse3; 99362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_sub_pixel_variance32x64 = vp9_sub_pixel_variance32x64_sse2; 99462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_sub_pixel_variance32x64 = vp9_sub_pixel_variance32x64_ssse3; 99562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_sub_pixel_variance4x4 = vp9_sub_pixel_variance4x4_sse; 99662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_sub_pixel_variance4x4 = vp9_sub_pixel_variance4x4_ssse3; 99762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_sub_pixel_variance4x8 = vp9_sub_pixel_variance4x8_sse; 99862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_sub_pixel_variance4x8 = vp9_sub_pixel_variance4x8_ssse3; 99962346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_sub_pixel_variance64x32 = vp9_sub_pixel_variance64x32_sse2; 100062346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_sub_pixel_variance64x32 = vp9_sub_pixel_variance64x32_ssse3; 100162346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_sub_pixel_variance64x64 = vp9_sub_pixel_variance64x64_sse2; 100262346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_sub_pixel_variance64x64 = vp9_sub_pixel_variance64x64_ssse3; 100362346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_sub_pixel_variance8x16 = vp9_sub_pixel_variance8x16_sse2; 100462346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_sub_pixel_variance8x16 = vp9_sub_pixel_variance8x16_ssse3; 100562346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_sub_pixel_variance8x4 = vp9_sub_pixel_variance8x4_sse2; 100662346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_sub_pixel_variance8x4 = vp9_sub_pixel_variance8x4_ssse3; 100762346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org vp9_sub_pixel_variance8x8 = vp9_sub_pixel_variance8x8_sse2; 100862346fffe2566140c9f486b24be8377abf9e5b59fgalligan@chromium.org if (flags & HAS_SSSE3) vp9_sub_pixel_variance8x8 = vp9_sub_pixel_variance8x8_ssse3; 10098ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org} 10108ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org#endif 1011dddee1ec7cedf276305b107429f684539b105276johannkoenig@chromium.org 1012dddee1ec7cedf276305b107429f684539b105276johannkoenig@chromium.org#ifdef __cplusplus 1013dddee1ec7cedf276305b107429f684539b105276johannkoenig@chromium.org} // extern "C" 1014dddee1ec7cedf276305b107429f684539b105276johannkoenig@chromium.org#endif 1015dddee1ec7cedf276305b107429f684539b105276johannkoenig@chromium.org 10168ae1e8e2c7efa47d8464e8a3205dbfaed138690ffgalligan@chromium.org#endif 1017