-
Notifications
You must be signed in to change notification settings - Fork 997
main: switch to LLVM 10 #1014
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
main: switch to LLVM 10 #1014
Conversation
0ec2d34 to
b526cac
Compare
|
Looks like I'm hitting this problem: https://reviews.llvm.org/D66324#1680231 |
|
I'm afraid fixing this will require some redesigning of how certain tools ( |
9545d9a to
a2320ed
Compare
This should make it much easier to update existing tests.
390bc19 to
7505707
Compare
This commit also adds a bit of version independence, in particular for external commands. It also adds the LLVM version to the `tinygo version` command, which might help while debugging.
See comment in the commit for details. It works around a bug that's been reported here: https://bugs.llvm.org/show_bug.cgi?id=45336 This is a separate commit so it can easily be reverted if/when this patch is backported to the LLVM 10 stable branch.
|
This PR is now ready for review. I've intentionally kept the last commit separate so that it can be reverted if/when the lld bug is fixed upstream. This PR also adds testing for LLVM 9, to make sure it won't break this older release for Linux distributions. |
|
I was able to install LLVM 10 using the apt repo, and compile several code examples successfully using this branch. When I first tried under this branch, I did get I probably did not have the proper symlink setup for LLVM 9? Now that I have LLVM 10 installed I cannot backtest LLVM 9 very easily. That said, from my POV I think we should merge this now. |
Did you install This is what I normally use: Also, I currently have both LLVM 9 and LLVM 10 installed, from apt.llvm.org. No symlinks necessary, it should always use the correct version (depending on which branch you're on). |
|
The error occurred before I had installed llvm10, but already had llvm9 installed. |
|
Ah I understand now. |
|
Ah cool, did you run into any issues with ARM sections? IIRC, that's what I got before stopping to focus on Go 1.14. I will try this out myself, but probably won't be able to get to it for a few days. |
|
I haven't seen anything about ARM sections, no. I did find a different linker bug, though (that I've worked around now). |
|
Been testing this branch, and seems ready to merge. Last call for feedback! |
|
OK, let's merge! |
This commit also adds a bit of version independence, in particular for external commands. It also adds the LLVM version to the
tinygo versioncommand, which might help while debugging.TODO: make TinyGo work with LLVM version 9 too, for Fedora (and perhaps other distributions). I'm making a PR now so that I can see whether the Windows build will work.done