Skip to content
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

AArch64 objc_msgSend: Fix argument corruption due to invalid stack pointer offset #266

Merged
merged 2 commits into from
Jan 4, 2024

Conversation

hmelder
Copy link
Collaborator

@hmelder hmelder commented Jan 4, 2024

Fixes #265

We can run the tests with -Xclang -fobjc-dispatch-method=non-legacy, but we would need to check for fast-path support in the CMake configuration first.

@hmelder hmelder changed the title Aarch64 objc_msgSend: Fix argument corruption due to invalid stack pointer offset AArch64 objc_msgSend: Fix argument corruption due to invalid stack pointer offset Jan 4, 2024
@hmelder hmelder merged commit 5cf2b73 into master Jan 4, 2024
47 checks passed
@hmelder hmelder deleted the aarch64-fix branch January 4, 2024 08:38
@triplef
Copy link
Member

triplef commented Jan 5, 2024

What does using -fobjc-runtime=gnustep-2.2 instead of 2.0 do in Clang? Is that something that we should update in other projects using the runtime as well?

@davidchisnall
Copy link
Member

davidchisnall commented Jan 5, 2024

What does using -fobjc-runtime=gnustep-2.2 instead of 2.0 do in Clang? Is that something that we should update in other projects using the runtime as well?

In the released versions of clang, nothing. In the next release, it will enable the fast-path dispatch for RV64. The recent clang fix also enabled it for other architectures in the correct library versions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

Wrong stack pointer offset in objc_msgSend.aarch64.S leads to register corruption
3 participants