Commit 5a5c770d authored by Guillaume Poirier's avatar Guillaume Poirier

Add SSSE3 (Core2 aka Conroe/Merom/Woodcrester new instructions) detection

Originally committed as revision 7332 to svn://svn.ffmpeg.org/ffmpeg/trunk
parent 832a7b63
...@@ -484,6 +484,7 @@ int mm_support(void); ...@@ -484,6 +484,7 @@ int mm_support(void);
#define MM_SSE2 0x0010 /* PIV SSE2 functions */ #define MM_SSE2 0x0010 /* PIV SSE2 functions */
#define MM_3DNOWEXT 0x0020 /* AMD 3DNowExt */ #define MM_3DNOWEXT 0x0020 /* AMD 3DNowExt */
#define MM_SSE3 0x0040 /* Prescott SSE3 functions */ #define MM_SSE3 0x0040 /* Prescott SSE3 functions */
#define MM_SSSE3 0x0080 /* Conroe SSSE3 functions */
extern int mm_flags; extern int mm_flags;
......
...@@ -87,6 +87,8 @@ int mm_support(void) ...@@ -87,6 +87,8 @@ int mm_support(void)
rval |= MM_SSE2; rval |= MM_SSE2;
if (ecx & 1) if (ecx & 1)
rval |= MM_SSE3; rval |= MM_SSE3;
if (ecx & 0x00000200 )
rval |= MM_SSSE3;
} }
cpuid(0x80000000, max_ext_level, ebx, ecx, edx); cpuid(0x80000000, max_ext_level, ebx, ecx, edx);
...@@ -104,11 +106,13 @@ int mm_support(void) ...@@ -104,11 +106,13 @@ int mm_support(void)
} }
#if 0 #if 0
av_log(NULL, AV_LOG_DEBUG, "%s%s%s%s%s%s\n", av_log(NULL, AV_LOG_DEBUG, "%s%s%s%s%s%s%s%s\n",
(rval&MM_MMX) ? "MMX ":"", (rval&MM_MMX) ? "MMX ":"",
(rval&MM_MMXEXT) ? "MMX2 ":"", (rval&MM_MMXEXT) ? "MMX2 ":"",
(rval&MM_SSE) ? "SSE ":"", (rval&MM_SSE) ? "SSE ":"",
(rval&MM_SSE2) ? "SSE2 ":"", (rval&MM_SSE2) ? "SSE2 ":"",
(rval&MM_SSE3) ? "SSE3 ":"",
(rval&MM_SSSE3) ? "SSSE3 ":"",
(rval&MM_3DNOW) ? "3DNow ":"", (rval&MM_3DNOW) ? "3DNow ":"",
(rval&MM_3DNOWEXT) ? "3DNowExt ":""); (rval&MM_3DNOWEXT) ? "3DNowExt ":"");
#endif #endif
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment