summaryrefslogtreecommitdiffstats
path: root/cpudetect.c
diff options
context:
space:
mode:
authorgpoirier <gpoirier@b3059339-0415-0410-9bf9-f77b7e298cf2>2008-11-19 16:41:59 +0000
committergpoirier <gpoirier@b3059339-0415-0410-9bf9-f77b7e298cf2>2008-11-19 16:41:59 +0000
commit928e4433aa62badaa8578cf8247ea0cbf06e3204 (patch)
treeb07dbc84141a06ae3a7362bb956567630f0d6406 /cpudetect.c
parent82e0e9055aa932e9e11fccc1ef51bf24efac2eb9 (diff)
downloadmpv-928e4433aa62badaa8578cf8247ea0cbf06e3204.tar.bz2
mpv-928e4433aa62badaa8578cf8247ea0cbf06e3204.tar.xz
Add detection of x86 CPU features SSSE3 and SSE4a.
Patch by Zhou, Zongyi %zz65 A cornell P edu% Original thread: date: Wed, Nov 19, 2008 at 4:22 PM subject: Re: [MPlayer-dev-eng] [PATCH] yadif SSE2/SSSE3 optimization git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27960 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'cpudetect.c')
-rw-r--r--cpudetect.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/cpudetect.c b/cpudetect.c
index 43f5cc2a7d..22edd58795 100644
--- a/cpudetect.c
+++ b/cpudetect.c
@@ -144,6 +144,8 @@ void GetCpuCaps( CpuCaps *caps)
caps->hasMMX = (regs2[3] & (1 << 23 )) >> 23; // 0x0800000
caps->hasSSE = (regs2[3] & (1 << 25 )) >> 25; // 0x2000000
caps->hasSSE2 = (regs2[3] & (1 << 26 )) >> 26; // 0x4000000
+ caps->hasSSSE3 = (regs2[3] & (1 << 9 )) >> 9; // 0x0000200
+ caps->hasSSE4a = (regs2[3] & (1 << 6 )) >> 6; // 0x0000040
caps->hasMMX2 = caps->hasSSE; // SSE cpus supports mmxext too
cl_size = ((regs2[1] >> 8) & 0xFF)*8;
if(cl_size) caps->cl_size = cl_size;
@@ -496,6 +498,8 @@ void GetCpuCaps( CpuCaps *caps)
caps->has3DNowExt=0;
caps->hasSSE=0;
caps->hasSSE2=0;
+ caps->hasSSSE3=0;
+ caps->hasSSE4a=0;
caps->isX86=0;
caps->hasAltiVec = 0;
#ifdef HAVE_ALTIVEC