-
Notifications
You must be signed in to change notification settings - Fork 296
Add most single-register load Arm intrinsics. #941
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 most single-register load Arm intrinsics. #941
Conversation
r? @Amanieu (rust_highfive has picked a reviewer for you, use r? to override) |
b011541
to
793f0aa
Compare
☔ The latest upstream changes (presumably 818fd4a) made this pull request unmergeable. Please resolve the merge conflicts. Note that reviewers usually do not review pull requests until merge conflicts are resolved! Once you resolve the conflicts, you should change the labels applied by bors to indicate that your PR is ready for review. Post this as a comment to change the labels:
|
mem::{transmute, zeroed}, | ||
}; | ||
#[cfg(test)] | ||
use stdarch_test::assert_instr; | ||
|
||
pub type p64 = u64; | ||
pub type p128 = u128; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
These types should be private.
pub struct poly128_t(i128); // FIXME: check this! | ||
pub struct poly64x2_t(p64, p64); // FIXME: check this! | ||
/// ARM-specific 128-bit wide vector of one packed `p128`. | ||
pub struct poly128_t(p128); // FIXME: check this! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
These types should also be available on ARM: they are used by the crypto extension which is supported on ARMv8 in both 32-bit and 64-bit modes.
This PR adds all single-register load Arm intrinsics, with the exception of those for
f16
(blocked by #344), and those (few) which are Aarch64-only. There are 72 new intrinsics in all.