diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2014-01-21 02:53:43 +0100 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2014-01-21 02:55:41 +0100 |
commit | 83b67ca056093d3b8fffc5e0b37f84177113a556 (patch) | |
tree | 24789c49a29d2d891ff82ba1df349e3698247a7e /libavcodec/x86/lossless_videodsp_init.c | |
parent | 63d2be7533b7406f3fb58f2e3b7e3954dd1fcc6d (diff) | |
download | ffmpeg-83b67ca056093d3b8fffc5e0b37f84177113a556.tar.gz |
avcodec/x86/lossless_videodsp: Port lorens add_hfyu_left_prediction_ssse3/sse4 to 16bit
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/x86/lossless_videodsp_init.c')
-rw-r--r-- | libavcodec/x86/lossless_videodsp_init.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/libavcodec/x86/lossless_videodsp_init.c b/libavcodec/x86/lossless_videodsp_init.c index bc51d51cc1..88424ba1f9 100644 --- a/libavcodec/x86/lossless_videodsp_init.c +++ b/libavcodec/x86/lossless_videodsp_init.c @@ -23,6 +23,8 @@ void ff_add_int16_mmx(uint16_t *dst, const uint16_t *src, unsigned mask, int w); void ff_add_int16_sse2(uint16_t *dst, const uint16_t *src, unsigned mask, int w); +int ff_add_hfyu_left_prediction_int16_ssse3(uint16_t *dst, const uint16_t *src, unsigned mask, int w, int acc); +int ff_add_hfyu_left_prediction_int16_sse4(uint16_t *dst, const uint16_t *src, unsigned mask, int w, int acc); void ff_llviddsp_init_x86(LLVidDSPContext *c) { @@ -35,4 +37,12 @@ void ff_llviddsp_init_x86(LLVidDSPContext *c) if (EXTERNAL_SSE2(cpu_flags)) { c->add_int16 = ff_add_int16_sse2; } + + if (EXTERNAL_SSSE3(cpu_flags)) { + c->add_hfyu_left_prediction_int16 = ff_add_hfyu_left_prediction_int16_ssse3; + } + + if (EXTERNAL_SSE4(cpu_flags)) { + c->add_hfyu_left_prediction_int16 = ff_add_hfyu_left_prediction_int16_sse4; + } } |