-
Notifications
You must be signed in to change notification settings - Fork 289
Implement missing AVX512 intrinsics #1600
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
☔ The latest upstream changes (presumably 5ccd76c) made this pull request unmergeable. Please resolve the merge conflicts. |
☔ The latest upstream changes (presumably 165996e) made this pull request unmergeable. Please resolve the merge conflicts. |
I've opened up #1602 to finish AVX512BW. |
So I am starting the |
99eb11f
to
c171c7c
Compare
They should use a platform-specific address management.
Modified stdarch-test to accept VEX versions
bcf81e8
to
36bc1ad
Compare
These cannot be linked with LLVM because of the lack of `bfloat16` and `i1` types in Rust. So, inline asm was the only way
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR, along with #1602, completes the AVX512 intrinsics.
AVX512F
AVX512_BF16
VEX
variantsAVX-VNNI
AVX-VNNI-INT8
AVX-NE-CONVERT
AVX-IFMA
AVX-VNNI-INT16
This introduces a new
bf16
type incore_arch::x86
. This is gated bystdarch_x86_avx512_bf16
(rust-lang/rust#127356) and is used by 4 intrinsics inavx512bf16
andavxneconvert
Some intrinsics in
avxneconvert
couldn't be implemented due to nof16
Some intrinsics use inline asm due to lack of
i1
andbfloat16
type in Rust