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 }