]> granicus.if.org Git - libvpx/commitdiff
Bug fix in ssse3 quantize function
authorYunqing Wang <yunqingwang@google.com>
Fri, 7 Feb 2014 22:27:07 +0000 (14:27 -0800)
committerYunqing Wang <yunqingwang@google.com>
Fri, 7 Feb 2014 22:32:30 +0000 (14:32 -0800)
A bug was reported in Issue 702: "SIGILL (Illegal instruction) when
transcoding with vp9 - using FFmpeg". It was reproduced and fixed.

Change-Id: Ie32c149a89af02856084aeaf289e848a905c7700

vp9/encoder/x86/vp9_quantize_ssse3.asm

index db306603b5fc5fe58b07802768ca86255ca5fab4..48ccef8ccfb3045c20812dd14ff7c7cef96ee5cb 100644 (file)
@@ -188,7 +188,8 @@ cglobal quantize_%1, 0, %2, 15, coeff, ncoeff, skip, zbin, round, quant, \
   pmaxsw                          m8, m7
   pshuflw                         m7, m8, 0x1
   pmaxsw                          m8, m7
-  pextrw                        [r2], m8, 0
+  pextrw                          r6, m8, 0
+  mov                             [r2], r6
   RET
 
   ; skip-block, i.e. just write all zeroes
@@ -214,5 +215,5 @@ cglobal quantize_%1, 0, %2, 15, coeff, ncoeff, skip, zbin, round, quant, \
 %endmacro
 
 INIT_XMM ssse3
-QUANTIZE_FN b, 6
+QUANTIZE_FN b, 7
 QUANTIZE_FN b_32x32, 7