Lines Matching refs:ECX
580 unsigned EAX = 0, EBX = 0, ECX = 0, EDX = 0; in getVendorSignature() local
589 if (getX86CpuIDAndInfo(0, MaxLeaf, &EBX, &ECX, &EDX) || *MaxLeaf < 1) in getVendorSignature()
593 if (EBX == 0x756e6547 && EDX == 0x49656e69 && ECX == 0x6c65746e) in getVendorSignature()
597 if (EBX == 0x68747541 && EDX == 0x69746e65 && ECX == 0x444d4163) in getVendorSignature()
1202 static void getAvailableFeatures(unsigned ECX, unsigned EDX, unsigned MaxLeaf, in getAvailableFeatures() argument
1219 if ((ECX >> 0) & 1) in getAvailableFeatures()
1221 if ((ECX >> 1) & 1) in getAvailableFeatures()
1223 if ((ECX >> 9) & 1) in getAvailableFeatures()
1225 if ((ECX >> 12) & 1) in getAvailableFeatures()
1227 if ((ECX >> 19) & 1) in getAvailableFeatures()
1229 if ((ECX >> 20) & 1) { in getAvailableFeatures()
1233 if ((ECX >> 23) & 1) in getAvailableFeatures()
1235 if ((ECX >> 25) & 1) in getAvailableFeatures()
1238 if ((ECX >> 22) & 1) in getAvailableFeatures()
1245 bool HasAVX = ((ECX & AVXBits) == AVXBits) && !getX86XCR0(&EAX, &EDX) && in getAvailableFeatures()
1261 MaxLeaf >= 0x7 && !getX86CpuIDAndInfoEx(0x7, 0x0, &EAX, &EBX, &ECX, &EDX); in getAvailableFeatures()
1294 if (HasLeaf7 && ((ECX >> 1) & 1) && HasAVX512Save) in getAvailableFeatures()
1296 if (HasLeaf7 && ((ECX >> 6) & 1) && HasAVX512Save) in getAvailableFeatures()
1298 if (HasLeaf7 && ((ECX >> 8) & 1)) in getAvailableFeatures()
1300 if (HasLeaf7 && ((ECX >> 10) & 1) && HasAVX) in getAvailableFeatures()
1302 if (HasLeaf7 && ((ECX >> 11) & 1) && HasAVX512Save) in getAvailableFeatures()
1304 if (HasLeaf7 && ((ECX >> 12) & 1) && HasAVX512Save) in getAvailableFeatures()
1306 if (HasLeaf7 && ((ECX >> 14) & 1) && HasAVX512Save) in getAvailableFeatures()
1320 !getX86CpuIDAndInfoEx(0x7, 0x1, &EAX, &EBX, &ECX, &EDX); in getAvailableFeatures()
1325 getX86CpuIDAndInfo(0x80000000, &MaxExtLevel, &EBX, &ECX, &EDX); in getAvailableFeatures()
1328 !getX86CpuIDAndInfo(0x80000001, &EAX, &EBX, &ECX, &EDX); in getAvailableFeatures()
1329 if (HasExtLeaf1 && ((ECX >> 6) & 1)) in getAvailableFeatures()
1331 if (HasExtLeaf1 && ((ECX >> 11) & 1)) in getAvailableFeatures()
1333 if (HasExtLeaf1 && ((ECX >> 16) & 1)) in getAvailableFeatures()
1346 unsigned EAX = 0, EBX = 0, ECX = 0, EDX = 0; in getHostCPUName() local
1347 getX86CpuIDAndInfo(0x1, &EAX, &EBX, &ECX, &EDX); in getHostCPUName()
1352 getAvailableFeatures(ECX, EDX, MaxLeaf, Features); in getHostCPUName()
1688 unsigned EAX = 0, EBX = 0, ECX = 0, EDX = 0; in getHostCPUFeatures() local
1691 if (getX86CpuIDAndInfo(0, &MaxLevel, &EBX, &ECX, &EDX) || MaxLevel < 1) in getHostCPUFeatures()
1694 getX86CpuIDAndInfo(1, &EAX, &EBX, &ECX, &EDX); in getHostCPUFeatures()
1703 Features["sse3"] = (ECX >> 0) & 1; in getHostCPUFeatures()
1704 Features["pclmul"] = (ECX >> 1) & 1; in getHostCPUFeatures()
1705 Features["ssse3"] = (ECX >> 9) & 1; in getHostCPUFeatures()
1706 Features["cx16"] = (ECX >> 13) & 1; in getHostCPUFeatures()
1707 Features["sse4.1"] = (ECX >> 19) & 1; in getHostCPUFeatures()
1708 Features["sse4.2"] = (ECX >> 20) & 1; in getHostCPUFeatures()
1710 Features["movbe"] = (ECX >> 22) & 1; in getHostCPUFeatures()
1711 Features["popcnt"] = (ECX >> 23) & 1; in getHostCPUFeatures()
1712 Features["aes"] = (ECX >> 25) & 1; in getHostCPUFeatures()
1713 Features["rdrnd"] = (ECX >> 30) & 1; in getHostCPUFeatures()
1718 bool HasXSave = ((ECX >> 27) & 1) && !getX86XCR0(&EAX, &EDX); in getHostCPUFeatures()
1719 bool HasAVXSave = HasXSave && ((ECX >> 28) & 1) && ((EAX & 0x6) == 0x6); in getHostCPUFeatures()
1734 Features["fma"] = ((ECX >> 12) & 1) && HasAVXSave; in getHostCPUFeatures()
1736 Features["xsave"] = ((ECX >> 26) & 1) && HasAVXSave; in getHostCPUFeatures()
1737 Features["f16c"] = ((ECX >> 29) & 1) && HasAVXSave; in getHostCPUFeatures()
1740 getX86CpuIDAndInfo(0x80000000, &MaxExtLevel, &EBX, &ECX, &EDX); in getHostCPUFeatures()
1743 !getX86CpuIDAndInfo(0x80000001, &EAX, &EBX, &ECX, &EDX); in getHostCPUFeatures()
1744 Features["sahf"] = HasExtLeaf1 && ((ECX >> 0) & 1); in getHostCPUFeatures()
1745 Features["lzcnt"] = HasExtLeaf1 && ((ECX >> 5) & 1); in getHostCPUFeatures()
1746 Features["sse4a"] = HasExtLeaf1 && ((ECX >> 6) & 1); in getHostCPUFeatures()
1747 Features["prfchw"] = HasExtLeaf1 && ((ECX >> 8) & 1); in getHostCPUFeatures()
1748 Features["xop"] = HasExtLeaf1 && ((ECX >> 11) & 1) && HasAVXSave; in getHostCPUFeatures()
1749 Features["lwp"] = HasExtLeaf1 && ((ECX >> 15) & 1); in getHostCPUFeatures()
1750 Features["fma4"] = HasExtLeaf1 && ((ECX >> 16) & 1) && HasAVXSave; in getHostCPUFeatures()
1751 Features["tbm"] = HasExtLeaf1 && ((ECX >> 21) & 1); in getHostCPUFeatures()
1752 Features["mwaitx"] = HasExtLeaf1 && ((ECX >> 29) & 1); in getHostCPUFeatures()
1759 !getX86CpuIDAndInfo(0x80000008, &EAX, &EBX, &ECX, &EDX); in getHostCPUFeatures()
1765 MaxLevel >= 7 && !getX86CpuIDAndInfoEx(0x7, 0x0, &EAX, &EBX, &ECX, &EDX); in getHostCPUFeatures()
1792 Features["prefetchwt1"] = HasLeaf7 && ((ECX >> 0) & 1); in getHostCPUFeatures()
1793 Features["avx512vbmi"] = HasLeaf7 && ((ECX >> 1) & 1) && HasAVX512Save; in getHostCPUFeatures()
1794 Features["pku"] = HasLeaf7 && ((ECX >> 4) & 1); in getHostCPUFeatures()
1795 Features["waitpkg"] = HasLeaf7 && ((ECX >> 5) & 1); in getHostCPUFeatures()
1796 Features["avx512vbmi2"] = HasLeaf7 && ((ECX >> 6) & 1) && HasAVX512Save; in getHostCPUFeatures()
1797 Features["shstk"] = HasLeaf7 && ((ECX >> 7) & 1); in getHostCPUFeatures()
1798 Features["gfni"] = HasLeaf7 && ((ECX >> 8) & 1); in getHostCPUFeatures()
1799 Features["vaes"] = HasLeaf7 && ((ECX >> 9) & 1) && HasAVXSave; in getHostCPUFeatures()
1800 Features["vpclmulqdq"] = HasLeaf7 && ((ECX >> 10) & 1) && HasAVXSave; in getHostCPUFeatures()
1801 Features["avx512vnni"] = HasLeaf7 && ((ECX >> 11) & 1) && HasAVX512Save; in getHostCPUFeatures()
1802 Features["avx512bitalg"] = HasLeaf7 && ((ECX >> 12) & 1) && HasAVX512Save; in getHostCPUFeatures()
1803 Features["avx512vpopcntdq"] = HasLeaf7 && ((ECX >> 14) & 1) && HasAVX512Save; in getHostCPUFeatures()
1804 Features["rdpid"] = HasLeaf7 && ((ECX >> 22) & 1); in getHostCPUFeatures()
1805 Features["kl"] = HasLeaf7 && ((ECX >> 23) & 1); // key locker in getHostCPUFeatures()
1806 Features["cldemote"] = HasLeaf7 && ((ECX >> 25) & 1); in getHostCPUFeatures()
1807 Features["movdiri"] = HasLeaf7 && ((ECX >> 27) & 1); in getHostCPUFeatures()
1808 Features["movdir64b"] = HasLeaf7 && ((ECX >> 28) & 1); in getHostCPUFeatures()
1809 Features["enqcmd"] = HasLeaf7 && ((ECX >> 29) & 1); in getHostCPUFeatures()
1835 !getX86CpuIDAndInfoEx(0x7, 0x1, &EAX, &EBX, &ECX, &EDX); in getHostCPUFeatures()
1855 !getX86CpuIDAndInfoEx(0xd, 0x1, &EAX, &EBX, &ECX, &EDX); in getHostCPUFeatures()
1863 !getX86CpuIDAndInfoEx(0x14, 0x0, &EAX, &EBX, &ECX, &EDX); in getHostCPUFeatures()
1868 MaxLevel >= 0x19 && !getX86CpuIDAndInfo(0x19, &EAX, &EBX, &ECX, &EDX); in getHostCPUFeatures()
1872 MaxLevel >= 0x24 && !getX86CpuIDAndInfo(0x24, &EAX, &EBX, &ECX, &EDX); in getHostCPUFeatures()