-
Notifications
You must be signed in to change notification settings - Fork 13.5k
Fix passing/returning structs with the 64-bit SPARC ABI #142680
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
base: master
Are you sure you want to change the base?
Conversation
|
r? @bjorn3 |
Note that there are currently two places that Clang and GCC disagree AFAIK:
|
Thank you for doing this! My knowledge in this area is rather limited. I was able to build latest Rust sources with your fix on top on Solaris 11.4 SPARC. Then I used this version to build Firefox on Solaris. There was no problem. Firefox also worked as expected. I also tested some problematic cases which I was handling few years ago (https://github.com/psumbera/rust-sparc64-abi-tests). All seemed to be ok. |
I don't have time to properly review this right now. r? compiler |
☔ The latest upstream changes (presumably #143521) made this pull request unmergeable. Please resolve the merge conflicts. |
4eb3ce5
to
9e4a7bc
Compare
Rebased |
Fixes the 64-bit SPARC part of #115609 by replacing the current implementation with a new implementation modelled on the RISC-V calling convention code (SPARC ABI reference).
Pinging
sparcv9-sun-solaris
target maintainers: @psumbera @kulikjakFixes #115336
Fixes #115399
Fixes #122620
r? @workingjubilee