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

Git pushed a commit to branch master
in repository ffmpeg.

commit 815526b2e5d39d86162da6f89ce8d519f84e3591
Author:     Kacper Michajłow <[email protected]>
AuthorDate: Mon Oct 26 07:27:06 2026 +0100
Commit:     Kacper Michajłow <[email protected]>
CommitDate: Mon Nov 2 07:24:04 2026 +0000

    avcodec/ppc/blockdsp: move the AltiVec clear_block to its own file
    
    The dcbz functions and the init run on every CPU. Move the AltiVec
    clear_block to blockdsp_altivec.c, like libavutil/ppc/float_dsp, so
    blockdsp.c holds no AltiVec code and can be built without the AltiVec
    flags.
    
    Signed-off-by: Kacper Michajłow <[email protected]>
---
 libavcodec/ppc/Makefile                            |  4 ++++
 libavcodec/ppc/blockdsp.c                          | 19 ++---------------
 .../ppc/{hpeldsp_altivec.h => blockdsp_altivec.c}  | 24 +++++++++++++---------
 .../{aarch64/fdct.h => ppc/blockdsp_altivec.h}     |  8 ++++----
 4 files changed, 24 insertions(+), 31 deletions(-)

diff --git a/libavcodec/ppc/Makefile b/libavcodec/ppc/Makefile
index 06df54089a..1970bd4942 100644
--- a/libavcodec/ppc/Makefile
+++ b/libavcodec/ppc/Makefile
@@ -24,3 +24,7 @@ OBJS-$(CONFIG_MPEG4_DECODER)           += ppc/mpeg4videodsp.o
 OBJS-$(CONFIG_SVQ1_ENCODER)            += ppc/svq1enc_altivec.o
 OBJS-$(CONFIG_VORBIS_DECODER)          += ppc/vorbisdsp_altivec.o
 OBJS-$(CONFIG_VP7_DECODER)             += ppc/vp8dsp_altivec.o
+
+# AltiVec optimizations
+# subsystems
+ALTIVEC-OBJS-$(CONFIG_BLOCKDSP)        += ppc/blockdsp_altivec.o
diff --git a/libavcodec/ppc/blockdsp.c b/libavcodec/ppc/blockdsp.c
index d89b77e088..917690995b 100644
--- a/libavcodec/ppc/blockdsp.c
+++ b/libavcodec/ppc/blockdsp.c
@@ -28,9 +28,9 @@
 #include "libavutil/cpu.h"
 #include "libavutil/mem.h"
 #include "libavutil/ppc/cpu.h"
-#include "libavutil/ppc/util_altivec.h"
 
 #include "libavcodec/blockdsp.h"
+#include "blockdsp_altivec.h"
 
 /* ***** WARNING ***** WARNING ***** WARNING ***** */
 /*
@@ -127,21 +127,6 @@ static long check_dcbzl_effect(void)
     return count;
 }
 
-#if HAVE_ALTIVEC
-static void clear_block_altivec(int16_t *block)
-{
-    LOAD_ZERO;
-    vec_st(zero_s16v,   0, block);
-    vec_st(zero_s16v,  16, block);
-    vec_st(zero_s16v,  32, block);
-    vec_st(zero_s16v,  48, block);
-    vec_st(zero_s16v,  64, block);
-    vec_st(zero_s16v,  80, block);
-    vec_st(zero_s16v,  96, block);
-    vec_st(zero_s16v, 112, block);
-}
-#endif /* HAVE_ALTIVEC */
-
 av_cold void ff_blockdsp_init_ppc(BlockDSPContext *c)
 {
     // common optimizations whether AltiVec is available or not
@@ -160,6 +145,6 @@ av_cold void ff_blockdsp_init_ppc(BlockDSPContext *c)
     if (!PPC_ALTIVEC(av_get_cpu_flags()))
         return;
 
-    c->clear_block = clear_block_altivec;
+    c->clear_block = ff_clear_block_altivec;
 #endif /* HAVE_ALTIVEC */
 }
diff --git a/libavcodec/ppc/hpeldsp_altivec.h 
b/libavcodec/ppc/blockdsp_altivec.c
similarity index 68%
copy from libavcodec/ppc/hpeldsp_altivec.h
copy to libavcodec/ppc/blockdsp_altivec.c
index 590809f539..34531da975 100644
--- a/libavcodec/ppc/hpeldsp_altivec.h
+++ b/libavcodec/ppc/blockdsp_altivec.c
@@ -20,15 +20,19 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
-#ifndef AVCODEC_PPC_HPELDSP_ALTIVEC_H
-#define AVCODEC_PPC_HPELDSP_ALTIVEC_H
+#include "libavutil/ppc/util_altivec.h"
 
-#include <stddef.h>
-#include <stdint.h>
+#include "blockdsp_altivec.h"
 
-void ff_avg_pixels16_altivec(uint8_t *block, const uint8_t *pixels,
-                             ptrdiff_t line_size, int h);
-void ff_put_pixels16_altivec(uint8_t *block, const uint8_t *pixels,
-                             ptrdiff_t line_size, int h);
-
-#endif /* AVCODEC_PPC_HPELDSP_ALTIVEC_H */
+void ff_clear_block_altivec(int16_t *block)
+{
+    LOAD_ZERO;
+    vec_st(zero_s16v,   0, block);
+    vec_st(zero_s16v,  16, block);
+    vec_st(zero_s16v,  32, block);
+    vec_st(zero_s16v,  48, block);
+    vec_st(zero_s16v,  64, block);
+    vec_st(zero_s16v,  80, block);
+    vec_st(zero_s16v,  96, block);
+    vec_st(zero_s16v, 112, block);
+}
diff --git a/libavcodec/aarch64/fdct.h b/libavcodec/ppc/blockdsp_altivec.h
similarity index 82%
copy from libavcodec/aarch64/fdct.h
copy to libavcodec/ppc/blockdsp_altivec.h
index 0901b53a83..47f64c2054 100644
--- a/libavcodec/aarch64/fdct.h
+++ b/libavcodec/ppc/blockdsp_altivec.h
@@ -16,11 +16,11 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
-#ifndef AVCODEC_AARCH64_FDCT_H
-#define AVCODEC_AARCH64_FDCT_H
+#ifndef AVCODEC_PPC_BLOCKDSP_ALTIVEC_H
+#define AVCODEC_PPC_BLOCKDSP_ALTIVEC_H
 
 #include <stdint.h>
 
-void ff_fdct_neon(int16_t *block);
+void ff_clear_block_altivec(int16_t *block);
 
-#endif /* AVCODEC_AARCH64_FDCT_H */
+#endif /* AVCODEC_PPC_BLOCKDSP_ALTIVEC_H */

-- 
To stop receiving notification emails like this one, please contact
[email protected].
_______________________________________________
ffmpeg-cvslog mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to