-
Notifications
You must be signed in to change notification settings - Fork 155
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
Support Linker Plugin to inline ASM #139
Comments
Also CC @rust-embedded/cortex-m |
As a note, I think this would entail the following steps:
|
Follow up: I don't think this could be done without a new feature/breaking change. The pre-generated static archives would include LLVM bitcode, which would likely work with any version of rust based on LLVM7 or LLVM8 (I'm not sure if this includes Rust 1.32, which I think is our current MSRV), but this would almost certainly break any projects still using EDIT: Rust 1.32.0 release is based on LLVM8. I'd suggest that we make this an opt-in feature, and ship both sets of static archives for now. |
Update LLVM: apply patch necessary for ThinLTO on RISC-V This patch allows [using inlined assembly operations](rust-embedded/cortex-m#139) on stable Rust with the help of ThinLTO.
Good news: binary archives compiled with bitcode object files work "as is" in our usual build scenario (without ThinLTO and even LTO). I suggest adding an unstable |
See https://github.com/Disasm/inline-test and https://doc.rust-lang.org/nightly/rustc/linker-plugin-lto.html
This should be stable shortly in Rust 1.34.0
CC @Disasm and @pftbest
The text was updated successfully, but these errors were encountered: