v1 of patches 2-3 (NEON YUV2RGB + checkasm expansion) exposed a
pre-existing bug in the LoongArch LASX YUV2RGB path: the res variable
(residual pixel count for widths not divisible by 16) is destructively
modified by DEALYUV2RGBLINERES/DEALYUV2RGBLINERES32 inside the row
loop, producing wrong output when srcSliceH > 2. v2 prepends a fix.

Changes since v1:
- NEW patch 1/3: fix LoongArch LASX res variable across row iterations
- Patches 2/3 and 3/3 unchanged from v1

David Christle (3):
  swscale/loongarch: fix LASX YUV2RGB residual for multi-row slices
  swscale/aarch64: add NEON YUV420P/YUV422P/YUVA420P to RGB conversion
  tests/checkasm/sw_yuv2rgb: test multi-row conversion with padded
    strides

 libswscale/aarch64/swscale_unscaled.c |  90 ++++++++++++++++++
 libswscale/aarch64/yuv2rgb_neon.S     | 130 +++++++++++++++++++++++---
 libswscale/loongarch/yuv2rgb_lasx.c   |   2 +
 libswscale/swscale_internal.h         |   1 +
 libswscale/yuv2rgb.c                  |   2 +
 tests/checkasm/sw_yuv2rgb.c           |  96 +++++++++----------
 6 files changed, 259 insertions(+), 62 deletions(-)

-- 
2.52.0


_______________________________________________
ffmpeg-devel mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to