[FFmpeg-cvslog] libavfilter/x86/vf_gblur: correct the order of loop step

Wu Jianhua git at videolan.org
Sat Sep 18 13:39:01 EEST 2021


ffmpeg | branch: master | Wu Jianhua <jianhua.wu at intel.com> | Thu Sep 16 15:34:08 2021 +0800| [7bbad32d5ab69cb52bc92a5ec30c7b9838daa08a] | committer: Paul B Mahol

libavfilter/x86/vf_gblur: correct the order of loop step

The problem was caused by if the width of the processed block
minus 1 is a multiple of the aligned number the instruction
jle .bscale_scalar would skip the Optimized Loop Step, which
will lead to an incorrect sampling when specifying steps more
than 1. Move the Optimized Loop Step after .bscale_scalar to
ensure the loop step is enabled.

Signed-off-by: Wu Jianhua <jianhua.wu at intel.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=7bbad32d5ab69cb52bc92a5ec30c7b9838daa08a
---

 libavfilter/x86/vf_gblur.asm | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/libavfilter/x86/vf_gblur.asm b/libavfilter/x86/vf_gblur.asm
index 64c067538a..16e802e002 100644
--- a/libavfilter/x86/vf_gblur.asm
+++ b/libavfilter/x86/vf_gblur.asm
@@ -524,9 +524,8 @@ cglobal horiz_slice, 4, 9, 9, ptr, width, height, steps, nu, bscale, x, y, step,
         cmp xq,        0
         jg .loop_x_scalar
 
-    OPTIMIZED_LOOP_STEP
-
     .bscale_scalar:
+        OPTIMIZED_LOOP_STEP
         sub ptrq, 4
         sub localbufq, mmsize
         mulps m3, m1



More information about the ffmpeg-cvslog mailing list