diff options
author | Ronald S. Bultje <rsbultje@gmail.com> | 2011-05-24 10:19:41 -0400 |
---|---|---|
committer | Ronald S. Bultje <rsbultje@gmail.com> | 2011-05-24 10:19:41 -0400 |
commit | 1dd4f4be5a82409a162b42b120fc5054fef9d899 (patch) | |
tree | 17248fac0bab48bc40ffe647158ffca8a076a761 /libswscale/x86/swscale_template.c | |
parent | fe43d5d71e1b272e1176232a34074c8c9bc0c61d (diff) | |
download | ffmpeg-1dd4f4be5a82409a162b42b120fc5054fef9d899.tar.gz |
swscale: remove AMD3DNOW "optimizations".
The functions are identical to their MMX counterparts. Thus,
pretending that swscale is highly optimized for AMD3DNOW
extensions is a poorly executed practical joke at best.
Diffstat (limited to 'libswscale/x86/swscale_template.c')
-rw-r--r-- | libswscale/x86/swscale_template.c | 15 |
1 files changed, 2 insertions, 13 deletions
diff --git a/libswscale/x86/swscale_template.c b/libswscale/x86/swscale_template.c index d0671315ae..63e0f72cb2 100644 --- a/libswscale/x86/swscale_template.c +++ b/libswscale/x86/swscale_template.c @@ -22,24 +22,15 @@ #undef REAL_MOVNTQ #undef MOVNTQ -#undef PAVGB #undef PREFETCH -#if COMPILE_TEMPLATE_AMD3DNOW -#define PREFETCH "prefetch" -#elif COMPILE_TEMPLATE_MMX2 +#if COMPILE_TEMPLATE_MMX2 #define PREFETCH "prefetchnta" #else #define PREFETCH " # nop" #endif #if COMPILE_TEMPLATE_MMX2 -#define PAVGB(a,b) "pavgb " #a ", " #b " \n\t" -#elif COMPILE_TEMPLATE_AMD3DNOW -#define PAVGB(a,b) "pavgusb " #a ", " #b " \n\t" -#endif - -#if COMPILE_TEMPLATE_MMX2 #define REAL_MOVNTQ(a,b) "movntq " #a ", " #b " \n\t" #else #define REAL_MOVNTQ(a,b) "movq " #a ", " #b " \n\t" @@ -2559,9 +2550,7 @@ static int RENAME(swScale)(SwsContext *c, const uint8_t* src[], int srcStride[], fillPlane(dst[3], dstStride[3], dstW, dstY-lastDstY, lastDstY, 255); if (COMPILE_TEMPLATE_MMX2) __asm__ volatile("sfence":::"memory"); - /* On K6 femms is faster than emms. On K7 femms is directly mapped to emms. */ - if (COMPILE_TEMPLATE_AMD3DNOW) __asm__ volatile("femms" :::"memory"); - else __asm__ volatile("emms" :::"memory"); + __asm__ volatile("emms" :::"memory"); /* store changed local vars back in the context */ c->dstY= dstY; |