vpx/vp8/common/rtcd_defs.sh
Christian Duvivier 5a34e0eb89 First partial snapshot of vectorized 8-tap filtering.
About 3.5x faster, 30% overall encoder speedup. Rest of optimizations
will come soon (see TODO section in filter_sse4.c).

Change-Id: If18108048bfd5345fc942e8574e4c7f58e0e86e0
2012-08-15 17:55:06 -07:00

22 lines
1.4 KiB
Bash

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
specialize vp8_filter_block2d_8x4_8 sse4_1
specialize vp8_filter_block2d_8x8_8 sse4_1
specialize vp8_filter_block2d_16x16_8 sse4_1
fi