This is an automated email from the git hooks/post-receive script. Git pushed a commit to branch master in repository ffmpeg.
commit ee83c175f817dd413f20d2453e4dc4eabd1e87f5 Author: Andreas Rheinhardt <[email protected]> AuthorDate: Fri Aug 7 03:19:03 2026 +0200 Commit: Andreas Rheinhardt <[email protected]> CommitDate: Sun Aug 9 17:23:06 2026 +0200 avcodec/x86/ttadsp: Optimize updating dl[4..7] ttaencdsp old: filter_process_c: 15.0 filter_process_ssse3: 9.0 ( 1.66x) filter_process_sse4: 6.9 ( 2.18x) ttaencdsp new: filter_process_c: 14.9 filter_process_ssse3: 8.3 ( 1.79x) filter_process_sse4: 6.4 ( 2.32x) ttadsp old: filter_process_c: 14.7 filter_process_ssse3: 8.7 ( 1.70x) filter_process_sse4: 6.6 ( 2.24x) ttadsp new: filter_process_c: 14.6 filter_process_ssse3: 8.1 ( 1.81x) filter_process_sse4: 6.3 ( 2.30x) Reviewed-by: Lynne <[email protected]> Signed-off-by: Andreas Rheinhardt <[email protected]> --- libavcodec/x86/ttadsp.asm | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/libavcodec/x86/ttadsp.asm b/libavcodec/x86/ttadsp.asm index fd98ccab34..d8e4406d53 100644 --- a/libavcodec/x86/ttadsp.asm +++ b/libavcodec/x86/ttadsp.asm @@ -107,6 +107,7 @@ cglobal tta%3_filter_process, 5,5,%2, qm, dx, dl, error, in, shift, round movd m2, shiftm ; movd m0, [inq] ; psrad m4, m2 ; + psrldq m1, 4 ; dl5, dl6, dl7, 0 psubd m3, m0, m4 ; movd [inq], m3 ; *in -= (sum >> filter->shift); movd [errorq], m3 ; filter->error = *in; @@ -116,19 +117,17 @@ cglobal tta%3_filter_process, 5,5,%2, qm, dx, dl, error, in, shift, round movd m2, shiftm ; *in += (sum >> filter->shift); psrad m4, m2 ; + psrldq m1, 4 ; dl5, dl6, dl7, 0 paddd m0, m4 ; movd [inq], m0 ; %endif - psrldq m1, 4 ; - pslldq m0, 12 ; filter->dl[4] = -filter->dl[5]; - pshufd m0, m0, 0xf0 ; filter->dl[5] = -filter->dl[6]; - psubd m0, m1 ; filter->dl[6] = *in - filter->dl[7]; - psrldq m1, m0, 4 ; filter->dl[7] = *in; - pshufd m1, m1, 0xf4 ; filter->dl[5] += filter->dl[6]; - paddd m0, m1 ; filter->dl[4] += filter->dl[5]; - psrldq m1, 4 ; - paddd m0, m1 ; + pshufd m2, m1, q3321 ; dl6, dl7, 0, 0 + pshufd m0, m0, 0 + paddd m1, m2 ; dl5+dl6, dl6+dl7, dl7, 0 + psrldq m2, 4 ; dl7 + paddd m1, m2 ; dl5+dl6+dl7, dl5+dl6+dl7, dl6+dl7, dl7 + psubd m0, m1 mova [dlq + 0x10], m0 ; RET %endmacro _______________________________________________ ffmpeg-cvslog mailing list -- [email protected] To unsubscribe send an email to [email protected]
