From: Yaowu Xu Date: Wed, 11 May 2016 20:52:59 +0000 (-0700) Subject: Change to use correct check for halfpel X-Git-Tag: v1.6.0~132^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=17fae3a;p=libvpx Change to use correct check for halfpel In motion estimation stage for subpel motion, subpel variance is computed use bilinear interpolation. The motion vector precision used is at 1/8 pel and three bits are used to represent the x and y subpel offsets. Based on this, the half pel check should be against 4, not 8. Change-Id: I1f56fa1fa3f2f5e19a20d27983efe628557f170e --- diff --git a/vpx_dsp/x86/subpel_variance_sse2.asm b/vpx_dsp/x86/subpel_variance_sse2.asm index c655e4b34..be359759c 100644 --- a/vpx_dsp/x86/subpel_variance_sse2.asm +++ b/vpx_dsp/x86/subpel_variance_sse2.asm @@ -274,7 +274,7 @@ SECTION .text STORE_AND_RET .x_zero_y_nonzero: - cmp y_offsetd, 8 + cmp y_offsetd, 4 jne .x_zero_y_nonhalf ; x_offset == 0 && y_offset == 0.5 @@ -478,7 +478,7 @@ SECTION .text STORE_AND_RET .x_nonzero: - cmp x_offsetd, 8 + cmp x_offsetd, 4 jne .x_nonhalf ; x_offset == 0.5 test y_offsetd, y_offsetd @@ -546,7 +546,7 @@ SECTION .text STORE_AND_RET .x_half_y_nonzero: - cmp y_offsetd, 8 + cmp y_offsetd, 4 jne .x_half_y_nonhalf ; x_offset == 0.5 && y_offset == 0.5 @@ -921,7 +921,7 @@ SECTION .text STORE_AND_RET .x_nonhalf_y_nonzero: - cmp y_offsetd, 8 + cmp y_offsetd, 4 jne .x_nonhalf_y_nonhalf ; x_offset == bilin interpolation && y_offset == 0.5