-
Notifications
You must be signed in to change notification settings - Fork 107
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
Upgrade to LLVM 15, support Apple M1. #1264
Open
dan-zheng
wants to merge
8
commits into
main
Choose a base branch
from
llvm-15
base: main
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.
Open
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
dan-zheng
force-pushed
the
llvm-15
branch
20 times, most recently
from
April 5, 2023 13:14
9edb341
to
7cd1c47
Compare
dan-zheng
force-pushed
the
llvm-15
branch
9 times, most recently
from
April 12, 2023 07:24
aeee683
to
5a49aa5
Compare
dan-zheng
force-pushed
the
llvm-15
branch
11 times, most recently
from
April 12, 2023 19:18
6de7bf5
to
573bdfe
Compare
12 tasks
dan-zheng
force-pushed
the
llvm-15
branch
4 times, most recently
from
April 12, 2023 23:29
8a5c65f
to
5a0ee63
Compare
I believe this is ready for review now. @dougalm
Let me know if I should do anything else! |
- Upgrade to GHC 9.2.x. - Apple M1 support seems to be mostly mature starting in GHC 9.2.1: https://www.haskell.org/ghc/blog/20210309-apple-m1-story.html. - Upgrade to LLVM 15. - Use the same resolver in stack*.yaml files as llvm-hs:llvm-15 for consistency. `make` now works on Apple M1, albeit with compiler warnings, some of which seem significant.
Fix warnings, namely -Wstar-is-type. Many -Wincomplete-uni-patterns warnings are not yet fixed.
`diff` on macOS does not support the `--left-column` flag. Use `sdiff` (side-by-side diff) instead, which is part of diffutils.
dan-zheng
force-pushed
the
llvm-15
branch
2 times, most recently
from
May 19, 2023 21:23
6802485
to
e542739
Compare
Fix all warnings except `-Wincomplete-uni-patterns` and `-Wincomplete-record-updates`, which were newly added to `-Wall` (starting in GHC 9.2.1). https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0071-Wall-uni-patterns.rst
…d-updates`. These were newly added to `-Wall` starting GHC 9.2.1. https://ghc-proposals.readthedocs.io/en/latest/proposals/0071-Wall-uni-patterns.html
- Update `llvm.memcpy` and `llvm.memset` intrinsic name mangling to use `p0` instead of `p0i8` as the pointer type. - https://releases.llvm.org/15.0.0/docs/LangRef.html#llvm-memcpy-intrinsic - Update expected numerical values in various tests. - Mark and disable failing tests with `FIXME(llvm-15)`.
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.
Main changes:
stack*.yaml
files as llvm-hs:llvm-15, for consistency.Status: work-in-progress.
make
now works on Apple M1.make unit-tests
passes.-Wincomplete-uni-patterns
warnings because-Wincomplete-uni-patterns
was added to-Wall
in GHC 9.2.1 (source).make tests
passes.Fixes #1247.