diff options
author | Siggi Langauf <siggi@users.sourceforge.net> | 2002-05-28 12:44:02 +0000 |
---|---|---|
committer | Siggi Langauf <siggi@users.sourceforge.net> | 2002-05-28 12:44:02 +0000 |
commit | 9402cd07dba3632fea3273795b3223350742fe5c (patch) | |
tree | 673ea756d80c80baca98934c1eeef963fc577dc2 /src/xine-utils/memcpy.c | |
parent | 4ed51e17c6c8e3157d1ebaac8c06d4e0e5b26aa0 (diff) | |
download | xine-lib-9402cd07dba3632fea3273795b3223350742fe5c.tar.gz xine-lib-9402cd07dba3632fea3273795b3223350742fe5c.tar.bz2 |
PowerPC Assembly Patch by Andrew Patrikalakis <anrp@irulethe.net>
This seems to be _always_ using xine_fast_memcpy() in yuv2rgb.c, which _may_
be a bad idea.
CVS patchset: 1961
CVS date: 2002/05/28 12:44:02
Diffstat (limited to 'src/xine-utils/memcpy.c')
-rw-r--r-- | src/xine-utils/memcpy.c | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/src/xine-utils/memcpy.c b/src/xine-utils/memcpy.c index 564a61cdd..a1e114b70 100644 --- a/src/xine-utils/memcpy.c +++ b/src/xine-utils/memcpy.c @@ -33,6 +33,11 @@ #include "config.h" #endif +#ifdef ARCH_PPC +#include "ppcasm_string.h" +#endif +#include <sys/times.h> + #include <stdlib.h> #include <string.h> #include "xine_internal.h" @@ -368,6 +373,10 @@ static struct { { "MMXEXT optimized memcpy()", mmx2_memcpy, 0, MM_MMXEXT }, { "SSE optimized memcpy()", sse_memcpy, 0, MM_MMXEXT|MM_SSE }, #endif /* ARCH_X86 */ +#ifdef ARCH_PPC + { "ppcasm_memcpy()", ppcasm_memcpy, 0, 0 }, + { "ppcasm_cacheable_memcpy()", ppcasm_cacheable_memcpy, 0, 0 }, +#endif /* ARCH_PPC */ { NULL, NULL, 0, 0 } }; @@ -383,7 +392,8 @@ static unsigned long long int rdtsc() { /* FIXME: implement an equivalent for using optimized memcpy on other architectures */ - return 0; +#warning "Using rdtsc() hack (via times(NULL))" + return times(NULL); } #endif @@ -415,6 +425,9 @@ void xine_probe_fast_memcpy(config_values_t *config) #ifdef ARCH_X86 "kernel", "mmx", "mmxext", "sse", #endif +#ifdef ARCH_PPC + "ppcasm_memcpy", "ppcasm_cacheable_memcpy", +#endif NULL}; config_flags = xine_mm_accel(); |