-
-
Notifications
You must be signed in to change notification settings - Fork 176
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 20.1.0 #553
Conversation
Oh, the new toolchain release is marked as a pre-release for the moment since I haven't tested them. (This PR can be the test!) I also noticed the archives are significantly larger. I'd like to investigate that before removing the pre-release flag. Maybe tomorrow... |
20fa2c2
to
2807e8b
Compare
I just published an LLVM 20.1.0 toolchain with some computed gotos patches to hopefully improve performance of CPython. https://github.com/indygreg/toolchain-tools/releases/tag/toolchain-bootstrap%2F20250308 One of the patches changes codegen to fix a regression in LLVM 19. The other enables bolt to work with computed gotos. To take full advantage of this functionality we patch CPython configure to remove some `--skip-funcs` which are no longer required.
2807e8b
to
961adf8
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The changes here look good to me, thanks for taking this on!
I did a quick audit of the LLVM distribution bloat. Looks mostly organic. I removed the pre-release label from the release. I'm comfortable landing this if you are. |
Great thanks for following up. |
Thanks for merging this regression-fix swiftly! 👍🏻 Is the branch indygreg/no-plt unnecessary? |
Changes to PLT and symbol binding need to be considered separately and deliberately. I published the branch so others can conduct performance analysis. |
I just published an LLVM 20.1.0 toolchain with some computed gotos patches to hopefully improve performance of CPython.
https://github.com/indygreg/toolchain-tools/releases/tag/toolchain-bootstrap%2F20250308
One of the patches changes codegen to fix a regression in LLVM 19.
The other enables bolt to work with computed gotos. To take full advantage of this functionality we patch CPython configure to remove some
--skip-funcs
which are no longer required.