Skip to content
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鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Switch to LLVM/bolt #180

Open
h-vetinari opened this issue Feb 23, 2022 · 2 comments
Open

Switch to LLVM/bolt #180

h-vetinari opened this issue Feb 23, 2022 · 2 comments

Comments

@h-vetinari
Copy link

h-vetinari commented Feb 23, 2022

Hey all!

Since BOLT is now included as of LLVM 14, I wanted to open an issue to track updating the bolt version being used here to the one in LLVM. It will make eventual packaging for conda(-forge) a fair bit easier**. 馃檭

** even more so if pyston were to rely on released versions of LLVM rather than through submodules, but that's a different subject.

@kmod
Copy link
Contributor

kmod commented Feb 23, 2022

That'd be great! We just updated to LLVM 13.0.1 (the latest release) so updating to LLVM 14 will be easier now.

We have the ability now to use a system-provided LLVM, which we use for everything except development. The two things that I can think of that would have to be done to get rid of the submodule:

  • We would need to change all references from clang, llvm-link, etc, to clang-13, etc
  • We'd need a strategy for when we run into bolt bugs, which are typically fixed in their main but not their release. This has been frequent enough that I expect it to happen again.

Perhaps we can get rid of the llvm submodule (solve the first issue) and keep the bolt submodule (punt on the second issue)?

@h-vetinari
Copy link
Author

Cool!

We'd need a strategy for when we run into bolt bugs, which are typically fixed in their main but not their release. This has been frequent enough that I expect it to happen again.

I expect (na茂vely...?) bolt to stabilize in terms of bug rate, but that's something to be seen. In this context, it's worth noting thought that conda-forge would be able to carry relevant (bolt-)patches without waiting for the newest LLVM release.

Perhaps we can get rid of the llvm submodule (solve the first issue) and keep the bolt submodule (punt on the second issue)?

I'm not suggesting to do it right away. It would already be an improvement if the bolt submodule here were to point to LLVM/bolt. And great if llvm itself can "go" as well! :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants