llvmlite icon indicating copy to clipboard operation
llvmlite copied to clipboard

Add LLVM 14 support

Open apmasell opened this issue 2 years ago • 4 comments

apmasell avatar Apr 05 '22 19:04 apmasell

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?

stuartarchibald avatar Apr 06 '22 15:04 stuartarchibald

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.

apmasell avatar Apr 06 '22 19:04 apmasell

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.

stuartarchibald avatar Apr 08 '22 08:04 stuartarchibald

Hi,

Here is svml patch for llvm 14 https://github.com/Hardcode84/llvm-project/commit/bc2dcd190b7148d04772fa7fcd18b5200b758d4a

Hardcode84 avatar Jul 24 '22 23:07 Hardcode84

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?

detrout avatar Oct 25 '22 17:10 detrout

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).

apmasell avatar Oct 25 '22 19:10 apmasell

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.

apmasell avatar Nov 07 '22 12:11 apmasell

/azp run

gmarkall avatar Nov 29 '22 11:11 gmarkall

Azure Pipelines successfully started running 1 pipeline(s).

azure-pipelines[bot] avatar Nov 29 '22 11:11 azure-pipelines[bot]

/azp run

gmarkall avatar Jan 20 '23 10:01 gmarkall

Azure Pipelines successfully started running 1 pipeline(s).

azure-pipelines[bot] avatar Jan 20 '23 10:01 azure-pipelines[bot]

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.

gmarkall avatar Jan 20 '23 10:01 gmarkall

@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?

gmarkall avatar Feb 06 '23 09:02 gmarkall

@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.

gmarkall avatar Feb 06 '23 11:02 gmarkall

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.

apmasell avatar Feb 06 '23 19:02 apmasell

NOTE: need to check if any documentation needs updating.

stuartarchibald avatar Feb 23 '23 17:02 stuartarchibald

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?

stuartarchibald avatar Mar 09 '23 11:03 stuartarchibald