Fix encoder uninitialized read errors reported by drmemory
This patch fixed the uninitialized read errors in Issue 748: "dr memory VP9 encode errors". In vp9_convolve_avg_sse2, when width is 4, pavgb reads 8 bytes from dst buffer that is out of range. An error is reported although the data is not actually used later. This issue was resolved by preventing uninitialized reads. Change-Id: I109a54910aa47139cb13119de86f2062cff207df
This commit is contained in:
parent
0cca5dd8d7
commit
3a6670fcf8
@ -133,10 +133,14 @@ INIT_MMX sse
|
|||||||
movh m3, [srcq+r5q]
|
movh m3, [srcq+r5q]
|
||||||
lea srcq, [srcq+src_strideq*4]
|
lea srcq, [srcq+src_strideq*4]
|
||||||
%ifidn %1, avg
|
%ifidn %1, avg
|
||||||
pavgb m0, [dstq]
|
movh m4, [dstq]
|
||||||
pavgb m1, [dstq+dst_strideq]
|
movh m5, [dstq+dst_strideq]
|
||||||
pavgb m2, [dstq+dst_strideq*2]
|
movh m6, [dstq+dst_strideq*2]
|
||||||
pavgb m3, [dstq+r6q]
|
movh m7, [dstq+r6q]
|
||||||
|
pavgb m0, m4
|
||||||
|
pavgb m1, m5
|
||||||
|
pavgb m2, m6
|
||||||
|
pavgb m3, m7
|
||||||
%endif
|
%endif
|
||||||
movh [dstq ], m0
|
movh [dstq ], m0
|
||||||
movh [dstq+dst_strideq ], m1
|
movh [dstq+dst_strideq ], m1
|
||||||
|
Loading…
x
Reference in New Issue
Block a user