summaryrefslogtreecommitdiff
path: root/libavcodec/i386
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2008-02-21 00:06:07 +0000
committerMichael Niedermayer <michaelni@gmx.at>2008-02-21 00:06:07 +0000
commit1435e4ccdeb913e5d32ce814617c18379a3d1ecc (patch)
tree3bf1fd4f1aa13123e0a407a918690943a9ef01b1 /libavcodec/i386
parent635fbcb17f8f12d805dbefe4665a5b78e0d1618a (diff)
Disabling all SSE* code for old gcc to avoid alignment issues.
Originally committed as revision 12163 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/i386')
-rw-r--r--libavcodec/i386/cputest.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/libavcodec/i386/cputest.c b/libavcodec/i386/cputest.c
index d039ffef60..079a8df018 100644
--- a/libavcodec/i386/cputest.c
+++ b/libavcodec/i386/cputest.c
@@ -82,13 +82,17 @@ int mm_support(void)
if (std_caps & (1<<23))
rval |= FF_MM_MMX;
if (std_caps & (1<<25))
- rval |= FF_MM_MMXEXT | FF_MM_SSE;
+ rval |= FF_MM_MMXEXT
+#if !defined(__GNUC__) || __GNUC__ > 2
+ | FF_MM_SSE;
if (std_caps & (1<<26))
rval |= FF_MM_SSE2;
if (ecx & 1)
rval |= FF_MM_SSE3;
if (ecx & 0x00000200 )
- rval |= FF_MM_SSSE3;
+ rval |= FF_MM_SSSE3
+#endif
+ ;
}
cpuid(0x80000000, max_ext_level, ebx, ecx, edx);