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

Git pushed a commit to branch master
in repository ffmpeg.

commit 19dc7b79a4e7d2f9804d48369dbb132a39e1ac5d
Author:     Andreas Rheinhardt <[email protected]>
AuthorDate: Thu Feb 19 01:31:31 2026 +0100
Commit:     Andreas Rheinhardt <[email protected]>
CommitDate: Sun Feb 22 01:03:22 2026 +0100

    avcodec/x86/vvc/of: Unify shuffling
    
    One can use the same shuffles for the width 8 and width 16
    case if one also changes the permutation in vpermd (that always
    follows pshufb for width 16).
    
    This also allows to load it before checking width.
    
    Signed-off-by: Andreas Rheinhardt <[email protected]>
---
 libavcodec/x86/vvc/of.asm | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/libavcodec/x86/vvc/of.asm b/libavcodec/x86/vvc/of.asm
index 1481a4a09b..e11ada8d20 100644
--- a/libavcodec/x86/vvc/of.asm
+++ b/libavcodec/x86/vvc/of.asm
@@ -32,9 +32,8 @@ SECTION_RODATA 32
 pd_15                   times 8 dd 15
 pd_m15                  times 8 dd -15
 
-pb_shuffle_w8  times 2 db   0, 1, 0xff, 0xff, 8, 9, 0xff, 0xff, 6, 7, 0xff, 
0xff, 14, 15, 0xff, 0xff
-pb_shuffle_w16 times 2 db   0, 1, 0xff, 0xff, 6, 7, 0xff, 0xff, 8, 9, 0xff, 
0xff, 14, 15, 0xff, 0xff
-pd_perm_w16            dd   0, 2, 1, 4, 3, 6, 5, 7
+pb_shuffle     times 2 db   0, 1, 0xff, 0xff, 8, 9, 0xff, 0xff, 6, 7, 0xff, 
0xff, 14, 15, 0xff, 0xff
+pd_perm_w16            dd   0, 1, 2, 4, 3, 5, 6, 7
 %if ARCH_X86_64
 
 %if HAVE_AVX2_EXTERNAL
@@ -186,6 +185,9 @@ INIT_YMM avx2
 
     DIFF                     ndiff, c1, c0, SHIFT2, t0  ; -diff
 
+    ; use t0, t1 as temporary buffers
+    mova                        t0, [pb_shuffle]
+
     psignw                      m7, ndiff, m8           ; sgxdi
     psignw                      m9, ndiff, m6           ; sgydi
     psignw                     m10, m8, m6              ; sgxgy
@@ -193,11 +195,9 @@ INIT_YMM avx2
     pabsw                       m6, m6                  ; sgy2
     pabsw                       m8, m8                  ; sgx2
 
-    ; use t0, t1 as temporary buffers
     cmp                         wd, 16
 
     je                       %%w16
-    mova                        t0, [pb_shuffle_w8]
     SUM_MIN_BLOCK_W8            m6, t0, m11
     SUM_MIN_BLOCK_W8            m7, t0, m11
     SUM_MIN_BLOCK_W8            m8, t0, m11
@@ -206,7 +206,6 @@ INIT_YMM avx2
     jmp                     %%wend
 
 %%w16:
-    mova                        t0, [pb_shuffle_w16]
     mova                        t1, [pd_perm_w16]
     SUM_MIN_BLOCK_W16           m6, t0, t1, m11
     SUM_MIN_BLOCK_W16           m7, t0, t1, m11

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

Reply via email to