@@ -624,10 +624,20 @@ + (bool)supportsAVX2 { return x86_cpuid(0, 0).eax >= 7 && (x86_cpuid(7, 0).ebx & (1u << 5)); } + ++ (bool)supportsAESNI +{ + return (x86_cpuid(1, 0).ecx & (1u << 25)); +} + ++ (bool)supportsSHAExtensions +{ + return (x86_cpuid(7, 0).ebx & (1u << 29)); +} #endif #if defined(OF_POWERPC) || defined(OF_POWERPC64) + (bool)supportsAltiVec { @@ -647,12 +657,10 @@ uint32_t supportsAltiVec; if (NewGetSystemAttrs(&supportsAltiVec, sizeof(supportsAltiVec), SYSTEMINFOTYPE_PPC_ALTIVEC, TAG_DONE) > 0) return supportsAltiVec; - - return false; # endif return false; } #endif