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
Showing the changes to libavcodec (1 of 1 file). Show all
Unified · Split
| @@ -595,12 +595,11 @@ function ff_pred8x8_plane_neon_10, export=1 · 594 unmodified lines | |||
| 595 | ssubl v2.4s, v2.4h, v3.4h | 595 | ssubl v2.4s, v2.4h, v3.4h |
| 596 | ext v0.16b, v0.16b, v0.16b, #14 | 596 | ext v0.16b, v0.16b, v0.16b, #14 |
| 597 | mov v0.h[0], wzr | 597 | mov v0.h[0], wzr |
| 598 | mul v0.8h, v0.8h, v5.h[0] | ||
| 599 | dup v1.4s, v2.s[0] | 598 | dup v1.4s, v2.s[0] |
| 600 | dup v2.4s, v2.s[0] | 599 | dup v2.4s, v2.s[0] |
| 601 | dup v3.8h, v5.h[1] | 600 | dup v3.8h, v5.h[1] |
| 602 | saddw v1.4s, v1.4s, v0.4h | 601 | smlal v1.4s, v0.4h, v5.h[0] |
| 603 | saddw2 v2.4s, v2.4s, v0.8h | 602 | smlal2 v2.4s, v0.8h, v5.h[0] |
| 604 | mov w3, #8 | 603 | mov w3, #8 |
| 605 | mvni v4.8h, #0xFC, lsl #8 // 1023 for clipping | 604 | mvni v4.8h, #0xFC, lsl #8 // 1023 for clipping |
| 606 | 1: | 605 | 1: |