[FFmpeg-cvslog] x86/hevc_deblock: use psignw instead of pmullw where possible

James Almer git at videolan.org
Tue Jul 29 03:51:56 CEST 2014


ffmpeg | branch: master | James Almer <jamrial at gmail.com> | Mon Jul 28 21:11:49 2014 -0300| [4f91bb0ff0bd8732baeeba4c9f3a96780151a6da] | committer: Michael Niedermayer

x86/hevc_deblock: use psignw instead of pmullw where possible

It's slightly faster

Signed-off-by: James Almer <jamrial at gmail.com>
Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=4f91bb0ff0bd8732baeeba4c9f3a96780151a6da
---

 libavcodec/x86/hevc_deblock.asm |    8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/libavcodec/x86/hevc_deblock.asm b/libavcodec/x86/hevc_deblock.asm
index ecebd36..e38181d 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



More information about the ffmpeg-cvslog mailing list