-
Notifications
You must be signed in to change notification settings - Fork 448
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
Implement Support For Building core
Component And Executing Hello World On ARM64
#1450
Draft
CuriousTommy
wants to merge
30
commits into
master
Choose a base branch
from
feature/arm-support
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains 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
CuriousTommy
changed the title
Implement Support For Building
Implement Support For Building Oct 31, 2023
core
Components And Executing Hello World On ARM64 core
Component And Executing Hello World On ARM64
CuriousTommy
force-pushed
the
feature/arm-support
branch
from
November 6, 2023 22:41
afb720e
to
ea85f89
Compare
CuriousTommy
force-pushed
the
feature/arm-support
branch
from
December 14, 2023 16:48
ea85f89
to
b8cb7b3
Compare
bugaevc
reviewed
Jan 12, 2024
CuriousTommy
force-pushed
the
feature/arm-support
branch
from
January 22, 2024 04:54
a9227ab
to
3211002
Compare
CuriousTommy
force-pushed
the
feature/arm-support
branch
from
May 20, 2024 21:58
322323d
to
74d346b
Compare
`cpuid.h` is a x86 specific file. Including it on a arm64 device will cause a compile failure.
It turns out that "omp-tools.h" is not a good option.
It really sucks that Apple no longer open sources `libm`... I'm not sure if we should replace `libm` with another macOS friendly math library, or try to implement the math stubs...
…tation Is Missing For Arch
I didn't really like the idea of having a bunch of `#ifdefs`, so I decided to implement stub methods for "load" And "setup_stack" that abort if they are called (when they shouldn't be called).
Co-authored-by: Sergey Bugaev <[email protected]>
Co-authored-by: Sergey Bugaev <[email protected]>
It turns out that Linux relies on TPIDR_EL0, so we can't use that register to store the TPIDRRO_EL0. Instead, we will have a variable in mdlr that represents TPIDRRO_EL0.
CuriousTommy
force-pushed
the
feature/arm-support
branch
from
June 13, 2024 19:55
d34195b
to
524fd54
Compare
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.
Depending how many commits are needed, I might consider splitting this PR into multiple PRs.
Goal
The main goal is to make sure that Darling is able to build on a ARM64 Linux and can execute a simple hello_world executable.
Additional Goals
NSInvocation
.Tasks
abort
or__builtin_trap()
)Known Issues
TODO
Additional PRs