shithub: libvpx

Download patch

ref: bbe5e032a400526ca0b0695a892ec2ef54094bdb
parent: 4db08237e08e5384b48d0c5ee1ef0cf0fcd8bb3d
author: Yunqing Wang <yunqingwang@google.com>
date: Tue Nov 20 05:01:20 EST 2012

Fix ref_stride in sad function

Used ref_stride.

Change-Id: I31f0a3bb935520f54d11a1d87315627f162ae845

--- a/vp9/common/x86/sadmxn_x86.c
+++ b/vp9/common/x86/sadmxn_x86.c
@@ -30,9 +30,9 @@
   s1 = _mm_loadu_si128((const __m128i *)(src_ptr + 1 * src_stride));
   s2 = _mm_loadu_si128((const __m128i *)(src_ptr + 2 * src_stride));
 
-  r0 = _mm_loadu_si128((const __m128i *)(ref_ptr + 0 * src_stride));
-  r1 = _mm_loadu_si128((const __m128i *)(ref_ptr + 1 * src_stride));
-  r2 = _mm_loadu_si128((const __m128i *)(ref_ptr + 2 * src_stride));
+  r0 = _mm_loadu_si128((const __m128i *)(ref_ptr + 0 * ref_stride));
+  r1 = _mm_loadu_si128((const __m128i *)(ref_ptr + 1 * ref_stride));
+  r2 = _mm_loadu_si128((const __m128i *)(ref_ptr + 2 * ref_stride));
 
   sad = _mm_sad_epu8(s0, r0);
   sad = _mm_add_epi16(sad,  _mm_sad_epu8(s1, r1));
@@ -57,10 +57,10 @@
     s1 = _mm_cvtsi32_si128 (*(const int *)(src_ptr + 1 * src_stride));
     s2 = _mm_cvtsi32_si128 (*(const int *)(src_ptr + 2 * src_stride));
     s3 = _mm_cvtsi32_si128 (*(const int *)(src_ptr + 3 * src_stride));
-    r0 = _mm_cvtsi32_si128 (*(const int *)(ref_ptr + 0 * src_stride));
-    r1 = _mm_cvtsi32_si128 (*(const int *)(ref_ptr + 1 * src_stride));
-    r2 = _mm_cvtsi32_si128 (*(const int *)(ref_ptr + 2 * src_stride));
-    r3 = _mm_cvtsi32_si128 (*(const int *)(ref_ptr + 3 * src_stride));
+    r0 = _mm_cvtsi32_si128 (*(const int *)(ref_ptr + 0 * ref_stride));
+    r1 = _mm_cvtsi32_si128 (*(const int *)(ref_ptr + 1 * ref_stride));
+    r2 = _mm_cvtsi32_si128 (*(const int *)(ref_ptr + 2 * ref_stride));
+    r3 = _mm_cvtsi32_si128 (*(const int *)(ref_ptr + 3 * ref_stride));
 
     s0 = _mm_unpacklo_epi8(s0, s1);
     r0 = _mm_unpacklo_epi8(r0, r1);
--