35 #include <yepPredefines.h>
410 YEP_PUBLIC_SYMBOL
enum YepStatus YEPABI yepLibrary_GetCpuDataCacheSize(
Yep32u level,
Yep32u *cacheSize);
411 YEP_PUBLIC_SYMBOL
enum YepStatus YEPABI yepLibrary_GetCpuInstructionCacheSize(
Yep32u level,
Yep32u *cacheSize);
412 YEP_PUBLIC_SYMBOL
enum YepStatus YEPABI yepLibrary_GetLogicalCoresCount(
Yep32u *logicalCoresCount);
585 #define YEP_ENUMERATION_ISA_FEATURE_FOR_ARCHITECTURE(architecture) (256 + (architecture))
586 #define YEP_ENUMERATION_SIMD_FEATURE_FOR_ARCHITECTURE(architecture) (512 + (architecture))
587 #define YEP_ENUMERATION_SYSTEM_FEATURE_FOR_ARCHITECTURE(architecture) (768 + (architecture))
662 const Yep64u YepIsaFeaturesDefault = 0x0000000000000000ull;
663 const Yep64u YepSimdFeaturesDefault = 0x0000000000000000ull;
664 const Yep64u YepSystemFeaturesDefault = 0x0000000000000000ull;
666 #define YepIsaFeaturesDefault 0x0000000000000000ull
667 #define YepSimdFeaturesDefault 0x0000000000000000ull
668 #define YepSystemFeaturesDefault 0x0000000000000000ull
685 #define YepSystemFeatureCycleCounter 0x0000000000000001ull
688 #define YepSystemFeatureCycleCounter64Bit 0x0000000000000002ull
691 #define YepSystemFeatureAddressSpace64Bit 0x0000000000000004ull
694 #define YepSystemFeatureGPRegisters64Bit 0x0000000000000008ull
697 #define YepSystemFeatureMisalignedAccess 0x0000000000000010ull
700 #define YepSystemFeatureSingleThreaded 0x0000000000000020ull
749 #define YepX86IsaFeatureFPU 0x0000000000000001ull
752 #define YepX86IsaFeatureCpuid 0x0000000000000002ull
755 #define YepX86IsaFeatureRdtsc 0x0000000000000004ull
758 #define YepX86IsaFeatureCMOV 0x0000000000000008ull
761 #define YepX86IsaFeatureSYSENTER 0x0000000000000010ull
764 #define YepX86IsaFeatureSYSCALL 0x0000000000000020ull
767 #define YepX86IsaFeatureMSR 0x0000000000000040ull
770 #define YepX86IsaFeatureClflush 0x0000000000000080ull
773 #define YepX86IsaFeatureMONITOR 0x0000000000000100ull
776 #define YepX86IsaFeatureFXSAVE 0x0000000000000200ull
779 #define YepX86IsaFeatureXSAVE 0x0000000000000400ull
782 #define YepX86IsaFeatureCmpxchg8b 0x0000000000000800ull
785 #define YepX86IsaFeatureCmpxchg16b 0x0000000000001000ull
788 #define YepX86IsaFeatureX64 0x0000000000002000ull
791 #define YepX86IsaFeatureLahfSahf64 0x0000000000004000ull
794 #define YepX86IsaFeatureFsGsBase 0x0000000000008000ull
797 #define YepX86IsaFeatureMovbe 0x0000000000010000ull
800 #define YepX86IsaFeaturePopcnt 0x0000000000020000ull
803 #define YepX86IsaFeatureLzcnt 0x0000000000040000ull
806 #define YepX86IsaFeatureBMI 0x0000000000080000ull
809 #define YepX86IsaFeatureBMI2 0x0000000000100000ull
812 #define YepX86IsaFeatureTBM 0x0000000000200000ull
815 #define YepX86IsaFeatureRdrand 0x0000000000400000ull
818 #define YepX86IsaFeatureACE 0x0000000000800000ull
821 #define YepX86IsaFeatureACE2 0x0000000001000000ull
824 #define YepX86IsaFeatureRNG 0x0000000002000000ull
827 #define YepX86IsaFeaturePHE 0x0000000004000000ull
830 #define YepX86IsaFeaturePMM 0x0000000008000000ull
833 #define YepX86IsaFeatureAES 0x0000000010000000ull
836 #define YepX86IsaFeaturePclmulqdq 0x0000000020000000ull
839 #define YepX86IsaFeatureRdtscp 0x0000000040000000ull
842 #define YepX86IsaFeatureLWP 0x0000000080000000ull
845 #define YepX86IsaFeatureHLE 0x0000000100000000ull
848 #define YepX86IsaFeatureRTM 0x0000000200000000ull
851 #define YepX86IsaFeatureXtest 0x0000000400000000ull
854 #define YepX86IsaFeatureRdseed 0x0000000800000000ull
857 #define YepX86IsaFeatureADX 0x0000001000000000ull
892 #define YepX86SimdFeatureMMX 0x0000000000000001ull
896 #define YepX86SimdFeatureMMXPlus 0x0000000000000002ull
899 #define YepX86SimdFeatureEMMX 0x0000000000000004ull
903 #define YepX86SimdFeature3dnow 0x0000000000000008ull
907 #define YepX86SimdFeature3dnowPlus 0x0000000000000010ull
910 #define YepX86SimdFeature3dnowPrefetch 0x0000000000000020ull
913 #define YepX86SimdFeature3dnowGeode 0x0000000000000040ull
917 #define YepX86SimdFeatureSSE 0x0000000000000080ull
921 #define YepX86SimdFeatureSSE2 0x0000000000000100ull
925 #define YepX86SimdFeatureSSE3 0x0000000000000200ull
929 #define YepX86SimdFeatureSSSE3 0x0000000000000400ull
933 #define YepX86SimdFeatureSSE4_1 0x0000000000000800ull
937 #define YepX86SimdFeatureSSE4_2 0x0000000000001000ull
941 #define YepX86SimdFeatureSSE4A 0x0000000000002000ull
945 #define YepX86SimdFeatureAVX 0x0000000000004000ull
949 #define YepX86SimdFeatureAVX2 0x0000000000008000ull
953 #define YepX86SimdFeatureXOP 0x0000000000010000ull
957 #define YepX86SimdFeatureF16C 0x0000000000020000ull
961 #define YepX86SimdFeatureFMA3 0x0000000000040000ull
965 #define YepX86SimdFeatureFMA4 0x0000000000080000ull
968 #define YepX86SimdFeatureKNF 0x0000000000100000ull
972 #define YepX86SimdFeatureKNC 0x0000000000200000ull
994 #define YepX86SystemFeatureFPU 0x0000000100000000ull
997 #define YepX86SystemFeatureSSE 0x0000000200000000ull
1000 #define YepX86SystemFeatureAVX 0x0000000400000000ull
1003 #define YepX86SystemFeatureMisalignedSSE 0x0000000800000000ull
1006 #define YepX86SystemFeatureACE 0x0000001000000000ull
1009 #define YepX86SystemFeatureACE2 0x0000002000000000ull
1012 #define YepX86SystemFeatureRNG 0x0000004000000000ull
1015 #define YepX86SystemFeaturePHE 0x0000008000000000ull
1018 #define YepX86SystemFeaturePMM 0x0000010000000000ull
1021 #define YepX86SystemFeatureMIC 0x0000020000000000ull
1037 #define YepIA64IsaFeatureBrl 0x0000000000000001ull
1040 #define YepIA64IsaFeatureAtomic128 0x0000000000000002ull
1043 #define YepIA64IsaFeatureClz 0x0000000000000004ull
1046 #define YepIA64IsaFeatureMpy4 0x0000000000000008ull
1078 #define YepARMIsaFeatureV4 0x0000000000000001ull
1081 #define YepARMIsaFeatureV5 0x0000000000000002ull
1084 #define YepARMIsaFeatureV5E 0x0000000000000004ull
1087 #define YepARMIsaFeatureV6 0x0000000000000008ull
1090 #define YepARMIsaFeatureV6K 0x0000000000000010ull
1093 #define YepARMIsaFeatureV7 0x0000000000000020ull
1096 #define YepARMIsaFeatureV7MP 0x0000000000000040ull
1099 #define YepARMIsaFeatureThumb 0x0000000000000080ull
1102 #define YepARMIsaFeatureThumb2 0x0000000000000100ull
1105 #define YepARMIsaFeatureThumbEE 0x0000000000000200ull
1108 #define YepARMIsaFeatureJazelle 0x0000000000000400ull
1111 #define YepARMIsaFeatureFPA 0x0000000000000800ull
1114 #define YepARMIsaFeatureVFP 0x0000000000001000ull
1117 #define YepARMIsaFeatureVFP2 0x0000000000002000ull
1120 #define YepARMIsaFeatureVFP3 0x0000000000004000ull
1123 #define YepARMIsaFeatureVFPd32 0x0000000000008000ull
1126 #define YepARMIsaFeatureVFP3HP 0x0000000000010000ull
1129 #define YepARMIsaFeatureVFP4 0x0000000000020000ull
1132 #define YepARMIsaFeatureDiv 0x0000000000040000ull
1135 #define YepARMIsaFeatureArmada 0x0000000000080000ull
1153 #define YepARMSimdFeatureXScale 0x0000000000000001ull
1156 #define YepARMSimdFeatureWMMX 0x0000000000000002ull
1159 #define YepARMSimdFeatureWMMX2 0x0000000000000004ull
1162 #define YepARMSimdFeatureNEON 0x0000000000000008ull
1165 #define YepARMSimdFeatureNEONHP 0x0000000000000010ull
1168 #define YepARMSimdFeatureNEON2 0x0000000000000020ull
1181 #define YepARMSystemFeatureVFPVectorMode 0x0000000100000000ull
1199 #define YepMIPSIsaFeatureR2 0x0000000000000001ull
1203 #define YepMIPSIsaFeatureMicroMIPS 0x0000000000000002ull
1206 #define YepMIPSIsaFeatureFPU 0x0000000000000004ull
1209 #define YepMIPSIsaFeatureMT 0x0000000000000008ull
1212 #define YepMIPSIsaFeatureMIPS16 0x0000000000000010ull
1215 #define YepMIPSIsaFeatureSmartMIPS 0x0000000000000020ull
1234 #define YepMIPSSimdFeatureMDMX 0x0000000000000001ull
1237 #define YepMIPSSimdFeatureMIPS3D 0x0000000000000002ull
1240 #define YepMIPSSimdFeaturePairedSingle 0x0000000000000004ull
1243 #define YepMIPSSimdFeatureDSP 0x0000000000000008ull
1246 #define YepMIPSSimdFeatureDSP2 0x0000000000000010ull
1250 #define YepMIPSSimdFeatureGodsonMMX 0x0000000000000020ull
1253 #define YepMIPSSimdFeatureIMX 0x0000000000000040ull