shithub: libvpx

Download patch

ref: 6efdd9ad483f7d86e503ab16e986202feed8b105
parent: b625feb3588e7e598fab2c0df1e28f2ea0a7b3e1
author: Johann <johannkoenig@google.com>
date: Mon Jan 7 04:53:18 EST 2019

fix vp9 fdct_quant

Values in [q]coeff1 were not correctly stored. This caused a segfault
in the sse2 libvpx__nightly_optimization jobs.

Broken in:
commit 85032bac388917916f7a149173db8b34e93e8f6e
Author: Johann <johannkoenig@google.com>
Date:   Fri Dec 21 00:27:00 2018 +0000

    fdct_quant: resolve missing declarations

BUG=webm:1584

Change-Id: I5f5fad34ec5e32023f5b40ff3691125754c11ced

--- a/vp9/encoder/x86/vp9_dct_intrin_sse2.c
+++ b/vp9/encoder/x86/vp9_dct_intrin_sse2.c
@@ -499,7 +499,7 @@
         qcoeff1 = _mm_sub_epi16(qcoeff1, coeff1_sign);
 
         store_tran_low(qcoeff0, qcoeff_ptr + n_coeffs);
-        store_tran_low(qcoeff0, qcoeff_ptr + n_coeffs + 8);
+        store_tran_low(qcoeff1, qcoeff_ptr + n_coeffs + 8);
 
         coeff0 = _mm_mullo_epi16(qcoeff0, dequant);
         dequant = _mm_unpackhi_epi64(dequant, dequant);
@@ -506,7 +506,7 @@
         coeff1 = _mm_mullo_epi16(qcoeff1, dequant);
 
         store_tran_low(coeff0, dqcoeff_ptr + n_coeffs);
-        store_tran_low(coeff0, dqcoeff_ptr + n_coeffs + 8);
+        store_tran_low(coeff1, dqcoeff_ptr + n_coeffs + 8);
       }
 
       {