From 6af2c351b3ae61e4478950ffddd0dfcad06188b8 Mon Sep 17 00:00:00 2001 From: Diego Biurrun Date: Fri, 23 Aug 2013 18:48:17 +0200 Subject: [PATCH] ppc: Add missing AltiVec cpuflag detection invocations --- libavcodec/ppc/fft_altivec.c | 4 ++++ libavcodec/ppc/fmtconvert_altivec.c | 4 ++++ libavcodec/ppc/mpegaudiodsp_altivec.c | 4 ++++ 3 files changed, 12 insertions(+) diff --git a/libavcodec/ppc/fft_altivec.c b/libavcodec/ppc/fft_altivec.c index b9dd4a2445..2885d3fc64 100644 --- a/libavcodec/ppc/fft_altivec.c +++ b/libavcodec/ppc/fft_altivec.c @@ -21,6 +21,7 @@ */ #include "config.h" +#include "libavutil/cpu.h" #include "libavutil/ppc/types_altivec.h" #include "libavutil/ppc/util_altivec.h" #include "libavcodec/fft.h" @@ -142,6 +143,9 @@ static void imdct_calc_altivec(FFTContext *s, FFTSample *output, const FFTSample av_cold void ff_fft_init_ppc(FFTContext *s) { #if HAVE_GNU_AS && HAVE_ALTIVEC + if (!(av_get_cpu_flags() & AV_CPU_FLAG_ALTIVEC)) + return; + s->fft_calc = ff_fft_calc_interleave_altivec; if (s->mdct_bits >= 5) { s->imdct_calc = imdct_calc_altivec; diff --git a/libavcodec/ppc/fmtconvert_altivec.c b/libavcodec/ppc/fmtconvert_altivec.c index 08e7dced83..1359259e24 100644 --- a/libavcodec/ppc/fmtconvert_altivec.c +++ b/libavcodec/ppc/fmtconvert_altivec.c @@ -20,6 +20,7 @@ #include "config.h" #include "libavutil/attributes.h" +#include "libavutil/cpu.h" #include "libavutil/mem.h" #include "libavutil/ppc/util_altivec.h" #include "libavcodec/fmtconvert.h" @@ -164,6 +165,9 @@ av_cold void ff_fmt_convert_init_ppc(FmtConvertContext *c, AVCodecContext *avctx) { #if HAVE_ALTIVEC + if (!(av_get_cpu_flags() & AV_CPU_FLAG_ALTIVEC)) + return; + c->int32_to_float_fmul_scalar = int32_to_float_fmul_scalar_altivec; if (!(avctx->flags & CODEC_FLAG_BITEXACT)) { c->float_to_int16 = float_to_int16_altivec; diff --git a/libavcodec/ppc/mpegaudiodsp_altivec.c b/libavcodec/ppc/mpegaudiodsp_altivec.c index 64a6d03d6d..6855c0b715 100644 --- a/libavcodec/ppc/mpegaudiodsp_altivec.c +++ b/libavcodec/ppc/mpegaudiodsp_altivec.c @@ -21,6 +21,7 @@ #include "config.h" #include "libavutil/attributes.h" +#include "libavutil/cpu.h" #include "libavutil/internal.h" #include "libavutil/ppc/util_altivec.h" #include "libavcodec/mpegaudiodsp.h" @@ -132,6 +133,9 @@ static void apply_window_mp3(float *in, float *win, int *unused, float *out, av_cold void ff_mpadsp_init_ppc(MPADSPContext *s) { #if HAVE_ALTIVEC + if (!(av_get_cpu_flags() & AV_CPU_FLAG_ALTIVEC)) + return; + s->apply_window_float = apply_window_mp3; #endif /* HAVE_ALTIVEC */ }