summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJingning Han <jingning@google.com>2014-07-07 12:07:09 -0700
committerGerrit Code Review <gerrit@gerrit.golo.chromium.org>2014-07-07 12:07:09 -0700
commitffd221366067ceda66e68d74778bf1b2d077188a (patch)
tree961c1a7228654c95b0174620ce83c27ea356a0f4
parent6214038be94fe8a5648a9588ca2985650541fe2e (diff)
parent00fc0e3ff5e34472efc652686703493387fe36ee (diff)
downloadlibvpx-ffd221366067ceda66e68d74778bf1b2d077188a.tar
libvpx-ffd221366067ceda66e68d74778bf1b2d077188a.tar.gz
libvpx-ffd221366067ceda66e68d74778bf1b2d077188a.tar.bz2
libvpx-ffd221366067ceda66e68d74778bf1b2d077188a.zip
Merge "Tune SSSE3 implementation of fast path quantization"
-rw-r--r--vp9/encoder/x86/vp9_quantize_ssse3_x86_64.asm8
1 files 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