-
Notifications
You must be signed in to change notification settings - Fork 13.1k
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
u128::count_ones is broken on aarch64-unknown-none-softfloat #80374
Comments
From the backtrace in rust-lang/compiler-builtins#398 (comment), this appears to be a LLVM issue? |
IR test case (still reproduces on LLVM master):
|
The problem is that https://github.com/llvm/llvm-project/blob/b21840751278128ef6942074ae89ea63c9c6ac58/llvm/lib/Target/AArch64/AArch64ISelLowering.cpp#L15907-L15909 does not check whether the LowerCTPOP() call is successful and pushes an empty SDValue as the result. |
I was able to remove the reference to |
I've put up https://reviews.llvm.org/D93825. |
This should be fixed on nightly, as a result of the LLVM 12 upgrade. |
Can this be closed? Should one revert rust-lang/compiler-builtins#399 to make sure the bug is fixed? |
We don't have to revert anything, |
Closing this as the upstream issue is fixed and we have long since updated to LLVM 12. |
when compiled with
cargo build --target aarch64-unknown-none-softfloat
it gives:This is preventing upgrading the
compiler-builtins
used by rustc. See rust-lang/compiler-builtins#398 and #79863.The text was updated successfully, but these errors were encountered: