1df37111358d02836cb29bbcb9c6e4c95dff90a16Johann// This file is generated. Do not edit. 27ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#ifndef VP8_RTCD_H_ 37ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define VP8_RTCD_H_ 47ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 57ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#ifdef RTCD_C 67ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define RTCD_EXTERN 77ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#else 87ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define RTCD_EXTERN extern 97ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#endif 107ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 117ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian/* 127ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian * VP8 137ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian */ 147ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 157ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianstruct blockd; 167ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianstruct macroblockd; 177ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianstruct loop_filter_info; 187ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 197ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian/* Encoder forward decls */ 207ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianstruct block; 217ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianstruct macroblock; 227ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianstruct variance_vtable; 237ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianunion int_mv; 247ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianstruct yv12_buffer_config; 257ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 267ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#ifdef __cplusplus 277ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianextern "C" { 287ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#endif 297ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 307ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_bilinear_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch); 317ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_bilinear_predict16x16_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch); 327ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_bilinear_predict16x16_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch); 337ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_bilinear_predict16x16 vp8_bilinear_predict16x16_ssse3 347ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 357ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_bilinear_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch); 367ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_bilinear_predict4x4_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch); 377ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_bilinear_predict4x4 vp8_bilinear_predict4x4_mmx 387ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 397ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_bilinear_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch); 407ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_bilinear_predict8x4_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch); 417ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_bilinear_predict8x4 vp8_bilinear_predict8x4_mmx 427ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 437ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_bilinear_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch); 447ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_bilinear_predict8x8_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch); 457ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_bilinear_predict8x8_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch); 467ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_bilinear_predict8x8 vp8_bilinear_predict8x8_ssse3 477ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 487ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_blend_b_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride); 497ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_blend_b vp8_blend_b_c 507ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 517ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_blend_mb_inner_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride); 527ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_blend_mb_inner vp8_blend_mb_inner_c 537ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 547ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_blend_mb_outer_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride); 557ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_blend_mb_outer vp8_blend_mb_outer_c 567ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 577ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianint vp8_block_error_c(short *coeff, short *dqcoeff); 587bc9febe8749e98a3812a0dc4380ceae75c29450Johannint vp8_block_error_sse2(short *coeff, short *dqcoeff); 597bc9febe8749e98a3812a0dc4380ceae75c29450Johann#define vp8_block_error vp8_block_error_sse2 607ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 617ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_copy32xn_c(const unsigned char *src_ptr, int source_stride, unsigned char *dst_ptr, int dst_stride, int n); 627ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_copy32xn_sse2(const unsigned char *src_ptr, int source_stride, unsigned char *dst_ptr, int dst_stride, int n); 637ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_copy32xn_sse3(const unsigned char *src_ptr, int source_stride, unsigned char *dst_ptr, int dst_stride, int n); 647ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_copy32xn vp8_copy32xn_sse3 657ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 667ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_copy_mem16x16_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch); 677ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_copy_mem16x16_sse2(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch); 687ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_copy_mem16x16 vp8_copy_mem16x16_sse2 697ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 707ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_copy_mem8x4_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch); 717ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_copy_mem8x4_mmx(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch); 727ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_copy_mem8x4 vp8_copy_mem8x4_mmx 737ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 747ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_copy_mem8x8_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch); 757ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_copy_mem8x8_mmx(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch); 767ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_copy_mem8x8 vp8_copy_mem8x8_mmx 777ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 787ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_dc_only_idct_add_c(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride); 797ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_dc_only_idct_add_mmx(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride); 807ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_dc_only_idct_add vp8_dc_only_idct_add_mmx 817ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 827ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianint vp8_denoiser_filter_c(unsigned char *mc_running_avg_y, int mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising); 837ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianint vp8_denoiser_filter_sse2(unsigned char *mc_running_avg_y, int mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising); 847ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_denoiser_filter vp8_denoiser_filter_sse2 857ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 867ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianint vp8_denoiser_filter_uv_c(unsigned char *mc_running_avg, int mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising); 877ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianint vp8_denoiser_filter_uv_sse2(unsigned char *mc_running_avg, int mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising); 887ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_denoiser_filter_uv vp8_denoiser_filter_uv_sse2 897ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 907ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_dequant_idct_add_c(short *input, short *dq, unsigned char *output, int stride); 917ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_dequant_idct_add_mmx(short *input, short *dq, unsigned char *output, int stride); 927ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_dequant_idct_add vp8_dequant_idct_add_mmx 937ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 947ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_dequant_idct_add_uv_block_c(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs); 957ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_dequant_idct_add_uv_block_sse2(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs); 967ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_dequant_idct_add_uv_block vp8_dequant_idct_add_uv_block_sse2 977ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 987ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_dequant_idct_add_y_block_c(short *q, short *dq, unsigned char *dst, int stride, char *eobs); 997ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_dequant_idct_add_y_block_sse2(short *q, short *dq, unsigned char *dst, int stride, char *eobs); 1007ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_dequant_idct_add_y_block vp8_dequant_idct_add_y_block_sse2 1017ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 1027ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_dequantize_b_c(struct blockd*, short *dqc); 1037ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_dequantize_b_mmx(struct blockd*, short *dqc); 1047ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_dequantize_b vp8_dequantize_b_mmx 1057ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 1067ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianint vp8_diamond_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, union int_mv *best_mv, int search_param, int sad_per_bit, int *num00, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv); 1077ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianint vp8_diamond_search_sadx4(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, union int_mv *best_mv, int search_param, int sad_per_bit, int *num00, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv); 1087ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_diamond_search_sad vp8_diamond_search_sadx4 1097ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 1107ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_fast_quantize_b_c(struct block *, struct blockd *); 1117ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_fast_quantize_b_sse2(struct block *, struct blockd *); 1127ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_fast_quantize_b_ssse3(struct block *, struct blockd *); 1137ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_fast_quantize_b vp8_fast_quantize_b_ssse3 1147ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 1157ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_filter_by_weight16x16_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight); 1167ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_filter_by_weight16x16_sse2(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight); 1177ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_filter_by_weight16x16 vp8_filter_by_weight16x16_sse2 1187ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 1197ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_filter_by_weight4x4_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight); 1207ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_filter_by_weight4x4 vp8_filter_by_weight4x4_c 1217ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 1227ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_filter_by_weight8x8_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight); 1237ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_filter_by_weight8x8_sse2(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight); 1247ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_filter_by_weight8x8 vp8_filter_by_weight8x8_sse2 1257ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 1267ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianint vp8_full_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv); 1277ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianint vp8_full_search_sadx3(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv); 1287ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_full_search_sad vp8_full_search_sadx3 1297ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 1307ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_loop_filter_bh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi); 1317ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_loop_filter_bh_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi); 1327ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_loop_filter_bh vp8_loop_filter_bh_sse2 1337ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 1347ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_loop_filter_bv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi); 1357ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_loop_filter_bv_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi); 1367ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_loop_filter_bv vp8_loop_filter_bv_sse2 1377ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 1387ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_loop_filter_mbh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi); 1397ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_loop_filter_mbh_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi); 1407ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_loop_filter_mbh vp8_loop_filter_mbh_sse2 1417ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 1427ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_loop_filter_mbv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi); 1437ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_loop_filter_mbv_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi); 1447ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_loop_filter_mbv vp8_loop_filter_mbv_sse2 1457ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 1467ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_loop_filter_bhs_c(unsigned char *y, int ystride, const unsigned char *blimit); 1477ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_loop_filter_bhs_sse2(unsigned char *y, int ystride, const unsigned char *blimit); 1487ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_loop_filter_simple_bh vp8_loop_filter_bhs_sse2 1497ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 1507ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_loop_filter_bvs_c(unsigned char *y, int ystride, const unsigned char *blimit); 1517ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_loop_filter_bvs_sse2(unsigned char *y, int ystride, const unsigned char *blimit); 1527ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_loop_filter_simple_bv vp8_loop_filter_bvs_sse2 1537ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 1547ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_loop_filter_simple_horizontal_edge_c(unsigned char *y, int ystride, const unsigned char *blimit); 1557ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_loop_filter_simple_horizontal_edge_sse2(unsigned char *y, int ystride, const unsigned char *blimit); 1567ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_loop_filter_simple_mbh vp8_loop_filter_simple_horizontal_edge_sse2 1577ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 1587ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_loop_filter_simple_vertical_edge_c(unsigned char *y, int ystride, const unsigned char *blimit); 1597ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_loop_filter_simple_vertical_edge_sse2(unsigned char *y, int ystride, const unsigned char *blimit); 1607ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_loop_filter_simple_mbv vp8_loop_filter_simple_vertical_edge_sse2 1617ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 1627ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianint vp8_mbblock_error_c(struct macroblock *mb, int dc); 1637bc9febe8749e98a3812a0dc4380ceae75c29450Johannint vp8_mbblock_error_sse2(struct macroblock *mb, int dc); 1647bc9febe8749e98a3812a0dc4380ceae75c29450Johann#define vp8_mbblock_error vp8_mbblock_error_sse2 1657ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 1667ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianint vp8_mbuverror_c(struct macroblock *mb); 1677bc9febe8749e98a3812a0dc4380ceae75c29450Johannint vp8_mbuverror_sse2(struct macroblock *mb); 1687bc9febe8749e98a3812a0dc4380ceae75c29450Johann#define vp8_mbuverror vp8_mbuverror_sse2 1697ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 1707ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianint vp8_refining_search_sad_c(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv); 1717ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianint vp8_refining_search_sadx4(struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, int sad_per_bit, int distance, struct variance_vtable *fn_ptr, int *mvcost[2], union int_mv *center_mv); 1727ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_refining_search_sad vp8_refining_search_sadx4 1737ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 1747ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_regular_quantize_b_c(struct block *, struct blockd *); 1757ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_regular_quantize_b_sse2(struct block *, struct blockd *); 1767ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_regular_quantize_b vp8_regular_quantize_b_sse2 1777ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 1787ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_short_fdct4x4_c(short *input, short *output, int pitch); 1797ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_short_fdct4x4_sse2(short *input, short *output, int pitch); 1807ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_short_fdct4x4 vp8_short_fdct4x4_sse2 1817ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 1827ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_short_fdct8x4_c(short *input, short *output, int pitch); 1837ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_short_fdct8x4_sse2(short *input, short *output, int pitch); 1847ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_short_fdct8x4 vp8_short_fdct8x4_sse2 1857ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 1867ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_short_idct4x4llm_c(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride); 1877ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_short_idct4x4llm_mmx(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride); 1887ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_short_idct4x4llm vp8_short_idct4x4llm_mmx 1897ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 1907ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_short_inv_walsh4x4_c(short *input, short *output); 1917ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_short_inv_walsh4x4_sse2(short *input, short *output); 1927ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_short_inv_walsh4x4 vp8_short_inv_walsh4x4_sse2 1937ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 1947ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_short_inv_walsh4x4_1_c(short *input, short *output); 1957ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_short_inv_walsh4x4_1 vp8_short_inv_walsh4x4_1_c 1967ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 1977ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_short_walsh4x4_c(short *input, short *output, int pitch); 1987ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_short_walsh4x4_sse2(short *input, short *output, int pitch); 1997ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_short_walsh4x4 vp8_short_walsh4x4_sse2 2007ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 2017ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_sixtap_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch); 2027ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_sixtap_predict16x16_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch); 2037ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_sixtap_predict16x16_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch); 2047ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_sixtap_predict16x16 vp8_sixtap_predict16x16_ssse3 2057ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 2067ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_sixtap_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch); 2077ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_sixtap_predict4x4_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch); 2087ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_sixtap_predict4x4_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch); 2097ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_sixtap_predict4x4 vp8_sixtap_predict4x4_ssse3 2107ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 2117ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_sixtap_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch); 2127ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_sixtap_predict8x4_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch); 2137ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_sixtap_predict8x4_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch); 2147ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_sixtap_predict8x4 vp8_sixtap_predict8x4_ssse3 2157ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 2167ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_sixtap_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch); 2177ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_sixtap_predict8x8_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch); 2187ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_sixtap_predict8x8_ssse3(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch); 2197ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#define vp8_sixtap_predict8x8 vp8_sixtap_predict8x8_ssse3 2207ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 2217ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianvoid vp8_rtcd(void); 2227ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 2237ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#ifdef RTCD_C 2247ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#include "vpx_ports/x86.h" 2257ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanianstatic void setup_rtcd_internal(void) 2267ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian{ 2277ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian int flags = x86_simd_caps(); 2287ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 2297ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian (void)flags; 2307ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 2317ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian} 2327ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#endif 2337ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 2347ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#ifdef __cplusplus 2357ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian} // extern "C" 2367ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#endif 2377ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian 2387ce0a1d1337c01056ba24006efab21f00e179e04Vignesh Venkatasubramanian#endif 239