diff options
author | James Almer <jamrial@gmail.com> | 2014-07-28 21:11:49 -0300 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2014-07-29 03:42:29 +0200 |
commit | 4f91bb0ff0bd8732baeeba4c9f3a96780151a6da (patch) | |
tree | e2ee0de2dadc7a8114ae4cad234570d936643f41 /libavcodec/x86/hevc_deblock.asm | |
parent | 983109bbd99939c0c3a35c96b1c36e823bf30f6b (diff) | |
download | ffmpeg-4f91bb0ff0bd8732baeeba4c9f3a96780151a6da.tar.gz |
x86/hevc_deblock: use psignw instead of pmullw where possible
It's slightly faster
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/x86/hevc_deblock.asm')
-rw-r--r-- | libavcodec/x86/hevc_deblock.asm | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/libavcodec/x86/hevc_deblock.asm b/libavcodec/x86/hevc_deblock.asm index ecebd3634a..e38181db43 100644 --- a/libavcodec/x86/hevc_deblock.asm +++ b/libavcodec/x86/hevc_deblock.asm @@ -324,7 +324,11 @@ ALIGN 16 movd m4, [tcq+4]; tc1 punpcklwd m4, m4 shufps m6, m4, 0; tc0, tc1 +%if cpuflag(ssse3) + psignw m4, m6, [pw_m1]; -tc0, -tc1 +%else pmullw m4, m6, [pw_m1]; -tc0, -tc1 +%endif ;end tc calculations paddw m5, [pw_4]; +4 @@ -609,7 +613,11 @@ ALIGN 16 pminsw m12, m9; av_clip(delta0, -tc, tc) psraw m9, 1; tc -> tc / 2 +%if cpuflag(ssse3) + psignw m14, m9, [pw_m1]; -tc / 2 +%else pmullw m14, m9, [pw_m1]; -tc / 2 +%endif pavgw m15, m1, m3; (p2 + p0 + 1) >> 1 psubw m15, m2; ((p2 + p0 + 1) >> 1) - p1 |