llvmlite
llvmlite copied to clipboard
Add LLVM 14 support
Thanks for starting work on LLVM 14 support. In thinking about how to make it easier to review the changes needed, perhaps the following approach might work:
- Creating a separate patch for the C++ code formatting changes, this gets merged first so as to minimise future diffs and to make it easy to spot code changes that are real vs. formatting.
- Subsequently adding support for LLVM 14 including build and patch updates as a separate PR, then merging this next.
- Finally adding support for the addition LLVM pass bindings/wrappers and merging this last.
What do you think?
Sure. I've created #831 for the code formatting changes. I'm going to leave this PR open so I can use it for the build farm.
Sure. I've created #831 for the code formatting changes. I'm going to leave this PR open so I can use it for the build farm.
Thanks, keeping this open for testing purposes sounds like a good plan.
Hi,
Here is svml patch for llvm 14 https://github.com/Hardcode84/llvm-project/commit/bc2dcd190b7148d04772fa7fcd18b5200b758d4a
Thanks for pointing me here from the llvmlite patch.
How important are the patches to llvm itself? There seems to be a bunch of changes in the conda recipes, are those needed outside of a conda environment?
The patches to LLVM 14 that are included with the recipe are pretty important. Numba uses SVML and that is not in LLVM mainline and needs to be patched in. Some of the other changes are for building on different environments (MacOS and Windows can be uncooperative).
That's not on our roadmap yet. LLVM 15 has a number of breaking changes in the way it handles pointers, and we aren't prepared to handle those yet.
/azp run
Azure Pipelines successfully started running 1 pipeline(s).
/azp run
Azure Pipelines successfully started running 1 pipeline(s).
CI was messed up because of the recent issue with it, so I'm just running the pipelines because I'm curious what the tests look like right now.
@apmasell This is marked as RFR but it also contains a commit with the message "DO NOT MERGE" and has some CI fails - can you clarify its status please?
@apmasell This is marked as RFR but it also contains a commit with the message "DO NOT MERGE" and has some CI fails - can you clarify its status please?
I've now noticed that CI needs #903.
The DO NOT MERGE commit contains version changes that we need to have parallel LLVM 11 and LLVM 14 in CI. So, once review is done, I will remove that change before we merge. There's a similar one in Numba to make CI work.
NOTE: need to check if any documentation needs updating.
The installation instructions need updating from here onward: https://github.com/numba/llvmlite/blob/dffe582d6080494ba8e39689d09aacde1952214c/docs/source/admin-guide/install.rst?plain=1#L178 suggest deferring this to a subsequent PR?