Browse Source

Move emms_c() from libavcodec to libavutil.

tags/n0.8
Ronald S. Bultje 14 years ago
parent
commit
e973557211
2 changed files with 15 additions and 19 deletions
  1. +1
    -19
      libavcodec/dsputil.h
  2. +14
    -0
      libavutil/internal.h

+ 1
- 19
libavcodec/dsputil.h View File

@@ -630,13 +630,6 @@ static inline int get_penalty_factor(int lambda, int lambda2, int type){
}
}

/**
* Empty mmx state.
* this must be called between any dsp function and float/double code.
* for example sin(); dsp->idct_put(); emms_c(); cos()
*/
#define emms_c()

void dsputil_init_alpha(DSPContext* c, AVCodecContext *avctx);
void dsputil_init_arm(DSPContext* c, AVCodecContext *avctx);
void dsputil_init_bfin(DSPContext* c, AVCodecContext *avctx);
@@ -654,18 +647,7 @@ void ff_intrax8dsp_init(DSPContext* c, AVCodecContext *avctx);
void ff_mlp_init(DSPContext* c, AVCodecContext *avctx);
void ff_mlp_init_x86(DSPContext* c, AVCodecContext *avctx);

#if HAVE_MMX

#undef emms_c

static inline void emms(void)
{
__asm__ volatile ("emms;":::"memory");
}

#define emms_c() emms()

#elif ARCH_ARM
#if ARCH_ARM

#if HAVE_NEON
# define STRIDE_ALIGN 16


+ 14
- 0
libavutil/internal.h View File

@@ -223,4 +223,18 @@
# define ONLY_IF_THREADS_ENABLED(x) NULL
#endif

#if HAVE_MMX
/**
* Empty mmx state.
* this must be called between any dsp function and float/double code.
* for example sin(); dsp->idct_put(); emms_c(); cos()
*/
static av_always_inline void emms_c(void)
{
__asm__ volatile ("emms" ::: "memory");
}
#else /* HAVE_MMX */
#define emms_c()
#endif /* HAVE_MMX */

#endif /* AVUTIL_INTERNAL_H */

Loading…
Cancel
Save