Browse Source

Fix compilation without HAVE_AVX, HAVE_YASM etc.

At the very least this should fix warnings about unused static
functions if one or more of these is not defined.
However even compilation might be broken if the compiler does
not optimize the function away completely.
This actually happens in case of the AVX function, since the
function pointer is used in an assignment that is not under
an #if and thus probably only optimized away after the function
was already marked as used.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
tags/n0.10
Reimar Döffinger 14 years ago
parent
commit
7a1723086a
1 changed files with 10 additions and 1 deletions
  1. +10
    -1
      libavcodec/x86/mpegaudiodec_mmx.c

+ 10
- 1
libavcodec/x86/mpegaudiodec_mmx.c View File

@@ -192,11 +192,17 @@ static void imdct36_blocks_ ## CPU1(float *out, float *buf, float *in, \
} \
}

#if HAVE_YASM
#if HAVE_SSE
DECL_IMDCT_BLOCKS(sse,sse)
DECL_IMDCT_BLOCKS(sse2,sse)
DECL_IMDCT_BLOCKS(sse3,sse)
DECL_IMDCT_BLOCKS(ssse3,sse)
#endif
#if HAVE_AVX
DECL_IMDCT_BLOCKS(avx,avx)
#endif
#endif

void ff_mpadsp_init_mmx(MPADSPContext *s)
{
@@ -220,8 +226,11 @@ void ff_mpadsp_init_mmx(MPADSPContext *s)
s->apply_window_float = apply_window_mp3;
}
#if HAVE_YASM
if (mm_flags & AV_CPU_FLAG_AVX && HAVE_AVX) {
if (0) {
#if HAVE_AVX
} else if (mm_flags & AV_CPU_FLAG_AVX && HAVE_AVX) {
s->imdct36_blocks_float = imdct36_blocks_avx;
#endif
#if HAVE_SSE
} else if (mm_flags & AV_CPU_FLAG_SSSE3) {
s->imdct36_blocks_float = imdct36_blocks_ssse3;


Loading…
Cancel
Save