[llvm-branch-commits] [llvm] [openmp] [openmp] Add support for Arm64X to libomp (PR #176157)

David Truby via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Thu Jan 29 06:47:33 PST 2026


DavidTruby wrote:

> Can you describe what the pipeline is? I imagine something like
> 
>     1. building LLVM_ENABLE_PROJECTS (llvm, clang, etc)
> 
>     2. building runtimes-arm64ec-pc-windows-msvc-bins with `/linkreprofullpathrsp:omp.rsp`
> 
>     3. building runtimes-aarch64-pc-windows-msvc-bins with `/DEF:omp.rsp`
> 
> 
> Is this correct?

Almost; the pipeline is more like:
1. building LLVM_ENABLE_PROJECTS (llvm, clang, etc)
2. building runtimes-arm64ec-pc-windows-msvc-bins; 
    * copy the generated `.def` file for `libomp.lib` to the shared directory as `libompimp.def` 
    * build libomp.dll with `/linkreprofullpathrsp:omp.rsp`
3. building runtimes-aarch64-pc-windows-msvc-bins; 
    * build libomp.lib with /def:libompimp.def, /machine:arm64x and /defArm64Native:<generated libomp def file for aarch64>
    * grab all the object files out of the .rsp file and pass them to the libomp.dll build, with `/machine:arm64x`

> What do I have to do when not using the bootstrapping build?

I'm not sure you can get this to work without the bootstrapping build, as you need to be building both aarch64 and arm64ec in predictable places for the cmake to be able to pick them up. But I'll admit to being a bit lost in how exactly the runtimes build fits together sometimes.



https://github.com/llvm/llvm-project/pull/176157


More information about the llvm-branch-commits mailing list