summaryrefslogtreecommitdiffstats
path: root/libvo/aclib.c
diff options
context:
space:
mode:
Diffstat (limited to 'libvo/aclib.c')
-rw-r--r--libvo/aclib.c226
1 files changed, 0 insertions, 226 deletions
diff --git a/libvo/aclib.c b/libvo/aclib.c
deleted file mode 100644
index 7328de794a..0000000000
--- a/libvo/aclib.c
+++ /dev/null
@@ -1,226 +0,0 @@
-/*
- * aclib - advanced C library ;)
- * Functions which improve and expand the standard C library, see aclib_template.c.
- * This file only contains runtime CPU detection and config option stuff.
- * runtime CPU detection by Michael Niedermayer (michaelni@gmx.at)
- *
- * This file is part of MPlayer.
- *
- * MPlayer is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * MPlayer is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with MPlayer; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-#include "config.h"
-#include <stddef.h>
-#include <stdint.h>
-#include <string.h>
-#include "cpudetect.h"
-#include "fastmemcpy.h"
-#include "ffmpeg_files/x86_cpu.h"
-#undef memcpy
-
-#define BLOCK_SIZE 4096
-#define CONFUSION_FACTOR 0
-//Feel free to fine-tune the above 2, it might be possible to get some speedup with them :)
-
-//#define STATISTICS
-
-//Note: we have MMX, MMX2, 3DNOW version there is no 3DNOW+MMX2 one
-//Plain C versions
-//#if !HAVE_MMX || CONFIG_RUNTIME_CPUDETECT
-//#define COMPILE_C
-//#endif
-
-#if ARCH_X86
-
-#if (HAVE_MMX && !HAVE_AMD3DNOW && !HAVE_MMX2) || CONFIG_RUNTIME_CPUDETECT
-#define COMPILE_MMX
-#endif
-
-#if (HAVE_MMX2 && !HAVE_SSE2) || CONFIG_RUNTIME_CPUDETECT
-#define COMPILE_MMX2
-#endif
-
-#if (HAVE_AMD3DNOW && !HAVE_MMX2) || CONFIG_RUNTIME_CPUDETECT
-#define COMPILE_3DNOW
-#endif
-
-#if HAVE_SSE2 || CONFIG_RUNTIME_CPUDETECT
-#define COMPILE_SSE
-#endif
-
-#undef HAVE_MMX
-#undef HAVE_MMX2
-#undef HAVE_AMD3DNOW
-#undef HAVE_SSE
-#undef HAVE_SSE2
-#define HAVE_MMX 0
-#define HAVE_MMX2 0
-#define HAVE_AMD3DNOW 0
-#define HAVE_SSE 0
-#define HAVE_SSE2 0
-/*
-#ifdef COMPILE_C
-#undef HAVE_MMX
-#undef HAVE_MMX2
-#undef HAVE_AMD3DNOW
-#undef HAVE_SSE
-#undef HAVE_SSE2
-#define HAVE_MMX 0
-#define HAVE_MMX2 0
-#define HAVE_AMD3DNOW 0
-#define HAVE_SSE 0
-#define HAVE_SSE2 0
-#define RENAME(a) a ## _C
-#include "aclib_template.c"
-#endif
-*/
-//MMX versions
-#ifdef COMPILE_MMX
-#undef RENAME
-#undef HAVE_MMX
-#undef HAVE_MMX2
-#undef HAVE_AMD3DNOW
-#undef HAVE_SSE
-#undef HAVE_SSE2
-#define HAVE_MMX 1
-#define HAVE_MMX2 0
-#define HAVE_AMD3DNOW 0
-#define HAVE_SSE 0
-#define HAVE_SSE2 0
-#define RENAME(a) a ## _MMX
-#include "aclib_template.c"
-#endif
-
-//MMX2 versions
-#ifdef COMPILE_MMX2
-#undef RENAME
-#undef HAVE_MMX
-#undef HAVE_MMX2
-#undef HAVE_AMD3DNOW
-#undef HAVE_SSE
-#undef HAVE_SSE2
-#define HAVE_MMX 1
-#define HAVE_MMX2 1
-#define HAVE_AMD3DNOW 0
-#define HAVE_SSE 0
-#define HAVE_SSE2 0
-#define RENAME(a) a ## _MMX2
-#include "aclib_template.c"
-#endif
-
-//3DNOW versions
-#ifdef COMPILE_3DNOW
-#undef RENAME
-#undef HAVE_MMX
-#undef HAVE_MMX2
-#undef HAVE_AMD3DNOW
-#undef HAVE_SSE
-#undef HAVE_SSE2
-#define HAVE_MMX 1
-#define HAVE_MMX2 0
-#define HAVE_AMD3DNOW 1
-#define HAVE_SSE 0
-#define HAVE_SSE2 0
-#define RENAME(a) a ## _3DNow
-#include "aclib_template.c"
-#endif
-
-//SSE versions (only used on SSE2 cpus)
-#ifdef COMPILE_SSE
-#undef RENAME
-#undef HAVE_MMX
-#undef HAVE_MMX2
-#undef HAVE_AMD3DNOW
-#undef HAVE_SSE
-#undef HAVE_SSE2
-#define HAVE_MMX 1
-#define HAVE_MMX2 1
-#define HAVE_AMD3DNOW 0
-#define HAVE_SSE 1
-#define HAVE_SSE2 1
-#define RENAME(a) a ## _SSE
-#include "aclib_template.c"
-#endif
-
-#endif /* ARCH_X86 */
-
-
-#undef fast_memcpy
-void * fast_memcpy(void * to, const void * from, size_t len)
-{
-#if CONFIG_RUNTIME_CPUDETECT
-#if ARCH_X86
- // ordered per speed fasterst first
- if(gCpuCaps.hasSSE2)
- fast_memcpy_SSE(to, from, len);
- else if(gCpuCaps.hasMMX2)
- fast_memcpy_MMX2(to, from, len);
- else if(gCpuCaps.has3DNow)
- fast_memcpy_3DNow(to, from, len);
- else if(gCpuCaps.hasMMX)
- fast_memcpy_MMX(to, from, len);
- else
-#endif
- memcpy(to, from, len); // prior to mmx we use the standart memcpy
-#else
-#if HAVE_SSE2
- fast_memcpy_SSE(to, from, len);
-#elif HAVE_MMX2
- fast_memcpy_MMX2(to, from, len);
-#elif HAVE_AMD3DNOW
- fast_memcpy_3DNow(to, from, len);
-#elif HAVE_MMX
- fast_memcpy_MMX(to, from, len);
-#else
- memcpy(to, from, len); // prior to mmx we use the standart memcpy
-#endif
-
-#endif //!CONFIG_RUNTIME_CPUDETECT
- return to;
-}
-
-#undef mem2agpcpy
-void * mem2agpcpy(void * to, const void * from, size_t len)
-{
-#if CONFIG_RUNTIME_CPUDETECT
-#if ARCH_X86
- // ordered per speed fasterst first
- if(gCpuCaps.hasSSE2)
- mem2agpcpy_SSE(to, from, len);
- else if(gCpuCaps.hasMMX2)
- mem2agpcpy_MMX2(to, from, len);
- else if(gCpuCaps.has3DNow)
- mem2agpcpy_3DNow(to, from, len);
- else if(gCpuCaps.hasMMX)
- mem2agpcpy_MMX(to, from, len);
- else
-#endif
- memcpy(to, from, len); // prior to mmx we use the standart memcpy
-#else
-#if HAVE_SSE2
- mem2agpcpy_SSE(to, from, len);
-#elif HAVE_MMX2
- mem2agpcpy_MMX2(to, from, len);
-#elif HAVE_AMD3DNOW
- mem2agpcpy_3DNow(to, from, len);
-#elif HAVE_MMX
- mem2agpcpy_MMX(to, from, len);
-#else
- memcpy(to, from, len); // prior to mmx we use the standart memcpy
-#endif
-
-#endif //!CONFIG_RUNTIME_CPUDETECT
- return to;
-}