-
Notifications
You must be signed in to change notification settings - Fork 18
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
naked_asm: add cfi_startproc/cfi_endproc to all platforms #42
Conversation
8dc3d9d
to
7e0d1ee
Compare
The failure in riscv64gc is unrelated to this patch, since that file is not changed. I haven't managed to get it to fail in my local build yet. |
7e0d1ee
to
385687b
Compare
Oh interesting, it only breaks in |
This is failing due to rust-lang/rust#80608 |
385687b
to
f8aa6bf
Compare
I've worked around it by manually adding the |
src/unwinder/arch/riscv32.rs
Outdated
.option push // Work around Rust issue #80608 | ||
.option arch, +d // Work around Rust issue #80608 |
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.
I think this isn't necessary, this is only used in normal asm which doesn't have the global_asm/naked_asm bug.
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.
It does seem that way. Let me remove that (and in riscv64) and see if it passes.
f8aa6bf
to
c6f2860
Compare
c6f2860
to
4b6f428
Compare
Since 2024-12-12 the Rust compiler now requires all naked ASM functions to include `.cfi_startproc` and `.cfi_endproc`. Without these directives, the build will fail. Add these directives to all supported platforms. This also works around rust-lang/rust#80608 by forcing LLVM to consider that code with the "d" extension has an FPU. Signed-off-by: Sean Cross <[email protected]>
4b6f428
to
8f3beee
Compare
Thank you! |
Thanks for merging! Would it be possible to bump the version number and release a new version so I can unbreak the nightly builds for riscv32imac-unknown-xous-elf? |
A new version should have already been published. |
Thank you, I see that now. |
Since 2024-12-12 the Rust compiler now requires all naked ASM functions to include
.cfi_startproc
and.cfi_endproc
. Without these directives, the build will fail.The x86_64 target already had these directives, so it was unaffected by this change.
Add these directives to all other supported platforms.
This closes #41.