Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/videolan/dav1d.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHenrik Gramner <gramner@twoorioles.com>2020-12-15 14:37:22 +0300
committerHenrik Gramner <gramner@twoorioles.com>2020-12-15 15:29:19 +0300
commit1571f65ac37051fb06f8c4af6490f067205f1da1 (patch)
treeea716c0bbd963e3cb9d79c656ac6d219a0c3dd66
parent5a88f60fd6ed6462df5bc821f6ad47e81734fd4c (diff)
x86: Fix out-of-bounds read in AVX2 wiener_filter
-rw-r--r--src/x86/looprestoration.asm10
1 files changed, 2 insertions, 8 deletions
diff --git a/src/x86/looprestoration.asm b/src/x86/looprestoration.asm
index cde5889..8ebe230 100644
--- a/src/x86/looprestoration.asm
+++ b/src/x86/looprestoration.asm
@@ -200,11 +200,8 @@ cglobal wiener_filter7, 5, 15, 16, -384*12-16, dst, dst_stride, left, lpf, \
jmp .h_main
.h_top:
mov r10, wq
- movu m4, [lpfq+r10-4]
test edgeb, 1 ; LR_HAVE_LEFT
- jnz .h_main
- pshufb m4, [wiener_l_shuf]
- jmp .h_main
+ jz .h_extend_left
.h_loop:
movu m4, [lpfq+r10-4]
.h_main:
@@ -525,11 +522,8 @@ cglobal wiener_filter5, 5, 13, 16, 384*8+16, dst, dst_stride, left, lpf, \
jmp .h_main
.h_top:
mov r10, wq
- movu m4, [lpfq+r10-4]
test edgeb, 1 ; LR_HAVE_LEFT
- jnz .h_main
- pshufb m4, m11
- jmp .h_main
+ jz .h_extend_left
.h_loop:
movu m4, [lpfq+r10-4]
.h_main: