Mercurial > mplayer.hg
comparison cpudetect.c @ 28901:e1b7d9bf263b
SSE3 support patch by Zhou Zongyi, zhouzongyi pset.suntec net
author | diego |
---|---|
date | Thu, 12 Mar 2009 10:50:21 +0000 |
parents | 156862492c61 |
children | 8450a9da95f7 |
comparison
equal
deleted
inserted
replaced
28900:b2d3d9408a99 | 28901:e1b7d9bf263b |
---|---|
141 // general feature flags: | 141 // general feature flags: |
142 caps->hasTSC = (regs2[3] & (1 << 8 )) >> 8; // 0x0000010 | 142 caps->hasTSC = (regs2[3] & (1 << 8 )) >> 8; // 0x0000010 |
143 caps->hasMMX = (regs2[3] & (1 << 23 )) >> 23; // 0x0800000 | 143 caps->hasMMX = (regs2[3] & (1 << 23 )) >> 23; // 0x0800000 |
144 caps->hasSSE = (regs2[3] & (1 << 25 )) >> 25; // 0x2000000 | 144 caps->hasSSE = (regs2[3] & (1 << 25 )) >> 25; // 0x2000000 |
145 caps->hasSSE2 = (regs2[3] & (1 << 26 )) >> 26; // 0x4000000 | 145 caps->hasSSE2 = (regs2[3] & (1 << 26 )) >> 26; // 0x4000000 |
146 caps->hasSSE3 = (regs2[2] & 1); // 0x0000001 | |
146 caps->hasSSSE3 = (regs2[2] & (1 << 9 )) >> 9; // 0x0000200 | 147 caps->hasSSSE3 = (regs2[2] & (1 << 9 )) >> 9; // 0x0000200 |
147 caps->hasMMX2 = caps->hasSSE; // SSE cpus supports mmxext too | 148 caps->hasMMX2 = caps->hasSSE; // SSE cpus supports mmxext too |
148 cl_size = ((regs2[1] >> 8) & 0xFF)*8; | 149 cl_size = ((regs2[1] >> 8) & 0xFF)*8; |
149 if(cl_size) caps->cl_size = cl_size; | 150 if(cl_size) caps->cl_size = cl_size; |
150 | 151 |
456 caps->hasMMX2=0; | 457 caps->hasMMX2=0; |
457 caps->has3DNow=0; | 458 caps->has3DNow=0; |
458 caps->has3DNowExt=0; | 459 caps->has3DNowExt=0; |
459 caps->hasSSE=0; | 460 caps->hasSSE=0; |
460 caps->hasSSE2=0; | 461 caps->hasSSE2=0; |
462 caps->hasSSE3=0; | |
461 caps->hasSSSE3=0; | 463 caps->hasSSSE3=0; |
462 caps->hasSSE4a=0; | 464 caps->hasSSE4a=0; |
463 caps->isX86=0; | 465 caps->isX86=0; |
464 caps->hasAltiVec = 0; | 466 caps->hasAltiVec = 0; |
465 #if HAVE_ALTIVEC | 467 #if HAVE_ALTIVEC |