summaryrefslogtreecommitdiff
path: root/libavcodec
diff options
context:
space:
mode:
authorZuxy Meng <zuxy.meng@gmail.com>2009-02-23 15:53:39 +0000
committerZuxy Meng <zuxy.meng@gmail.com>2009-02-23 15:53:39 +0000
commitd05f808dc90a55f2a6eabe6ff62eb3a056e428d3 (patch)
tree4bfeb842799be9c903413313bbebc595226bb8b0 /libavcodec
parentf8c96d011e72f52513c62cec63ae76ff24e4f135 (diff)
Remove CPUID availability check on AMD64 as it's architectural.
Originally committed as revision 17543 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec')
-rw-r--r--libavcodec/x86/cpuid.c17
1 files changed, 6 insertions, 11 deletions
diff --git a/libavcodec/x86/cpuid.c b/libavcodec/x86/cpuid.c
index 033ac0dd5f..63feffcef8 100644
--- a/libavcodec/x86/cpuid.c
+++ b/libavcodec/x86/cpuid.c
@@ -42,19 +42,13 @@ int mm_support(void)
int rval = 0;
int eax, ebx, ecx, edx;
int max_std_level, max_ext_level, std_caps=0, ext_caps=0;
- x86_reg a, c;
-#if ARCH_X86_64
-#define PUSHF "pushfq\n\t"
-#define POPF "popfq\n\t"
-#else
-#define PUSHF "pushfl\n\t"
-#define POPF "popfl\n\t"
-#endif
+#if ARCH_X86_32
+ x86_reg a, c;
__asm__ volatile (
/* See if CPUID instruction is supported ... */
/* ... Get copies of EFLAGS into eax and ecx */
- PUSHF
+ "pushfl\n\t"
"pop %0\n\t"
"mov %0, %1\n\t"
@@ -62,10 +56,10 @@ int mm_support(void)
/* to the EFLAGS reg */
"xor $0x200000, %0\n\t"
"push %0\n\t"
- POPF
+ "popfl\n\t"
/* ... Get the (hopefully modified) EFLAGS */
- PUSHF
+ "pushfl\n\t"
"pop %0\n\t"
: "=a" (a), "=c" (c)
:
@@ -74,6 +68,7 @@ int mm_support(void)
if (a == c)
return 0; /* CPUID not supported */
+#endif
cpuid(0, max_std_level, ebx, ecx, edx);