This is an automated email from the git hooks/post-receive script.

Git pushed a commit to branch master
in repository ffmpeg.

commit f0a28cf9ce452241a5e8d4c5a3532ab28f1ebb5c
Author:     Andreas Rheinhardt <[email protected]>
AuthorDate: Thu Mar 5 18:39:28 2026 +0100
Commit:     Andreas Rheinhardt <[email protected]>
CommitDate: Mon Mar 9 07:28:29 2026 +0100

    avcodec/x86/pngdsp: Don't use mmx register in ff_add_bytes_l2_sse2()
    
    This change has no measurable impact on performance here;
    it is intended to avoid unpredictable behavior with floating
    point operation like the one that led to commit
    57a29f2e7dd2374a1df27316c6cf7c0225e86758.
    
    Signed-off-by: Andreas Rheinhardt <[email protected]>
---
 libavcodec/x86/pngdsp.asm | 7 ++++---
 tests/checkasm/png.c      | 4 ++--
 2 files changed, 6 insertions(+), 5 deletions(-)

diff --git a/libavcodec/x86/pngdsp.asm b/libavcodec/x86/pngdsp.asm
index 8ff49565d3..5fa3780185 100644
--- a/libavcodec/x86/pngdsp.asm
+++ b/libavcodec/x86/pngdsp.asm
@@ -57,9 +57,10 @@ cglobal add_bytes_l2, 4, 6, 2, dst, src1, src2, wa, w, i
     and                waq, ~7
     jmp .end_l
 .loop_l:
-    movq               mm0, [src1q+iq]
-    paddb              mm0, [src2q+iq]
-    movq  [dstq+iq       ], mm0
+    movq                m0, [src2q+iq]
+    movq                m1, [src1q+iq]
+    paddb               m0, m1
+    movq  [dstq+iq       ], m0
     add                 iq, 8
 .end_l:
     cmp                 iq, waq
diff --git a/tests/checkasm/png.c b/tests/checkasm/png.c
index 0807d3ab7b..0fe049cf9c 100644
--- a/tests/checkasm/png.c
+++ b/tests/checkasm/png.c
@@ -38,8 +38,8 @@ static void check_add_bytes_l2(const PNGDSPContext *c)
     LOCAL_ALIGNED_16(uint8_t, dst1, [BUF_SIZE]);
     LOCAL_ALIGNED_16(uint8_t, src, [2], [BUF_SIZE]);
 
-    declare_func_emms(AV_CPU_FLAG_MMX, void, uint8_t * dst, const uint8_t 
*src1,
-                      const uint8_t *src2, int w);
+    declare_func(void, uint8_t * dst, const uint8_t *src1,
+                       const uint8_t *src2, int w);
 
     randomize_buf(dst0, BUF_SIZE);
     memcpy(dst1, dst0, BUF_SIZE);

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

Reply via email to