-
Notifications
You must be signed in to change notification settings - Fork 12.8k
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
64 bit shift is broken in nightly build for MIPS #116177
Comments
This is probably related to llvm/llvm-project#64794. |
WG-prioritization assigning priority (Zulip discussion). @rustbot label -I-prioritize +P-medium |
This can be provoked on mips64 as well: use std::hint::black_box;
const SHIFTVALUE: i128 = u64::MAX as i128;
fn main() {
fn shiftleft(a: i128, b: i128) -> i128 {
a << b
}
assert_eq!(
shiftleft(black_box(SHIFTVALUE), black_box(2)),
SHIFTVALUE << 2
);
} |
Is this what's causing these build failures when upgrading from 1.72.0 to 1.73.0? Just checking before I open a new bug.
I get a bunch of these on slightly different floating-point values on mips64. |
Floats are hell, and also this landed with 1.73: #113843 A new issue is a good idea. |
Yeah I've also been getting lots of different floating point related issues on 1.73 on MIPS. I too would've thought they are related to the shifts, but the new apfloat code could also be the reason. |
I applied the patch from llvm/llvm-project#64794 (comment) and confirmed that it fixes the 1.73.0 bootstrap problem for me. I also tried the snippet from @saethlin 's comment above and it did not assert after applying that patch. |
It happened with |
Update to LLVM 17.0.5 Fixes rust-lang#116177. Fixes the compile-time issue reported at https://internals.rust-lang.org/t/significant-increase-in-fat-lto-time-post-update-to-rustc-1-75-0-nightly/19765. r? `@cuviper`
Update to LLVM 17.0.5 Fixes rust-lang/rust#116177. Fixes the compile-time issue reported at https://internals.rust-lang.org/t/significant-increase-in-fat-lto-time-post-update-to-rustc-1-75-0-nightly/19765. r? `@cuviper`
Update to LLVM 17.0.5 Fixes rust-lang/rust#116177. Fixes the compile-time issue reported at https://internals.rust-lang.org/t/significant-increase-in-fat-lto-time-post-update-to-rustc-1-75-0-nightly/19765. r? `@cuviper`
I tried this code:
Nightly fails running on MIPS emulator
assertion
left == right
failedleft: 35705032704
right: 40000000000
Stable succeeds
Looks like the top and bottom dwords are mixed up
target is mips-unknown-linux-musl
emulator is qemu-mips-static
The text was updated successfully, but these errors were encountered: