OSDN Git Service

x86: dcadsp: Fix linking with yasm and optimizations disabled
authorDiego Biurrun <diego@biurrun.de>
Tue, 4 Mar 2014 18:40:21 +0000 (19:40 +0100)
committerDiego Biurrun <diego@biurrun.de>
Wed, 5 Mar 2014 22:16:21 +0000 (23:16 +0100)
Some optimized functions reference optimized symbols, so the functions
must be explicitly disabled when those symbols are unavailable.

libavcodec/x86/dcadsp_init.c

index 3821892..65e3db5 100644 (file)
@@ -60,6 +60,7 @@ void ff_synth_filter_inner_sse2(float *synth_buf_ptr, float synth_buf2[32],
                                 const float window[512],
                                 float out[32], intptr_t offset, float scale);
 
+#if HAVE_YASM
 static void synth_filter_sse2(FFTContext *imdct,
                               float *synth_buf_ptr, int *synth_buf_offset,
                               float synth_buf2[32], const float window[512],
@@ -74,12 +75,15 @@ static void synth_filter_sse2(FFTContext *imdct,
 
     *synth_buf_offset = (*synth_buf_offset - 32) & 511;
 }
+#endif /* HAVE_YASM */
 
 av_cold void ff_synth_filter_init_x86(SynthFilterContext *s)
 {
+#if HAVE_YASM
     int cpu_flags = av_get_cpu_flags();
 
     if (EXTERNAL_SSE2(cpu_flags)) {
         s->synth_filter_float = synth_filter_sse2;
     }
+#endif /* HAVE_YASM */
 }