From 00fc0e3ff5e34472efc652686703493387fe36ee Mon Sep 17 00:00:00 2001 From: Jingning Han Date: Mon, 7 Jul 2014 11:04:37 -0700 Subject: [PATCH] Tune SSSE3 implementation of fast path quantization This commit further simplifies the SSSE3 implementation of the fast path quantization process. Change-Id: I5be3286ec0f1bd81d1cf5be3168fece6384fb9ca --- vp9/encoder/x86/vp9_quantize_ssse3_x86_64.asm | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/vp9/encoder/x86/vp9_quantize_ssse3_x86_64.asm b/vp9/encoder/x86/vp9_quantize_ssse3_x86_64.asm index 62da8659c..2d9f2b056 100644 --- a/vp9/encoder/x86/vp9_quantize_ssse3_x86_64.asm +++ b/vp9/encoder/x86/vp9_quantize_ssse3_x86_64.asm @@ -264,7 +264,6 @@ cglobal quantize_%1, 0, %2, 15, coeff, ncoeff, skip, zbin, round, quant, \ pabsw m6, m9 ; m6 = abs(m9) pabsw m11, m10 ; m11 = abs(m10) pcmpeqw m7, m7 - pcmpeqw m12, m12 paddsw m6, m1 ; m6 += round punpckhqdq m1, m1 @@ -296,7 +295,7 @@ cglobal quantize_%1, 0, %2, 15, coeff, ncoeff, skip, zbin, round, quant, \ mova m6, [ iscanq+ncoeffq*2+ 0] ; m6 = scan[i] mova m11, [ iscanq+ncoeffq*2+16] ; m11 = scan[i] psubw m6, m7 ; m6 = scan[i] + 1 - psubw m11, m12 ; m11 = scan[i] + 1 + psubw m11, m7 ; m11 = scan[i] + 1 pandn m8, m6 ; m8 = max(eob) pandn m13, m11 ; m13 = max(eob) pmaxsw m8, m13 @@ -309,10 +308,9 @@ cglobal quantize_%1, 0, %2, 15, coeff, ncoeff, skip, zbin, round, quant, \ pabsw m6, m9 ; m6 = abs(m9) pabsw m11, m10 ; m11 = abs(m10) pcmpeqw m7, m7 - pcmpeqw m12, m12 %ifidn %1, b_32x32 pmovmskb r6, m7 - pmovmskb r2, m12 + pmovmskb r2, m7 or r6, r2 jz .skip_iter %endif @@ -343,7 +341,7 @@ cglobal quantize_%1, 0, %2, 15, coeff, ncoeff, skip, zbin, round, quant, \ mova m6, [ iscanq+ncoeffq*2+ 0] ; m6 = scan[i] mova m11, [ iscanq+ncoeffq*2+16] ; m11 = scan[i] psubw m6, m7 ; m6 = scan[i] + 1 - psubw m11, m12 ; m11 = scan[i] + 1 + psubw m11, m7 ; m11 = scan[i] + 1 pandn m14, m6 ; m14 = max(eob) pandn m13, m11 ; m13 = max(eob) pmaxsw m8, m14 -- 2.40.0