-
Notifications
You must be signed in to change notification settings - Fork 13.3k
[ARM] LLVM: Unknown addressing mode for CP reference! UNREACHABLE executed at ARMConstantIslandPass.cpp:755 #41672
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
Comments
Can you report this bug at bugs.llvm.org? |
@arielb1 haven't reproduced it with ToT LLVM yet (I don't have a build handy). Do you? |
I have a "somewhere between 4 and 5" LLVM and it compiles with it. |
Looking around, this looks like https://bugs.llvm.org/show_bug.cgi?id=31997 which is fixed on trunk. |
Can someone cherry-pick r295964 into rustc's LLVM? |
You can do it yourself - open a PR against https://github.com./rust-lang/llvm |
See rust-lang/llvm#76. |
To reproduce in a real-world example, follow these instructions. Note that the bug is somewhat finicky: it's not exhibited in debug builds, and it's not exhibited also until main crosses a certain threshold size (might be related to inliner, not sure). It also does not crash (or AFAICT miscompile) on non-Asserts LLVM builds, so beware.
Reduced example, crashing LLVM from the current nightly:
Backtrace:
MC dump:
This is actually quite baffling because there's a case for
ARM::t2LDRBpci
in the crashing switch. Not sure what's up.The text was updated successfully, but these errors were encountered: