-
Notifications
You must be signed in to change notification settings - Fork 100
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
ICE: Offset in NominalSPOffset is greater than 2GB; should hit impl limit first: TryFromIntError(())
#1434
Comments
Offset in NominalSPOffset is greater than 2GB; should hit impl limit first: TryFromIntError(())
This is a Cranelift bug. It should propagate the error out into cg_clif, which would then give a rustc diagnostic for this. Cranelift doesn't support stack frames larger than 2GB. (Neither does LLVM, but LLVM tends to silently miscompile instead) |
I can't reproduce this with the latest version in this repo. |
Seems to be fixed, indeed. |
Should be fixed on the next nightly then. |
@bjorn3 this is crashing again it seems. |
Regression in nightly-2024-02-11 ending github query because we found starting sha: d44e3b95cb9d410d89cb8ab3233906a33f43756a |
Is it panicking with the same message? |
Yeah, as if the original fix had been reverted or something :|
|
I can't reproduce this with #[repr(align(536870912))]
enum Aligned {
Zero = 0,
One = 1,
}
fn main() {
let aligned = Aligned::Zero;
assert_eq!(tou8(Aligned::Zero), 0);
}
fn tou8(al: Aligned) -> u8 {
al as u8
}
|
weird.
so the only diff I can spot right now is that I'm on Edit: the backtrace also goes through some x86 stuff |
Of course. Will test on x86 in a bit. |
On x86 cargo-bisect-rustc for me can't find any nightly for which it actually worked. Even manually checking a random nightly for which it should have worked (nightly-2023-12-31) it gives the same ICE. And with the latest version in this repo it fails too. Maybe I checked it on aarch64 back then too? |
auto-reduced (treereduce-rust):
original:
Version information
Command:
/home/matthias/.rustup/toolchains/master/bin/rustc -Zcodegen-backend=cranelift
Program output
The text was updated successfully, but these errors were encountered: