@@ -37,6 +37,7 @@ namespace CPUID {
3737 {Feature::SSE3," SSE3" },
3838 {Feature::SSSE3," SSSE3" },
3939 {Feature::RDRAND," RDRAND" },
40+ {Feature::RDSEED," RDSEED" },
4041 {Feature::XSAVE," XSAVE" },
4142 {Feature::FXSR," FXSR" },
4243 {Feature::AES," AES" },
@@ -207,10 +208,12 @@ namespace
207208
208209 case Feature::SVM: return FeatureInfo { 0x80000001 , 0 , Register::ECX, 1u << 2 }; // Secure Virtual Machine (AMD-V)
209210 case Feature::SSE4A: return FeatureInfo { 0x80000001 , 0 , Register::ECX, 1u << 6 }; // SSE4a
211+ // Standard function 7
210212 case Feature::AVX2: return FeatureInfo { 7 , 0 , Register::ECX, 1u << 5 }; // AVX2
211213 case Feature::BMI1: return FeatureInfo { 7 , 0 , Register::ECX, 1u << 3 }; // BMI1
212214 case Feature::BMI2: return FeatureInfo { 7 , 0 , Register::ECX, 1u << 8 }; // BMI2
213215 case Feature::LZCNT: return FeatureInfo { 7 , 0 , Register::ECX, 1u << 5 }; // LZCNT
216+ case Feature::RDSEED: return FeatureInfo { 7 , 0 , Register::EBX, 1u << 18 }; // RDSEED
214217 default : throw std::out_of_range (" Unimplemented CPU feature encountered" );
215218 }
216219 }
0 commit comments