| common_forward_decls() { |
| cat <<EOF |
| struct blockd; |
| EOF |
| } |
| forward_decls common_forward_decls |
| |
| prototype void vp8_filter_block2d_4x4_8 "const unsigned char *src_ptr, const unsigned int src_stride, const short *HFilter_aligned16, const short *VFilter_aligned16, unsigned char *dst_ptr, unsigned int dst_stride" |
| prototype void vp8_filter_block2d_8x4_8 "const unsigned char *src_ptr, const unsigned int src_stride, const short *HFilter_aligned16, const short *VFilter_aligned16, unsigned char *dst_ptr, unsigned int dst_stride" |
| prototype void vp8_filter_block2d_8x8_8 "const unsigned char *src_ptr, const unsigned int src_stride, const short *HFilter_aligned16, const short *VFilter_aligned16, unsigned char *dst_ptr, unsigned int dst_stride" |
| prototype void vp8_filter_block2d_16x16_8 "const unsigned char *src_ptr, const unsigned int src_stride, const short *HFilter_aligned16, const short *VFilter_aligned16, unsigned char *dst_ptr, unsigned int dst_stride" |
| |
| # At the very least, MSVC 2008 has compiler bug exhibited by this code; code |
| # compiles warning free but a dissassembly of generated code show bugs. To be |
| # on the safe side, only enabled when compiled with 'gcc'. |
| if [ "$CONFIG_GCC" = "yes" ]; then |
| specialize vp8_filter_block2d_4x4_8 sse4_1 sse2 |
| specialize vp8_filter_block2d_8x4_8 sse4_1 sse2 |
| specialize vp8_filter_block2d_8x8_8 sse4_1 sse2 |
| specialize vp8_filter_block2d_16x16_8 sse4_1 sse2 |
| fi |