This is an automated email from the git hooks/post-receive script. Git pushed a commit to branch master in repository ffmpeg.
commit 75cc63e27a5634196d574ae3d655f1662fba43ac Author: Andreas Rheinhardt <[email protected]> AuthorDate: Mon Aug 31 17:35:38 2026 +0200 Commit: Andreas Rheinhardt <[email protected]> CommitDate: Wed Sep 2 22:31:34 2026 +0200 avcodec/x86/ac3dsp: Avoid unnecessary horizontal addition Old benchmarks: compute_mantissa_size_c: 112.1 compute_mantissa_size_sse2: 6.5 (17.29x) New benchmarks: compute_mantissa_size_c: 111.6 compute_mantissa_size_sse2: 5.5 (20.35x) Signed-off-by: Andreas Rheinhardt <[email protected]> --- libavcodec/x86/ac3dsp.asm | 28 +++++++++++++--------------- 1 file changed, 13 insertions(+), 15 deletions(-) diff --git a/libavcodec/x86/ac3dsp.asm b/libavcodec/x86/ac3dsp.asm index 5d07c5f04c..51874bc5f5 100644 --- a/libavcodec/x86/ac3dsp.asm +++ b/libavcodec/x86/ac3dsp.asm @@ -164,40 +164,38 @@ cglobal float_to_fixed24, 3, 3, 5, dst, src, len %endmacro INIT_XMM sse2 -cglobal ac3_compute_mantissa_size, 1, 2, 4, mant_cnt, sum +cglobal ac3_compute_mantissa_size, 1, 1, 5, mant_cnt movdqa m0, [mant_cntq ] movdqa m1, [mant_cntq+ 1*16] + movdqa m4, [pw_bap_mul1] paddw m0, [mant_cntq+ 2*16] paddw m1, [mant_cntq+ 3*16] + movhpd m2, [mant_cntq +2] paddw m0, [mant_cntq+ 4*16] paddw m1, [mant_cntq+ 5*16] + movlpd m2, [mant_cntq+1*32+2] paddw m0, [mant_cntq+ 6*16] paddw m1, [mant_cntq+ 7*16] paddw m0, [mant_cntq+ 8*16] + pmulhuw m2, m4 paddw m1, [mant_cntq+ 9*16] paddw m0, [mant_cntq+10*16] paddw m1, [mant_cntq+11*16] pmaddwd m0, [ac3_bap_bits ] pmaddwd m1, [ac3_bap_bits+16] paddd m0, m1 - PHADDD4 m0, m1 - movd sumd, m0 - movdqa m3, [pw_bap_mul1] - movhpd m0, [mant_cntq +2] - movlpd m0, [mant_cntq+1*32+2] movhpd m1, [mant_cntq+2*32+2] movlpd m1, [mant_cntq+3*32+2] - movhpd m2, [mant_cntq+4*32+2] - movlpd m2, [mant_cntq+5*32+2] - pmulhuw m0, m3 - pmulhuw m1, m3 - pmulhuw m2, m3 - paddusw m0, m1 - paddusw m0, m2 - pmaddwd m0, [pw_bap_mul2] + movhpd m3, [mant_cntq+4*32+2] + movlpd m3, [mant_cntq+5*32+2] + pmulhuw m1, m4 + pmulhuw m3, m4 + paddusw m1, m2 + paddusw m1, m3 + pmaddwd m1, [pw_bap_mul2] + paddd m0, m1 PHADDD4 m0, m1 movd eax, m0 - add eax, sumd RET ;------------------------------------------------------------------------------ -- To stop receiving notification emails like this one, please contact [email protected]. _______________________________________________ ffmpeg-cvslog mailing list -- [email protected] To unsubscribe send an email to [email protected]
