-
Notifications
You must be signed in to change notification settings - Fork 278
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
Add 64 bit integer AVX512f comparisons and the intrinsics needed to test them #856
Conversation
Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @gnzlbg (or someone else) soon. If any changes to this PR are deemed necessary, please add them as extra commits. This ensures that the reviewer can see what has changed since they last reviewed the code. Due to the way GitHub handles out-of-date commits, this should also make it reasonably obvious what issues have or haven't been addressed. Large or tricky changes may require several passes of review and changes. Please see the contribution instructions for more information. |
The CI errors appear to be unrelated at this point. I put |
We should probably change Otherwise the changes look good. Are you planning on adding other comparison intrinsics in this PR or in a separate one? |
I fixed the CI failures in #857, please rebase. |
Merged an updated master and the newest CI run shows a real issue. As far as I can tell, I think I'll add the various 64 bit |
|
Using the instruction prefix did indeed work. I've added all of the 64 bit mask/no mask x signed /unsigned x lt/gt/eq intrinsics. That seems like a good stopping point for this PR. A couple of general questions: How long does it usually take for intrinsics to get into a nightly after a PR is merged? Perhaps more loaded, is there an estimate on when some AVX512 intrinsics would be available on stable Rust? |
You will need to submit a PR to rust-lang/rust which updates the stdarch submodule. It will then be in the next nightly.
I would expect all of the intrinsics for a particular subset of AVX512 (eg. AVX512F, AVX512BW) before that subset can be stabilized. |
Thanks! |
This may not be the place to have this discussion, but given the sheer number of instrinsics in AVX512f, it would be nice if it weren't necessary to implement all of them. |
This PR adds the 64 bit AVX512f integer comparison intrinsics along with set/set1 to make it usable.
Issue: #310