-
Notifications
You must be signed in to change notification settings - Fork 292
Add more addition Arm intrinsics #939
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 more addition Arm intrinsics #939
Conversation
r? @Amanieu (rust_highfive has picked a reviewer for you, use r? to override) |
The (overall) GitHub diff has become very messed up for some reason -- it makes it look like there are many more lines changed than there actually are, with large sections re-written. If you look at each commit individually you can see that in reality there are very few lines deleted: Which is to say it's probably best to review this commit-by-commit :) |
☔ 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:
|
This PR adds the following groups of addition Arm intrinsics (72 in total):
vaddl_high_[s/u][8/16/32]
- Signed/Unsigned Add Long (vector, high half)vaddw_[s/u][8/16/32]
- Signed/Unsigned Add Widevaddw_high_[s/u][8/16/32]
- Signed/Unsigned Add Wide (high half)vuqadd[q]_s[8/16/32/64]
- Signed saturating Accumulate of Unsigned value - Aarch64 onlyvsqadd[q]_u[8/16/32/64]
- Unsigned saturating Accumulate of Signed value - Aarch64 onlyvaddhn_[s/u][16/32/64]
- Add returning High Narrowvaddhn_high_[s/u][16/32/64]
- Add returning High Narrow (high half)vraddhn_[s/u][16/32/64]
- Rounding Add returning High Narrowvraddhn_high_[s/u][16/32/64]
- Rounding Add returning High Narrow (high half)vpaddl[q]_s[8/16/32]
- Signed Add Long Pairwisevpaddl[q]_u[8/16/32]
- Unsigned Add Long Pairwisevpadal[q]_s[8/16/32]
- Signed Add and Accumulate Long Pairwise - Code-gen on Arm vs Aarch64 is different.vpadal[q]_u[8/16/32]
- Unsigned Add and Accumulate Long Pairwise - Code-gen on Arm vs Aarch64 is different.