On Thu, Oct 13, 2016 at 04:02:34PM +0200, Alexandra Hájková wrote: > --- a/libavcodec/x86/hevcdsp_init.c > +++ b/libavcodec/x86/hevcdsp_init.c > @@ -278,17 +297,24 @@ void ff_hevc_dsp_init_x86(HEVCDSPContext *c, const int > bit_depth) > + c->add_residual[1] = ff_hevc_add_residual_8_8_sse2; > + c->add_residual[2] = ff_hevc_add_residual_16_8_sse2; > + c->add_residual[3] = ff_hevc_add_residual_32_8_sse2; > + > c->idct_dc[1] = ff_hevc_idct_8x8_dc_8_sse2; > c->idct_dc[2] = ff_hevc_idct_16x16_dc_8_sse2; > c->idct_dc[3] = ff_hevc_idct_32x32_dc_8_sse2; > > c->idct[0] = ff_hevc_idct_4x4_8_sse2; > c->idct[1] = ff_hevc_idct_8x8_8_sse2; > + > SET_QPEL_FUNCS(0, 0, 8, sse2, ff_hevc_get_pixels); > SET_EPEL_FUNCS(0, 0, 8, sse2, ff_hevc_get_pixels);
grmbl > @@ -307,11 +333,16 @@ void ff_hevc_dsp_init_x86(HEVCDSPContext *c, const int > bit_depth) > if (EXTERNAL_AVX(cpu_flags)) { > c->idct[0] = ff_hevc_idct_4x4_8_avx; > c->idct[1] = ff_hevc_idct_8x8_8_avx; > + c->add_residual[1] = ff_hevc_add_residual_8_8_avx; > + c->add_residual[2] = ff_hevc_add_residual_16_8_avx; > + c->add_residual[3] = ff_hevc_add_residual_32_8_avx; > } > } else if (bit_depth == 10) { > if (EXTERNAL_MMXEXT(cpu_flags)) { > c->idct_dc[0] = ff_hevc_idct_4x4_dc_10_mmxext; > c->idct_dc[1] = ff_hevc_idct_8x8_dc_10_mmxext; > + > + c->add_residual[0] = ff_hevc_add_residual_4_10_mmxext; > } > if (EXTERNAL_SSE2(cpu_flags)) { > c->hevc_v_loop_filter_chroma = > ff_hevc_v_loop_filter_chroma_10_sse2; > @@ -330,6 +361,10 @@ void ff_hevc_dsp_init_x86(HEVCDSPContext *c, const int > bit_depth) > SET_LUMA_FUNCS(put_unweighted_pred_avg, > ff_hevc_put_unweighted_pred_avg, 10, sse2); > SET_CHROMA_FUNCS(put_unweighted_pred_chroma, > ff_hevc_put_unweighted_pred, 10, sse2); > SET_CHROMA_FUNCS(put_unweighted_pred_avg_chroma, > ff_hevc_put_unweighted_pred_avg, 10, sse2); > + > + c->add_residual[1] = ff_hevc_add_residual_8_10_sse2; > + c->add_residual[2] = ff_hevc_add_residual_16_10_sse2; > + c->add_residual[3] = ff_hevc_add_residual_32_10_sse2; > } > if (EXTERNAL_AVX(cpu_flags)) { > c->idct[0] = ff_hevc_idct_4x4_10_avx; > @@ -366,6 +401,8 @@ void ff_hevc_dsp_init_x86(HEVCDSPContext *c, const int > bit_depth) > if (EXTERNAL_AVX2(cpu_flags)) { > c->idct_dc[2] = ff_hevc_idct_16x16_dc_8_avx2; > c->idct_dc[3] = ff_hevc_idct_32x32_dc_8_avx2; > + > + c->add_residual[3] = ff_hevc_add_residual_32_8_avx2; > } > } else if (bit_depth == 10) { > if (EXTERNAL_SSE2(cpu_flags)) { > @@ -397,6 +434,9 @@ void ff_hevc_dsp_init_x86(HEVCDSPContext *c, const int > bit_depth) > if (EXTERNAL_AVX2(cpu_flags)) { > c->idct_dc[2] = ff_hevc_idct_16x16_dc_10_avx2; > c->idct_dc[3] = ff_hevc_idct_32x32_dc_10_avx2; > + > + c->add_residual[2] = ff_hevc_add_residual_16_10_avx2; > + c->add_residual[3] = ff_hevc_add_residual_32_10_avx2; > } > } > #endif /* ARCH_X86_64 */ This does not match the conditions in the .asm file. Diego _______________________________________________ libav-devel mailing list libav-devel@libav.org https://lists.libav.org/mailman/listinfo/libav-devel