-
Notifications
You must be signed in to change notification settings - Fork 1.6k
cranelift-assembler-x64: no_std support #12235
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
cranelift-assembler-x64: no_std support #12235
Conversation
5f1c040 to
0502ab1
Compare
|
I guess the CI is running cargo test with all features, should I change core feature to std, or can you help me fix the CI? |
Co-authored-by: bjorn3 <[email protected]>
Co-authored-by: bjorn3 <[email protected]>
Co-authored-by: bjorn3 <[email protected]>
alexcrichton
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for this!
|
@alexcrichton Thank you too! This is almost everything needed for #12222. I still am not sure if the way I deal with OnceLock is good enough to be merged (because it just recomputes MachineEnv each time). And some architectures use |
|
Want to rebase that PR after the recent merges and we can brainstorm over there? Should in theory be a bit easier to think about with a smaller diff |
|
@alexcrichton I have already rebased it, a lot of it is are one line changes like adding prelude, fixing hashmap import (also FxHashMap on no_std now works). Really the only thing is OnceLock. I removed it, but now it's recomputed each time. I can try to find a no_std replacement or move some stuff around in order to use sync_nostd.rs like suggested in the old PR. Also I accidentally formated Cargo.toml, so maybe I should revert it |
Part of #12222, slightly refactored. Related to #1158.
Adds support for no_std compilation of cranelift-assmebler-x64. Required for cranelift-codegen to support no_std compilation.