Merge pull request #9138 from JacobBarthelmeh/sgx

update for SGX CPU ID to follow atomics refactor
This commit is contained in:
David Garske
2025-09-09 12:18:51 -07:00
committed by GitHub
2 changed files with 19 additions and 10 deletions

View File

@@ -41,17 +41,21 @@
*/
void cpuid_set_flags(void)
{
if (!cpuid_check) {
cpuid_flags |= CPUID_AVX1;
cpuid_flags |= CPUID_AVX2;
cpuid_flags |= CPUID_BMI2;
cpuid_flags |= CPUID_RDSEED;
cpuid_flags |= CPUID_AESNI;
cpuid_flags |= CPUID_ADX;
cpuid_flags |= CPUID_MOVBE;
cpuid_flags |= CPUID_BMI1;
if (WOLFSSL_ATOMIC_LOAD(cpuid_flags) == WC_CPUID_INITIALIZER) {
cpuid_flags_t new_cpuid_flags = 0,
old_cpuid_flags = WC_CPUID_INITIALIZER;
cpuid_check = 1;
new_cpuid_flags |= CPUID_AVX1;
new_cpuid_flags |= CPUID_AVX2;
new_cpuid_flags |= CPUID_BMI2;
new_cpuid_flags |= CPUID_RDSEED;
new_cpuid_flags |= CPUID_AESNI;
new_cpuid_flags |= CPUID_ADX;
new_cpuid_flags |= CPUID_MOVBE;
new_cpuid_flags |= CPUID_BMI1;
(void)wolfSSL_Atomic_Uint_CompareExchange
(&cpuid_flags, &old_cpuid_flags, new_cpuid_flags);
}
}