-
Notifications
You must be signed in to change notification settings - Fork 12.9k
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
rustc 1.71.1 fails to build for big-endian aarch64 #114846
Comments
This was fixed in the nightly release over a month ago (rust-lang/portable-simd#348). AFAIK, no backport to 1.71 has been done though, as only tier 3 targets are affected. |
Thanks for the pointer, it's much appreciated. |
Yeah tier 3 targets have no guarantee to build, but of course fixes are always welcome. If you use a tier 3 target and want to use stable releases without manual patching, I'd recommend regularly checking latest nightly (every 2-3 weeks to have time for fixes to get in) and optimally also beta, every time a new beta is branched off. You can also use pinned nightlies, then fixes will be available immediately . Given that 1.72 will be released in a week, I don't think a backport will be done for 1.71 (edit: also not sure if the backport policy includes tier 3 fixes for stable, for beta there have been backports in the past). It might make sense to verify that 1.72 compiles. For that, you can try the beta compiler. |
Thanks for the pointer, it's much appreciated. |
rustc 1.71.1 fails to build for big-endian aarch64, such as e.g.
aarch64_be-unknown-netbsd
.The reason may be universal reliance on the
neon
feature for aarch64, while I think that isnot available in big-endian mode.
I expected to see this happen: The (cross)build ought to succeed.
Instead, this happened: The build errors out with
Meta
The implementation in
library/stdarch/crates/core_arch/src/aarch64/neon/mod.rs
appears to only definethese if the target endian-ness is little-endian, ref.
This is seen when cross-building from NetBSD/amd64, using the following rustc version:
rustc --version --verbose
:The last successful cross-build for this target was with 1.70.0, so this is
a new problem which arrived together with 1.71.0.
I suspect this problem occurs for all big-endian aarch64 targets, the other ones being
aarch64_be-unknown-linux-gnu
andaarch64_be-unknown-linux-gnu_ilp32
.The text was updated successfully, but these errors were encountered: