posix-arm64: fix native Apple Silicon crash#26
Open
m0spak wants to merge 1 commit into9fans:mainfrom
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR adds a minimal native Apple Silicon fix for classic 9fans/drawterm.
It keeps the classic codebase and auth behaviour, but updates the arm64 machdep path to avoid the runtime crash seen on macOS Apple Silicon.
Changes
posix-arm64/posix-arm64/getcallerpc.cwith a built-in based implementationposix-arm64/tas.cwith a compiler-provided atomic implementationWhy
The existing arm64 work in earlier PRs does not appear to be merged upstream, and native Apple Silicon builds can fail at runtime.
This change keeps the fix small and focused on the arm64 machdep layer needed for
CONF=osx-x11.Tested
Tested on Apple M4 Pro, macOS Sequoia 15.7.5 (24G624), using
CONF=osx-x11 X11=/opt/X11.Verified that the resulting binary is native
arm64, launches successfully, and connects to a current 9legacy cpu/auth server.Notes
This is a fresh PR instead of updating #9 because I wanted a small branch based on current
main.