[FFmpeg-devel] [PATCH v1] lavc/aarch64: Fix ff_pred8x8_plane_neon_10
Bin Peng
pengbin at visionular.com
Mon Dec 16 04:31:23 EET 2024
Fix test failure on aarch64:
./tests/checkasm/checkasm --test=h264pred 479612
The mismatch between neon and C functions can also be reproduced using
the following bitstream and command line.
wget https://streams.videolan.org/ffmpeg/incoming/intra8x8pred_10bit.264
./ffmpeg -cpuflags 0 -threads 1 -i intra8x8pred_10bit.264 -f
framemd5 -y md5_ref
./ffmpeg -threads 1 -i intra8x8pred_10bit.264 -f
framemd5 -y md5_neon
Signed-off-by: Bin Peng <pengbin at visionular.com>
---
libavcodec/aarch64/h264pred_neon.S | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/libavcodec/aarch64/h264pred_neon.S
b/libavcodec/aarch64/h264pred_neon.S
index ea37689f34..168f8191ad 100644
--- a/libavcodec/aarch64/h264pred_neon.S
+++ b/libavcodec/aarch64/h264pred_neon.S
@@ -595,12 +595,11 @@ function ff_pred8x8_plane_neon_10, export=1
ssubl v2.4s, v2.4h, v3.4h
ext v0.16b, v0.16b, v0.16b, #14
mov v0.h[0], wzr
- mul v0.8h, v0.8h, v5.h[0]
dup v1.4s, v2.s[0]
dup v2.4s, v2.s[0]
dup v3.8h, v5.h[1]
- saddw v1.4s, v1.4s, v0.4h
- saddw2 v2.4s, v2.4s, v0.8h
+ smlal v1.4s, v0.4h, v5.h[0]
+ smlal2 v2.4s, v0.8h, v5.h[0]
mov w3, #8
mvni v4.8h, #0xFC, lsl #8 // 1023 for clipping
1:
--
2.25.1
More information about the ffmpeg-devel
mailing list