Mercurial > mplayer.hg
comparison libmpeg2/cpu_accel.c @ 13864:96259a2f2142
enable mmx support on x86_64 in libmpeg2
author | aurel |
---|---|
date | Wed, 03 Nov 2004 17:12:01 +0000 |
parents | adb93ef6b07f |
children | 1385ec491ffb |
comparison
equal
deleted
inserted
replaced
13863:2233c999dce1 | 13864:96259a2f2142 |
---|---|
28 #include "mpeg2.h" | 28 #include "mpeg2.h" |
29 #include "attributes.h" | 29 #include "attributes.h" |
30 #include "mpeg2_internal.h" | 30 #include "mpeg2_internal.h" |
31 | 31 |
32 #ifdef ACCEL_DETECT | 32 #ifdef ACCEL_DETECT |
33 #ifdef ARCH_X86 | 33 #if defined(ARCH_X86) || defined(ARCH_X86_64) |
34 static inline uint32_t arch_accel (void) | 34 static inline uint32_t arch_accel (void) |
35 { | 35 { |
36 uint32_t eax, ebx, ecx, edx; | 36 uint32_t eax, ebx, ecx, edx; |
37 int AMD; | 37 int AMD; |
38 uint32_t caps; | 38 uint32_t caps; |
104 if (AMD && (edx & 0x00400000)) /* AMD MMX extensions */ | 104 if (AMD && (edx & 0x00400000)) /* AMD MMX extensions */ |
105 caps |= MPEG2_ACCEL_X86_MMXEXT; | 105 caps |= MPEG2_ACCEL_X86_MMXEXT; |
106 | 106 |
107 return caps; | 107 return caps; |
108 } | 108 } |
109 #endif /* ARCH_X86 */ | 109 #endif /* ARCH_X86 || ARCH_X86_64 */ |
110 | 110 |
111 #if defined(ARCH_PPC) || (defined(ARCH_SPARC) && defined(HAVE_VIS)) | 111 #if defined(ARCH_PPC) || (defined(ARCH_SPARC) && defined(HAVE_VIS)) |
112 #include <signal.h> | 112 #include <signal.h> |
113 #include <setjmp.h> | 113 #include <setjmp.h> |
114 | 114 |
214 { | 214 { |
215 uint32_t accel; | 215 uint32_t accel; |
216 | 216 |
217 accel = 0; | 217 accel = 0; |
218 #ifdef ACCEL_DETECT | 218 #ifdef ACCEL_DETECT |
219 #if defined (ARCH_X86) || defined (ARCH_PPC) || defined (ARCH_ALPHA) || defined (ARCH_SPARC) | 219 #if defined (ARCH_X86) || defined (ARCH_X86_64) || defined (ARCH_PPC) || defined (ARCH_ALPHA) || defined (ARCH_SPARC) |
220 accel = arch_accel (); | 220 accel = arch_accel (); |
221 #endif | 221 #endif |
222 #endif | 222 #endif |
223 return accel; | 223 return accel; |
224 } | 224 } |