mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-01-08 13:22:53 +02:00
configure: Add --enable-runtime-cpudetect
Originally committed as revision 18380 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
10a7d21672
commit
e90f5b5ab1
3
configure
vendored
3
configure
vendored
@ -100,6 +100,7 @@ show_help(){
|
||||
echo " --disable-golomb disable Golomb code"
|
||||
echo " --disable-mdct disable MDCT code"
|
||||
echo " --disable-rdft disable RDFT code"
|
||||
echo " --enable-runtime-cpudetect detect cpu capabilities at runtime (bigger binary)"
|
||||
echo " --enable-hardcoded-tables use hardcoded tables instead of runtime generation"
|
||||
echo " --enable-memalign-hack emulate memalign, interferes with memory debuggers"
|
||||
echo " --enable-beos-netserver enable BeOS netserver"
|
||||
@ -806,6 +807,7 @@ CONFIG_LIST="
|
||||
postproc
|
||||
powerpc_perf
|
||||
rdft
|
||||
runtime_cpudetect
|
||||
shared
|
||||
small
|
||||
static
|
||||
@ -2282,6 +2284,7 @@ if test "$extra_version" != ""; then
|
||||
echo "version string suffix $extra_version"
|
||||
fi
|
||||
echo "big-endian ${bigendian-no}"
|
||||
echo "runtime cpu detection ${runtime_cpudetect-no}"
|
||||
if enabled x86; then
|
||||
echo "yasm ${yasm-no}"
|
||||
echo "MMX enabled ${mmx-no}"
|
||||
|
@ -63,7 +63,7 @@ int has_altivec(void)
|
||||
|
||||
if (err == 0) return has_vu != 0;
|
||||
return 0;
|
||||
#elif defined(RUNTIME_CPUDETECT)
|
||||
#elif CONFIG_RUNTIME_CPUDETECT
|
||||
int proc_ver;
|
||||
// Support of mfspr PVR emulation added in Linux 2.6.17.
|
||||
__asm__ volatile("mfspr %0, 287" : "=r" (proc_ver));
|
||||
|
@ -554,7 +554,7 @@ static av_always_inline void do_a_deblock_C(uint8_t *src, int step, int stride,
|
||||
|
||||
//Note: we have C, MMX, MMX2, 3DNOW version there is no 3DNOW+MMX2 one
|
||||
//Plain C versions
|
||||
#if !(HAVE_MMX || HAVE_ALTIVEC) || defined (RUNTIME_CPUDETECT)
|
||||
#if !(HAVE_MMX || HAVE_ALTIVEC) || CONFIG_RUNTIME_CPUDETECT
|
||||
#define COMPILE_C
|
||||
#endif
|
||||
|
||||
@ -564,15 +564,15 @@ static av_always_inline void do_a_deblock_C(uint8_t *src, int step, int stride,
|
||||
|
||||
#if ARCH_X86
|
||||
|
||||
#if (HAVE_MMX && !HAVE_AMD3DNOW && !HAVE_MMX2) || defined (RUNTIME_CPUDETECT)
|
||||
#if (HAVE_MMX && !HAVE_AMD3DNOW && !HAVE_MMX2) || CONFIG_RUNTIME_CPUDETECT
|
||||
#define COMPILE_MMX
|
||||
#endif
|
||||
|
||||
#if HAVE_MMX2 || defined (RUNTIME_CPUDETECT)
|
||||
#if HAVE_MMX2 || CONFIG_RUNTIME_CPUDETECT
|
||||
#define COMPILE_MMX2
|
||||
#endif
|
||||
|
||||
#if (HAVE_AMD3DNOW && !HAVE_MMX2) || defined (RUNTIME_CPUDETECT)
|
||||
#if (HAVE_AMD3DNOW && !HAVE_MMX2) || CONFIG_RUNTIME_CPUDETECT
|
||||
#define COMPILE_3DNOW
|
||||
#endif
|
||||
#endif /* ARCH_X86 */
|
||||
@ -645,7 +645,7 @@ static inline void postProcess(const uint8_t src[], int srcStride, uint8_t dst[]
|
||||
// Using ifs here as they are faster than function pointers although the
|
||||
// difference would not be measurable here but it is much better because
|
||||
// someone might exchange the CPU whithout restarting MPlayer ;)
|
||||
#ifdef RUNTIME_CPUDETECT
|
||||
#if CONFIG_RUNTIME_CPUDETECT
|
||||
#if ARCH_X86
|
||||
// ordered per speed fastest first
|
||||
if(c->cpuCaps & PP_CPU_CAPS_MMX2)
|
||||
@ -664,7 +664,7 @@ static inline void postProcess(const uint8_t src[], int srcStride, uint8_t dst[]
|
||||
#endif
|
||||
postProcess_C(src, srcStride, dst, dstStride, width, height, QPs, QPStride, isColor, c);
|
||||
#endif
|
||||
#else //RUNTIME_CPUDETECT
|
||||
#else //CONFIG_RUNTIME_CPUDETECT
|
||||
#if HAVE_MMX2
|
||||
postProcess_MMX2(src, srcStride, dst, dstStride, width, height, QPs, QPStride, isColor, c);
|
||||
#elif HAVE_AMD3DNOW
|
||||
@ -676,7 +676,7 @@ static inline void postProcess(const uint8_t src[], int srcStride, uint8_t dst[]
|
||||
#else
|
||||
postProcess_C(src, srcStride, dst, dstStride, width, height, QPs, QPStride, isColor, c);
|
||||
#endif
|
||||
#endif //!RUNTIME_CPUDETECT
|
||||
#endif //!CONFIG_RUNTIME_CPUDETECT
|
||||
}
|
||||
|
||||
//static void postProcess(uint8_t src[], int srcStride, uint8_t dst[], int dstStride, int width, int height,
|
||||
|
Loading…
Reference in New Issue
Block a user