1470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#ifndef VP8_RTCD_H_
2470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define VP8_RTCD_H_
3470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
4470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#ifdef RTCD_C
5470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define RTCD_EXTERN
6470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#else
7470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define RTCD_EXTERN extern
8470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#endif
9470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
10470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#ifdef __cplusplus
11470ef077237c82c7ab7ba2def07241a6a1f9349cJohannextern "C" {
12470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#endif
13470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
14470ef077237c82c7ab7ba2def07241a6a1f9349cJohann/*
15470ef077237c82c7ab7ba2def07241a6a1f9349cJohann * VP8
16470ef077237c82c7ab7ba2def07241a6a1f9349cJohann */
17470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
18470ef077237c82c7ab7ba2def07241a6a1f9349cJohannstruct blockd;
19470ef077237c82c7ab7ba2def07241a6a1f9349cJohannstruct macroblockd;
20470ef077237c82c7ab7ba2def07241a6a1f9349cJohannstruct loop_filter_info;
21470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
22470ef077237c82c7ab7ba2def07241a6a1f9349cJohann/* Encoder forward decls */
23470ef077237c82c7ab7ba2def07241a6a1f9349cJohannstruct block;
24470ef077237c82c7ab7ba2def07241a6a1f9349cJohannstruct macroblock;
25470ef077237c82c7ab7ba2def07241a6a1f9349cJohannstruct variance_vtable;
26470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunion int_mv;
27470ef077237c82c7ab7ba2def07241a6a1f9349cJohannstruct yv12_buffer_config;
28470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
29470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_bilinear_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
30470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_bilinear_predict16x16_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
31470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_bilinear_predict16x16_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
32470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_bilinear_predict16x16 vp8_bilinear_predict16x16_sse2
33470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
34470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_bilinear_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
35470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_bilinear_predict4x4_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
36470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_bilinear_predict4x4 vp8_bilinear_predict4x4_mmx
37470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
38470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_bilinear_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
39470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_bilinear_predict8x4_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
40470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_bilinear_predict8x4 vp8_bilinear_predict8x4_mmx
41470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
42470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_bilinear_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
43470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_bilinear_predict8x8_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
44470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_bilinear_predict8x8_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
45470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_bilinear_predict8x8 vp8_bilinear_predict8x8_sse2
46470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
47470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_blend_b_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
48470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_blend_b vp8_blend_b_c
49470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
50470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_blend_mb_inner_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
51470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_blend_mb_inner vp8_blend_mb_inner_c
52470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
53470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_blend_mb_outer_c(unsigned char *y, unsigned char *u, unsigned char *v, int y1, int u1, int v1, int alpha, int stride);
54470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_blend_mb_outer vp8_blend_mb_outer_c
55470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
56470ef077237c82c7ab7ba2def07241a6a1f9349cJohannint vp8_block_error_c(short *coeff, short *dqcoeff);
57470ef077237c82c7ab7ba2def07241a6a1f9349cJohannint vp8_block_error_mmx(short *coeff, short *dqcoeff);
58470ef077237c82c7ab7ba2def07241a6a1f9349cJohannint vp8_block_error_xmm(short *coeff, short *dqcoeff);
59470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_block_error vp8_block_error_xmm
60470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
61470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_build_intra_predictors_mbuv_s_c(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row,  unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
62470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_build_intra_predictors_mbuv_s_sse2(struct macroblockd *x, unsigned char * uabove_row, unsigned char * vabove_row,  unsigned char *uleft, unsigned char *vleft, int left_stride, unsigned char * upred_ptr, unsigned char * vpred_ptr, int pred_stride);
63470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_build_intra_predictors_mbuv_s vp8_build_intra_predictors_mbuv_s_sse2
64470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
65470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_build_intra_predictors_mby_s_c(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
66470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_build_intra_predictors_mby_s_sse2(struct macroblockd *x, unsigned char * yabove_row, unsigned char * yleft, int left_stride, unsigned char * ypred_ptr, int y_stride);
67470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_build_intra_predictors_mby_s vp8_build_intra_predictors_mby_s_sse2
68470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
69470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_clear_system_state_c();
70470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vpx_reset_mmx_state();
71470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_clear_system_state vpx_reset_mmx_state
72470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
73470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_copy32xn_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, int n);
74470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_copy32xn_sse2(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int ref_stride, int n);
75470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_copy32xn vp8_copy32xn_sse2
76470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
77470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_copy_mem16x16_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
78470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_copy_mem16x16_mmx(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
79470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_copy_mem16x16_sse2(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
80470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_copy_mem16x16 vp8_copy_mem16x16_sse2
81470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
82470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_copy_mem8x4_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
83470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_copy_mem8x4_mmx(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
84470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_copy_mem8x4 vp8_copy_mem8x4_mmx
85470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
86470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_copy_mem8x8_c(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
87470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_copy_mem8x8_mmx(unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch);
88470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_copy_mem8x8 vp8_copy_mem8x8_mmx
89470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
90470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_dc_only_idct_add_c(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
91470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_dc_only_idct_add_mmx(short input, unsigned char *pred, int pred_stride, unsigned char *dst, int dst_stride);
92470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_dc_only_idct_add vp8_dc_only_idct_add_mmx
93470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
94470ef077237c82c7ab7ba2def07241a6a1f9349cJohannint vp8_denoiser_filter_c(struct yv12_buffer_config* mc_running_avg, struct yv12_buffer_config* running_avg, struct macroblock* signal, unsigned int motion_magnitude2, int y_offset, int uv_offset);
95470ef077237c82c7ab7ba2def07241a6a1f9349cJohannint vp8_denoiser_filter_sse2(struct yv12_buffer_config* mc_running_avg, struct yv12_buffer_config* running_avg, struct macroblock* signal, unsigned int motion_magnitude2, int y_offset, int uv_offset);
96470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_denoiser_filter vp8_denoiser_filter_sse2
97470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
98470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_dequant_idct_add_c(short *input, short *dq, unsigned char *output, int stride);
99470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_dequant_idct_add_mmx(short *input, short *dq, unsigned char *output, int stride);
100470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_dequant_idct_add vp8_dequant_idct_add_mmx
101470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
102470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_dequant_idct_add_uv_block_c(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
103470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_dequant_idct_add_uv_block_mmx(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
104470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_dequant_idct_add_uv_block_sse2(short *q, short *dq, unsigned char *dst_u, unsigned char *dst_v, int stride, char *eobs);
105470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_dequant_idct_add_uv_block vp8_dequant_idct_add_uv_block_sse2
106470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
107470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_dequant_idct_add_y_block_c(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
108470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_dequant_idct_add_y_block_mmx(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
109470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_dequant_idct_add_y_block_sse2(short *q, short *dq, unsigned char *dst, int stride, char *eobs);
110470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_dequant_idct_add_y_block vp8_dequant_idct_add_y_block_sse2
111470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
112470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_dequantize_b_c(struct blockd*, short *dqc);
113470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_dequantize_b_mmx(struct blockd*, short *dqc);
114470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_dequantize_b vp8_dequantize_b_mmx
115470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
116470ef077237c82c7ab7ba2def07241a6a1f9349cJohannint 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);
117470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_diamond_search_sad vp8_diamond_search_sad_c
118470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
119470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_fast_quantize_b_c(struct block *, struct blockd *);
120470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_fast_quantize_b_sse2(struct block *, struct blockd *);
121470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_fast_quantize_b vp8_fast_quantize_b_sse2
122470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
123470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_fast_quantize_b_pair_c(struct block *b1, struct block *b2, struct blockd *d1, struct blockd *d2);
124470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_fast_quantize_b_pair vp8_fast_quantize_b_pair_c
125470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
126470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_filter_by_weight16x16_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
127470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_filter_by_weight16x16_sse2(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
128470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_filter_by_weight16x16 vp8_filter_by_weight16x16_sse2
129470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
130470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_filter_by_weight4x4_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
131470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_filter_by_weight4x4 vp8_filter_by_weight4x4_c
132470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
133470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_filter_by_weight8x8_c(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
134470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_filter_by_weight8x8_sse2(unsigned char *src, int src_stride, unsigned char *dst, int dst_stride, int src_weight);
135470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_filter_by_weight8x8 vp8_filter_by_weight8x8_sse2
136470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
137470ef077237c82c7ab7ba2def07241a6a1f9349cJohannint 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);
138470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_full_search_sad vp8_full_search_sad_c
139470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
140470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_get4x4sse_cs_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int  ref_stride);
141470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_get4x4sse_cs_mmx(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int  ref_stride);
142470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_get4x4sse_cs vp8_get4x4sse_cs_mmx
143470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
144470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_get_mb_ss_c(const short *);
145470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_get_mb_ss_mmx(const short *);
146470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_get_mb_ss_sse2(const short *);
147470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_get_mb_ss vp8_get_mb_ss_sse2
148470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
149470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_intra4x4_predict_c(unsigned char *Above, unsigned char *yleft, int left_stride, int b_mode, unsigned char *dst, int dst_stride, unsigned char top_left);
150470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_intra4x4_predict vp8_intra4x4_predict_c
151470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
152470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_loop_filter_bh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
153470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_loop_filter_bh_mmx(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
154470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_loop_filter_bh_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
155470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_loop_filter_bh vp8_loop_filter_bh_sse2
156470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
157470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_loop_filter_bv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
158470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_loop_filter_bv_mmx(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
159470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_loop_filter_bv_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
160470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_loop_filter_bv vp8_loop_filter_bv_sse2
161470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
162470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_loop_filter_mbh_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
163470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_loop_filter_mbh_mmx(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
164470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_loop_filter_mbh_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
165470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_loop_filter_mbh vp8_loop_filter_mbh_sse2
166470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
167470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_loop_filter_mbv_c(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
168470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_loop_filter_mbv_mmx(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
169470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_loop_filter_mbv_sse2(unsigned char *y, unsigned char *u, unsigned char *v, int ystride, int uv_stride, struct loop_filter_info *lfi);
170470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_loop_filter_mbv vp8_loop_filter_mbv_sse2
171470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
172470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_loop_filter_bhs_c(unsigned char *y, int ystride, const unsigned char *blimit);
173470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_loop_filter_bhs_mmx(unsigned char *y, int ystride, const unsigned char *blimit);
174470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_loop_filter_bhs_sse2(unsigned char *y, int ystride, const unsigned char *blimit);
175470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_loop_filter_simple_bh vp8_loop_filter_bhs_sse2
176470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
177470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_loop_filter_bvs_c(unsigned char *y, int ystride, const unsigned char *blimit);
178470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_loop_filter_bvs_mmx(unsigned char *y, int ystride, const unsigned char *blimit);
179470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_loop_filter_bvs_sse2(unsigned char *y, int ystride, const unsigned char *blimit);
180470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_loop_filter_simple_bv vp8_loop_filter_bvs_sse2
181470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
182470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_loop_filter_simple_horizontal_edge_c(unsigned char *y, int ystride, const unsigned char *blimit);
183470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_loop_filter_simple_horizontal_edge_mmx(unsigned char *y, int ystride, const unsigned char *blimit);
184470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_loop_filter_simple_horizontal_edge_sse2(unsigned char *y, int ystride, const unsigned char *blimit);
185470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_loop_filter_simple_mbh vp8_loop_filter_simple_horizontal_edge_sse2
186470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
187470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_loop_filter_simple_vertical_edge_c(unsigned char *y, int ystride, const unsigned char *blimit);
188470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_loop_filter_simple_vertical_edge_mmx(unsigned char *y, int ystride, const unsigned char *blimit);
189470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_loop_filter_simple_vertical_edge_sse2(unsigned char *y, int ystride, const unsigned char *blimit);
190470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_loop_filter_simple_mbv vp8_loop_filter_simple_vertical_edge_sse2
191470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
192470ef077237c82c7ab7ba2def07241a6a1f9349cJohannint vp8_mbblock_error_c(struct macroblock *mb, int dc);
193470ef077237c82c7ab7ba2def07241a6a1f9349cJohannint vp8_mbblock_error_mmx(struct macroblock *mb, int dc);
194470ef077237c82c7ab7ba2def07241a6a1f9349cJohannint vp8_mbblock_error_xmm(struct macroblock *mb, int dc);
195470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_mbblock_error vp8_mbblock_error_xmm
196470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
197470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_mbpost_proc_across_ip_c(unsigned char *dst, int pitch, int rows, int cols,int flimit);
198470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_mbpost_proc_across_ip_xmm(unsigned char *dst, int pitch, int rows, int cols,int flimit);
199470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_mbpost_proc_across_ip vp8_mbpost_proc_across_ip_xmm
200470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
201470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_mbpost_proc_down_c(unsigned char *dst, int pitch, int rows, int cols,int flimit);
202470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_mbpost_proc_down_mmx(unsigned char *dst, int pitch, int rows, int cols,int flimit);
203470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_mbpost_proc_down_xmm(unsigned char *dst, int pitch, int rows, int cols,int flimit);
204470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_mbpost_proc_down vp8_mbpost_proc_down_xmm
205470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
206470ef077237c82c7ab7ba2def07241a6a1f9349cJohannint vp8_mbuverror_c(struct macroblock *mb);
207470ef077237c82c7ab7ba2def07241a6a1f9349cJohannint vp8_mbuverror_mmx(struct macroblock *mb);
208470ef077237c82c7ab7ba2def07241a6a1f9349cJohannint vp8_mbuverror_xmm(struct macroblock *mb);
209470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_mbuverror vp8_mbuverror_xmm
210470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
211470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_mse16x16_c(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int  ref_stride, unsigned int *sse);
212470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_mse16x16_mmx(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int  ref_stride, unsigned int *sse);
213470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_mse16x16_wmt(const unsigned char *src_ptr, int source_stride, const unsigned char *ref_ptr, int  ref_stride, unsigned int *sse);
214470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_mse16x16 vp8_mse16x16_wmt
215470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
216470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_plane_add_noise_c(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
217470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_plane_add_noise_mmx(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
218470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_plane_add_noise_wmt(unsigned char *s, char *noise, char blackclamp[16], char whiteclamp[16], char bothclamp[16], unsigned int w, unsigned int h, int pitch);
219470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_plane_add_noise vp8_plane_add_noise_wmt
220470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
221470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_post_proc_down_and_across_mb_row_c(unsigned char *src, unsigned char *dst, int src_pitch, int dst_pitch, int cols, unsigned char *flimits, int size);
222470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_post_proc_down_and_across_mb_row_sse2(unsigned char *src, unsigned char *dst, int src_pitch, int dst_pitch, int cols, unsigned char *flimits, int size);
223470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_post_proc_down_and_across_mb_row vp8_post_proc_down_and_across_mb_row_sse2
224470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
225470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_quantize_mb_c(struct macroblock *);
226470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_quantize_mb vp8_quantize_mb_c
227470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
228470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_quantize_mbuv_c(struct macroblock *);
229470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_quantize_mbuv vp8_quantize_mbuv_c
230470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
231470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_quantize_mby_c(struct macroblock *);
232470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_quantize_mby vp8_quantize_mby_c
233470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
234470ef077237c82c7ab7ba2def07241a6a1f9349cJohannint 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);
235470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_refining_search_sad vp8_refining_search_sad_c
236470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
237470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_regular_quantize_b_c(struct block *, struct blockd *);
238470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_regular_quantize_b_sse2(struct block *, struct blockd *);
239470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_regular_quantize_b vp8_regular_quantize_b_sse2
240470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
241470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_regular_quantize_b_pair_c(struct block *b1, struct block *b2, struct blockd *d1, struct blockd *d2);
242470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_regular_quantize_b_pair vp8_regular_quantize_b_pair_c
243470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
244470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sad16x16_c(const unsigned char *src_ptr, int src_stride, const unsigned char *ref_ptr, int ref_stride, unsigned int max_sad);
245470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sad16x16_mmx(const unsigned char *src_ptr, int src_stride, const unsigned char *ref_ptr, int ref_stride, unsigned int max_sad);
246470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sad16x16_wmt(const unsigned char *src_ptr, int src_stride, const unsigned char *ref_ptr, int ref_stride, unsigned int max_sad);
247470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_sad16x16 vp8_sad16x16_wmt
248470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
249470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_sad16x16x3_c(const unsigned char *src_ptr, int src_stride, const unsigned char *ref_ptr, int  ref_stride, unsigned int *sad_array);
250470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_sad16x16x3 vp8_sad16x16x3_c
251470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
252470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_sad16x16x4d_c(const unsigned char *src_ptr, int src_stride, const unsigned char * const ref_ptr[], int  ref_stride, unsigned int *sad_array);
253470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_sad16x16x4d vp8_sad16x16x4d_c
254470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
255470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_sad16x16x8_c(const unsigned char *src_ptr, int src_stride, const unsigned char *ref_ptr, int  ref_stride, unsigned short *sad_array);
256470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_sad16x16x8 vp8_sad16x16x8_c
257470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
258470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sad16x8_c(const unsigned char *src_ptr, int src_stride, const unsigned char *ref_ptr, int ref_stride, unsigned int max_sad);
259470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sad16x8_mmx(const unsigned char *src_ptr, int src_stride, const unsigned char *ref_ptr, int ref_stride, unsigned int max_sad);
260470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sad16x8_wmt(const unsigned char *src_ptr, int src_stride, const unsigned char *ref_ptr, int ref_stride, unsigned int max_sad);
261470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_sad16x8 vp8_sad16x8_wmt
262470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
263470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_sad16x8x3_c(const unsigned char *src_ptr, int src_stride, const unsigned char *ref_ptr, int  ref_stride, unsigned int *sad_array);
264470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_sad16x8x3 vp8_sad16x8x3_c
265470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
266470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_sad16x8x4d_c(const unsigned char *src_ptr, int src_stride, const unsigned char * const ref_ptr[], int  ref_stride, unsigned int *sad_array);
267470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_sad16x8x4d vp8_sad16x8x4d_c
268470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
269470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_sad16x8x8_c(const unsigned char *src_ptr, int src_stride, const unsigned char *ref_ptr, int  ref_stride, unsigned short *sad_array);
270470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_sad16x8x8 vp8_sad16x8x8_c
271470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
272470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sad4x4_c(const unsigned char *src_ptr, int src_stride, const unsigned char *ref_ptr, int ref_stride, unsigned int max_sad);
273470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sad4x4_mmx(const unsigned char *src_ptr, int src_stride, const unsigned char *ref_ptr, int ref_stride, unsigned int max_sad);
274470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sad4x4_wmt(const unsigned char *src_ptr, int src_stride, const unsigned char *ref_ptr, int ref_stride, unsigned int max_sad);
275470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_sad4x4 vp8_sad4x4_wmt
276470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
277470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_sad4x4x3_c(const unsigned char *src_ptr, int src_stride, const unsigned char *ref_ptr, int  ref_stride, unsigned int *sad_array);
278470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_sad4x4x3 vp8_sad4x4x3_c
279470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
280470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_sad4x4x4d_c(const unsigned char *src_ptr, int src_stride, const unsigned char * const ref_ptr[], int  ref_stride, unsigned int *sad_array);
281470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_sad4x4x4d vp8_sad4x4x4d_c
282470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
283470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_sad4x4x8_c(const unsigned char *src_ptr, int src_stride, const unsigned char *ref_ptr, int  ref_stride, unsigned short *sad_array);
284470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_sad4x4x8 vp8_sad4x4x8_c
285470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
286470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sad8x16_c(const unsigned char *src_ptr, int src_stride, const unsigned char *ref_ptr, int ref_stride, unsigned int max_sad);
287470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sad8x16_mmx(const unsigned char *src_ptr, int src_stride, const unsigned char *ref_ptr, int ref_stride, unsigned int max_sad);
288470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sad8x16_wmt(const unsigned char *src_ptr, int src_stride, const unsigned char *ref_ptr, int ref_stride, unsigned int max_sad);
289470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_sad8x16 vp8_sad8x16_wmt
290470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
291470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_sad8x16x3_c(const unsigned char *src_ptr, int src_stride, const unsigned char *ref_ptr, int  ref_stride, unsigned int *sad_array);
292470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_sad8x16x3 vp8_sad8x16x3_c
293470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
294470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_sad8x16x4d_c(const unsigned char *src_ptr, int src_stride, const unsigned char * const ref_ptr[], int  ref_stride, unsigned int *sad_array);
295470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_sad8x16x4d vp8_sad8x16x4d_c
296470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
297470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_sad8x16x8_c(const unsigned char *src_ptr, int src_stride, const unsigned char *ref_ptr, int  ref_stride, unsigned short *sad_array);
298470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_sad8x16x8 vp8_sad8x16x8_c
299470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
300470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sad8x8_c(const unsigned char *src_ptr, int src_stride, const unsigned char *ref_ptr, int ref_stride, unsigned int max_sad);
301470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sad8x8_mmx(const unsigned char *src_ptr, int src_stride, const unsigned char *ref_ptr, int ref_stride, unsigned int max_sad);
302470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sad8x8_wmt(const unsigned char *src_ptr, int src_stride, const unsigned char *ref_ptr, int ref_stride, unsigned int max_sad);
303470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_sad8x8 vp8_sad8x8_wmt
304470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
305470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_sad8x8x3_c(const unsigned char *src_ptr, int src_stride, const unsigned char *ref_ptr, int  ref_stride, unsigned int *sad_array);
306470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_sad8x8x3 vp8_sad8x8x3_c
307470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
308470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_sad8x8x4d_c(const unsigned char *src_ptr, int src_stride, const unsigned char * const ref_ptr[], int  ref_stride, unsigned int *sad_array);
309470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_sad8x8x4d vp8_sad8x8x4d_c
310470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
311470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_sad8x8x8_c(const unsigned char *src_ptr, int src_stride, const unsigned char *ref_ptr, int  ref_stride, unsigned short *sad_array);
312470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_sad8x8x8 vp8_sad8x8x8_c
313470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
314470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_short_fdct4x4_c(short *input, short *output, int pitch);
315470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_short_fdct4x4_mmx(short *input, short *output, int pitch);
316470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_short_fdct4x4_sse2(short *input, short *output, int pitch);
317470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_short_fdct4x4 vp8_short_fdct4x4_sse2
318470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
319470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_short_fdct8x4_c(short *input, short *output, int pitch);
320470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_short_fdct8x4_mmx(short *input, short *output, int pitch);
321470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_short_fdct8x4_sse2(short *input, short *output, int pitch);
322470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_short_fdct8x4 vp8_short_fdct8x4_sse2
323470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
324470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_short_idct4x4llm_c(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
325470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_short_idct4x4llm_mmx(short *input, unsigned char *pred, int pitch, unsigned char *dst, int dst_stride);
326470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_short_idct4x4llm vp8_short_idct4x4llm_mmx
327470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
328470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_short_inv_walsh4x4_c(short *input, short *output);
329470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_short_inv_walsh4x4_mmx(short *input, short *output);
330470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_short_inv_walsh4x4_sse2(short *input, short *output);
331470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_short_inv_walsh4x4 vp8_short_inv_walsh4x4_sse2
332470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
333470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_short_inv_walsh4x4_1_c(short *input, short *output);
334470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_short_inv_walsh4x4_1 vp8_short_inv_walsh4x4_1_c
335470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
336470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_short_walsh4x4_c(short *input, short *output, int pitch);
337470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_short_walsh4x4_sse2(short *input, short *output, int pitch);
338470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_short_walsh4x4 vp8_short_walsh4x4_sse2
339470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
340470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_sixtap_predict16x16_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
341470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_sixtap_predict16x16_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
342470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_sixtap_predict16x16_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
343470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_sixtap_predict16x16 vp8_sixtap_predict16x16_sse2
344470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
345470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_sixtap_predict4x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
346470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_sixtap_predict4x4_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
347470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_sixtap_predict4x4 vp8_sixtap_predict4x4_mmx
348470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
349470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_sixtap_predict8x4_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
350470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_sixtap_predict8x4_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
351470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_sixtap_predict8x4_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
352470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_sixtap_predict8x4 vp8_sixtap_predict8x4_sse2
353470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
354470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_sixtap_predict8x8_c(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
355470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_sixtap_predict8x8_mmx(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
356470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_sixtap_predict8x8_sse2(unsigned char *src, int src_pitch, int xofst, int yofst, unsigned char *dst, int dst_pitch);
357470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_sixtap_predict8x8 vp8_sixtap_predict8x8_sse2
358470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
359470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sub_pixel_mse16x16_c(const unsigned char  *src_ptr, int  source_stride, int  xoffset, int  yoffset, const unsigned char *ref_ptr, int Refstride, unsigned int *sse);
360470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sub_pixel_mse16x16_mmx(const unsigned char  *src_ptr, int  source_stride, int  xoffset, int  yoffset, const unsigned char *ref_ptr, int Refstride, unsigned int *sse);
361470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sub_pixel_mse16x16_wmt(const unsigned char  *src_ptr, int  source_stride, int  xoffset, int  yoffset, const unsigned char *ref_ptr, int Refstride, unsigned int *sse);
362470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_sub_pixel_mse16x16 vp8_sub_pixel_mse16x16_wmt
363470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
364470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sub_pixel_variance16x16_c(const unsigned char  *src_ptr, int  source_stride, int  xoffset, int  yoffset, const unsigned char *ref_ptr, int Refstride, unsigned int *sse);
365470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sub_pixel_variance16x16_mmx(const unsigned char  *src_ptr, int  source_stride, int  xoffset, int  yoffset, const unsigned char *ref_ptr, int Refstride, unsigned int *sse);
366470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sub_pixel_variance16x16_wmt(const unsigned char  *src_ptr, int  source_stride, int  xoffset, int  yoffset, const unsigned char *ref_ptr, int Refstride, unsigned int *sse);
367470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_sub_pixel_variance16x16 vp8_sub_pixel_variance16x16_wmt
368470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
369470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sub_pixel_variance16x8_c(const unsigned char  *src_ptr, int  source_stride, int  xoffset, int  yoffset, const unsigned char *ref_ptr, int Refstride, unsigned int *sse);
370470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sub_pixel_variance16x8_mmx(const unsigned char  *src_ptr, int  source_stride, int  xoffset, int  yoffset, const unsigned char *ref_ptr, int Refstride, unsigned int *sse);
371470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sub_pixel_variance16x8_wmt(const unsigned char  *src_ptr, int  source_stride, int  xoffset, int  yoffset, const unsigned char *ref_ptr, int Refstride, unsigned int *sse);
372470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_sub_pixel_variance16x8 vp8_sub_pixel_variance16x8_wmt
373470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
374470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sub_pixel_variance4x4_c(const unsigned char  *src_ptr, int  source_stride, int  xoffset, int  yoffset, const unsigned char *ref_ptr, int Refstride, unsigned int *sse);
375470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sub_pixel_variance4x4_mmx(const unsigned char  *src_ptr, int  source_stride, int  xoffset, int  yoffset, const unsigned char *ref_ptr, int Refstride, unsigned int *sse);
376470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sub_pixel_variance4x4_wmt(const unsigned char  *src_ptr, int  source_stride, int  xoffset, int  yoffset, const unsigned char *ref_ptr, int Refstride, unsigned int *sse);
377470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_sub_pixel_variance4x4 vp8_sub_pixel_variance4x4_wmt
378470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
379470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sub_pixel_variance8x16_c(const unsigned char  *src_ptr, int  source_stride, int  xoffset, int  yoffset, const unsigned char *ref_ptr, int Refstride, unsigned int *sse);
380470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sub_pixel_variance8x16_mmx(const unsigned char  *src_ptr, int  source_stride, int  xoffset, int  yoffset, const unsigned char *ref_ptr, int Refstride, unsigned int *sse);
381470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sub_pixel_variance8x16_wmt(const unsigned char  *src_ptr, int  source_stride, int  xoffset, int  yoffset, const unsigned char *ref_ptr, int Refstride, unsigned int *sse);
382470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_sub_pixel_variance8x16 vp8_sub_pixel_variance8x16_wmt
383470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
384470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sub_pixel_variance8x8_c(const unsigned char  *src_ptr, int  source_stride, int  xoffset, int  yoffset, const unsigned char *ref_ptr, int Refstride, unsigned int *sse);
385470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sub_pixel_variance8x8_mmx(const unsigned char  *src_ptr, int  source_stride, int  xoffset, int  yoffset, const unsigned char *ref_ptr, int Refstride, unsigned int *sse);
386470ef077237c82c7ab7ba2def07241a6a1f9349cJohannunsigned int vp8_sub_pixel_variance8x8_wmt(const unsigned char  *src_ptr, int  source_stride, int  xoffset, int  yoffset, const unsigned char *ref_ptr, int Refstride, unsigned int *sse);
387470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_sub_pixel_variance8x8 vp8_sub_pixel_variance8x8_wmt
388470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
389470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_subtract_b_c(struct block *be, struct blockd *bd, int pitch);
390470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_subtract_b_mmx(struct block *be, struct blockd *bd, int pitch);
391470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_subtract_b_sse2(struct block *be, struct blockd *bd, int pitch);
392470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_subtract_b vp8_subtract_b_sse2
393470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
394470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_subtract_mbuv_c(short *diff, unsigned char *usrc, unsigned char *vsrc, int src_stride, unsigned char *upred, unsigned char *vpred, int pred_stride);
395470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_subtract_mbuv_mmx(short *diff, unsigned char *usrc, unsigned char *vsrc, int src_stride, unsigned char *upred, unsigned char *vpred, int pred_stride);
396470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_subtract_mbuv_sse2(short *diff, unsigned char *usrc, unsigned char *vsrc, int src_stride, unsigned char *upred, unsigned char *vpred, int pred_stride);
397470ef077237c82c7ab7ba2def07241a6a1f9349cJohann#define vp8_subtract_mbuv vp8_subtract_mbuv_sse2
398470ef077237c82c7ab7ba2def07241a6a1f9349cJohann
399470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_subtract_mby_c(short *diff, unsigned char *src, int src_stride, unsigned char *pred, int pred_stride);
400470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_subtract_mby_mmx(short *diff, unsigned char *src, int src_stride, unsigned char *pred, int pred_stride);
401470ef077237c82c7ab7ba2def07241a6a1f9349cJohannvoid vp8_subtract_mby_sse2(short *diff, unsigned char *src, int src_stride, unsigned char *pred, int pred_stride);
402