These assembly optimisations can use MMX. They failed to reset the floating-point state when they are done, hence subsequent floating-point operations return nonsense values.
This fixes the FATE failure for vvc-output-ref on x86-32, e.g. https://fate.ffmpeg.org/report.cgi?slot=x86_32-uubuntu-mingw32-gcc&time=20241110053421 Signed-off-by: Frank Plowman <p...@frankplowman.com> --- libavcodec/x86/videodsp.asm | 1 + 1 file changed, 1 insertion(+) diff --git a/libavcodec/x86/videodsp.asm b/libavcodec/x86/videodsp.asm index 3cc07878d3..6144f13fca 100644 --- a/libavcodec/x86/videodsp.asm +++ b/libavcodec/x86/videodsp.asm @@ -313,6 +313,7 @@ cglobal emu_edge_vfix %+ %%n, 1, 5, 1, dst, src, start_y, end_y, bh jnz .bottom_loop ; } .end: + emms RET %assign %%n %%n+1 %endrep ; 1+%2-%1 -- 2.46.0 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".