96#if defined(BOTAN_TARGET_CPU_IS_X86_FAMILY)
100 CPUID_SSE2_BIT = (1ULL << 0),
101 CPUID_SSSE3_BIT = (1ULL << 1),
102 CPUID_SSE41_BIT = (1ULL << 2),
103 CPUID_SSE42_BIT = (1ULL << 3),
104 CPUID_AVX2_BIT = (1ULL << 4),
105 CPUID_AVX512F_BIT = (1ULL << 5),
107 CPUID_AVX512DQ_BIT = (1ULL << 6),
108 CPUID_AVX512BW_BIT = (1ULL << 7),
111 CPUID_AVX512_ICL_BIT = (1ULL << 11),
114 CPUID_AESNI_BIT = (1ULL << 16),
115 CPUID_CLMUL_BIT = (1ULL << 17),
116 CPUID_RDRAND_BIT = (1ULL << 18),
117 CPUID_RDSEED_BIT = (1ULL << 19),
118 CPUID_SHA_BIT = (1ULL << 20),
119 CPUID_AVX512_AES_BIT = (1ULL << 21),
120 CPUID_AVX512_CLMUL_BIT = (1ULL << 22),
123 CPUID_RDTSC_BIT = (1ULL << 48),
124 CPUID_ADX_BIT = (1ULL << 49),
125 CPUID_BMI1_BIT = (1ULL << 50),
126 CPUID_BMI2_BIT = (1ULL << 51),
129#if defined(BOTAN_TARGET_CPU_IS_PPC_FAMILY)
130 CPUID_ALTIVEC_BIT = (1ULL << 0),
131 CPUID_POWER_CRYPTO_BIT = (1ULL << 1),
132 CPUID_DARN_BIT = (1ULL << 2),
135#
if defined(BOTAN_TARGET_CPU_IS_ARM_FAMILY)
136 CPUID_ARM_NEON_BIT = (1ULL << 0),
137 CPUID_ARM_SVE_BIT = (1ULL << 1),
138 CPUID_ARM_AES_BIT = (1ULL << 16),
139 CPUID_ARM_PMULL_BIT = (1ULL << 17),
140 CPUID_ARM_SHA1_BIT = (1ULL << 18),
141 CPUID_ARM_SHA2_BIT = (1ULL << 19),
142 CPUID_ARM_SHA3_BIT = (1ULL << 20),
143 CPUID_ARM_SHA2_512_BIT = (1ULL << 21),
144 CPUID_ARM_SM3_BIT = (1ULL << 22),
145 CPUID_ARM_SM4_BIT = (1ULL << 23),
148 CPUID_INITIALIZED_BIT = (1ULL << 63)