You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Support Intel IceLake ISAs through target_feature #67329
As there is quite a lot to support it has not been finished (nor stabilized) however: rust-lang/stdarch#310
So I believe it does not yet include the specifics of the AVX512 VAES extension you want, either.
I have looked into implementing this (for nightly at least over on rust-lang/stdarch) however it appears that support is blocked by the compiler not being willing to accept the VAES (and vaguely related VPCLMULQDQ) feature flags for enabling the relevant LLVM intrinsics. And I would be willing to make a PR for the compiler to add that flag, but I'm not sure if there's more to it than "just" adding the "vaes" string here and here. Though the feature seems to be supported in std::detect already though it is named avx512vaes there.
In #78361, a large amount of support for AVX512 features was added to the compiler, including all the ones (afaict) that IceLake included, resolving this issue for the Rust compiler, and many intrinsics have been added to std::arch since.
Activity
workingjubilee commentedon Sep 18, 2020
The reference is
outdatedonly concerned with stable here, there is partial AVX512 support in core::arch and the compiler on nightly, as can be seen here: https://doc.rust-lang.org/core/arch/x86_64/index.htmlAs there is quite a lot to support it has not been finished (nor stabilized) however: rust-lang/stdarch#310
So I believe it does not yet include the specifics of the AVX512 VAES extension you want, either.
DevJPM commentedon Oct 18, 2020
I have looked into implementing this (for nightly at least over on rust-lang/stdarch) however it appears that support is blocked by the compiler not being willing to accept the VAES (and vaguely related VPCLMULQDQ) feature flags for enabling the relevant LLVM intrinsics. And I would be willing to make a PR for the compiler to add that flag, but I'm not sure if there's more to it than "just" adding the "vaes" string here and here. Though the feature seems to be supported in
std::detectalready though it is namedavx512vaesthere.Rollup merge of rust-lang#78361 - DevJPM:master, r=workingjubilee
Rollup merge of rust-lang#78361 - DevJPM:master, r=workingjubilee
workingjubilee commentedon Apr 29, 2021
In #78361, a large amount of support for AVX512 features was added to the compiler, including all the ones (afaict) that IceLake included, resolving this issue for the Rust compiler, and many intrinsics have been added to
std::archsince.