shithub: libvpx

Download patch

ref: efcdf946edc7b95eb4811d41ae7d756002fa548c
parent: 6e6f5881d8f23cee4d21d4ae86d59363713f3bf4
author: Yunqing Wang <yunqingwang@google.com>
date: Thu May 22 11:42:13 EDT 2014

Fix a decoding mismatch in sub-pixel filters

This did the same correction as the one in commit "Correct ssse3
8/16-pixel wide sub-pixel filter calculation" to avoid saturation
during filtering.

Change-Id: Ife9aa3f62daf9114eb24fe38f7baa3c3f361b2d6

--- a/vp9/common/x86/vp9_subpixel_8t_ssse3.asm
+++ b/vp9/common/x86/vp9_subpixel_8t_ssse3.asm
@@ -272,12 +272,10 @@
     punpcklbw   xmm2, xmm3                  ;C D
     punpcklbw   xmm4, xmm5                  ;E F
 
-
     movq        xmm6, [rsi + rbx + 8]       ;G
     movq        xmm7, [rax + rbx + 8]       ;H
     punpcklbw   xmm6, xmm7                  ;G H
 
-
     pmaddubsw   xmm0, k0k1
     pmaddubsw   xmm2, k2k3
     pmaddubsw   xmm4, k4k5
@@ -284,10 +282,13 @@
     pmaddubsw   xmm6, k6k7
 
     paddsw      xmm0, xmm6
-    paddsw      xmm0, xmm2
+    movdqa      xmm1, xmm2
+    pmaxsw      xmm2, xmm4
+    pminsw      xmm4, xmm1
     paddsw      xmm0, xmm4
-    paddsw      xmm0, krd
+    paddsw      xmm0, xmm2
 
+    paddsw      xmm0, krd
     psraw       xmm0, 7
     packuswb    xmm0, xmm0