diff options
author | Ronald S. Bultje <rsbultje@gmail.com> | 2015-10-06 11:03:45 -0400 |
---|---|---|
committer | Ronald S. Bultje <rsbultje@gmail.com> | 2015-10-13 11:05:58 -0400 |
commit | 6b579cf547a75a0cbda5cb7f10eab9ca07522b0a (patch) | |
tree | 6dc311271278288af98f9d886d39684c62949355 /libavcodec/x86/vp9dsp_init_16bpp_template.c | |
parent | 1c3be32533e506d66b5a8eb7b93b12d4442146fb (diff) | |
download | ffmpeg-6b579cf547a75a0cbda5cb7f10eab9ca07522b0a.tar.gz |
vp9: add 10bpp simd (mmxext/ssse3) for idct_idct_4x4.
Diffstat (limited to 'libavcodec/x86/vp9dsp_init_16bpp_template.c')
-rw-r--r-- | libavcodec/x86/vp9dsp_init_16bpp_template.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/libavcodec/x86/vp9dsp_init_16bpp_template.c b/libavcodec/x86/vp9dsp_init_16bpp_template.c index 7a56c3bc32..6e12af3d3d 100644 --- a/libavcodec/x86/vp9dsp_init_16bpp_template.c +++ b/libavcodec/x86/vp9dsp_init_16bpp_template.c @@ -125,6 +125,10 @@ lpf_mix2_wrappers_set(BPC, avx); decl_ipred_fns(tm, BPC, mmxext, sse2); decl_itxfm_func(iwht, iwht, 4, BPC, mmxext); +#if BPC == 10 +decl_itxfm_func(idct, idct, 4, BPC, mmxext); +decl_itxfm_func(idct, idct, 4, BPC, ssse3); +#endif #endif /* HAVE_YASM */ av_cold void INIT_FUNC(VP9DSPContext *dsp, int bitexact) @@ -170,6 +174,9 @@ av_cold void INIT_FUNC(VP9DSPContext *dsp, int bitexact) init_ipred_func(tm, TM_VP8, 4, BPC, mmxext); if (!bitexact) { init_itx_func_one(4 /* lossless */, iwht, iwht, 4, BPC, mmxext); +#if BPC == 10 + init_itx_func(TX_4X4, DCT_DCT, idct, idct, 4, 10, mmxext); +#endif } } @@ -182,6 +189,11 @@ av_cold void INIT_FUNC(VP9DSPContext *dsp, int bitexact) if (EXTERNAL_SSSE3(cpu_flags)) { init_lpf_funcs(BPC, ssse3); +#if BPC == 10 + if (!bitexact) { + init_itx_func(TX_4X4, DCT_DCT, idct, idct, 4, 10, ssse3); + } +#endif } if (EXTERNAL_AVX(cpu_flags)) { |