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

Git pushed a commit to branch master
in repository ffmpeg.

The following commit(s) were added to refs/heads/master by this push:
     new d9e8c85617 swscale/x86/ops_int: Check for cpuflag instead of 
avx_enabled
d9e8c85617 is described below

commit d9e8c856171834be8fe20fde0ed991e96f84acf0
Author:     Andreas Rheinhardt <[email protected]>
AuthorDate: Wed Jan 21 11:50:24 2026 +0100
Commit:     Andreas Rheinhardt <[email protected]>
CommitDate: Mon Jan 26 13:10:15 2026 +0100

    swscale/x86/ops_int: Check for cpuflag instead of avx_enabled
    
    This would make this code compatible with forcing VEX encodings
    for the SSE4 codepath and is also more correct, because avx_enabled
    would be enabled for AVX, although the instructions used in these
    codepaths require AVX2.
    
    Reviewed-by: Niklas Haas <[email protected]>
    Signed-off-by: Andreas Rheinhardt <[email protected]>
---
 libswscale/x86/ops_int.asm | 25 ++++++++++---------------
 1 file changed, 10 insertions(+), 15 deletions(-)

diff --git a/libswscale/x86/ops_int.asm b/libswscale/x86/ops_int.asm
index fa7b13cd25..edfbabb60d 100644
--- a/libswscale/x86/ops_int.asm
+++ b/libswscale/x86/ops_int.asm
@@ -284,7 +284,7 @@ IF %1 < 32, VBROADCASTI128 m12, [read%1_unpack2]
             unpckhpd my, m8, m9         ; { Y0 Y2 | Y1 Y3 }
     IF V2,  unpcklpd mx2, m10, m11
     IF V2,  unpckhpd my2, m10, m11
-%if avx_enabled
+%if cpuflag(avx2)
             vpermq mx, mx, q3120       ; { X0 X1 | X2 X3 }
             vpermq my, my, q3120       ; { Y0 Y1 | Y2 Y3 }
     IF V2,  vpermq mx2, mx2, q3120
@@ -297,7 +297,7 @@ IF %1 < 32, VBROADCASTI128 m12, [read%1_unpack2]
 op write%1_packed2
 IF %1 < 32, VBROADCASTI128 m12, [write%1_pack2]
             LOAD_CONT tmp0q
-%if avx_enabled
+%if cpuflag(avx2)
             vpermq mx, mx, q3120       ; { X0 X2 | X1 X3 }
             vpermq my, my, q3120       ; { Y0 Y2 | Y1 Y3 }
     IF V2,  vpermq mx2, mx2, q3120
@@ -332,7 +332,7 @@ IF V2,      movu [out0q + 3*mmsize], m11
             movu xm9,  [%5 + 4  * %6]
             movu xm10, [%5 + 8  * %6]
             movu xm11, [%5 + 12 * %6]
-    %if avx_enabled
+    %if cpuflag(avx2)
             vinserti128 m8,  m8,  [%5 + 16 * %6], 1
             vinserti128 m9,  m9,  [%5 + 20 * %6], 1
             vinserti128 m10, m10, [%5 + 24 * %6], 1
@@ -393,7 +393,7 @@ IF1 V2,     read_packed_inner mx2, my2, mz2, mw2, in0q + %1 
* mmsize, %1, %2
         movu [%5 +  4*%6], xm9
         movu [%5 +  8*%6], xm10
         movu [%5 + 12*%6], xm11
-    %if avx_enabled
+    %if cpuflag(avx2)
         vextracti128 [%5 + 16*%6], m8, 1
         vextracti128 [%5 + 20*%6], m9, 1
         vextracti128 [%5 + 24*%6], m10, 1
@@ -422,7 +422,7 @@ IF1 V2,     write_packed_inner mx2, my2, mz2, mw2, out0q + 
%1 * mmsize, %1, %2
 
 %macro read_nibbles 0
 op read_nibbles1
-%if avx_enabled
+%if cpuflag(avx2)
         movu xmx,  [in0q]
 IF V2,  movu xmx2, [in0q + 16]
 %else
@@ -447,7 +447,7 @@ IF V2,  por mx2, my2
 
 %macro read_bits 0
 op read_bits1
-%if avx_enabled
+%if cpuflag(avx2)
         vpbroadcastd mx,  [in0q]
 IF V2,  vpbroadcastd mx2, [in0q + 4]
 %else
@@ -481,13 +481,8 @@ IF V2,  psllw mx2, 7
 IF V2,  pshufb mx2, m8
         pmovmskb tmp0d, mx
 IF V2,  pmovmskb tmp1d, mx2
-%if avx_enabled
         mov [out0q],     tmp0d
-IF V2,  mov [out0q + 4], tmp1d
-%else
-        mov [out0q],     tmp0d
-IF V2,  mov [out0q + 2], tmp1d
-%endif
+IF V2,  mov [out0q + (mmsize >> 3)], tmp1d
         LOAD_CONT tmp0q
         add out0q, (mmsize >> 3) * (1 + V2)
         FINISH tmp0q
@@ -599,12 +594,12 @@ IF V2,  mova %3, %2
 %macro clear_generic 0
 op clear
             LOAD_CONT tmp0q
-%if avx_enabled
+%if cpuflag(avx2)
     IF !X,  vpbroadcastd mx, [implq + SwsOpImpl.priv + 0]
     IF !Y,  vpbroadcastd my, [implq + SwsOpImpl.priv + 4]
     IF !Z,  vpbroadcastd mz, [implq + SwsOpImpl.priv + 8]
     IF !W,  vpbroadcastd mw, [implq + SwsOpImpl.priv + 12]
-%else ; !avx_enabled
+%else ; !cpuflag(avx2)
     IF !X,  movd mx, [implq + SwsOpImpl.priv + 0]
     IF !Y,  movd my, [implq + SwsOpImpl.priv + 4]
     IF !Z,  movd mz, [implq + SwsOpImpl.priv + 8]
@@ -802,7 +797,7 @@ op swizzle_1000
 op %1_U8_U16
             LOAD_CONT tmp0q
 %if V2
-    %if avx_enabled
+    %if cpuflag(avx2)
     IF X,   vextracti128 xmx2, mx, 1
     IF Y,   vextracti128 xmy2, my, 1
     IF Z,   vextracti128 xmz2, mz, 1

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

Reply via email to