[Openmp-commits] [llvm] [openmp] [OpenMP] Change build of OpenMP device runtime to be a separate runtime (PR #136729)

Tom Honermann via Openmp-commits openmp-commits at lists.llvm.org
Mon Apr 28 09:13:25 PDT 2025


tahonermann wrote:

> As I understand, we already have a pretty strong tendency toward the former. We have right now `flang-rt`, `compiler-rt`, `libclc`, and `openmp`.

My understanding (which might be incorrect), is that `flang-rt` and `compiler-ft` are host-only libraries, `libclc` is device-only, and `openmp` has both host and device components with the location of the device-only component being the crux of this discussion. A policy of using top level directories for host-only RTs and the host portions of RTs that span host/device, and placing device-only RT libraries under `offload` makes sense to me. However...

> So, I think it should go back in `openmp/` as with `libomptarget`. That makes `offload/` a generic interface that languages inherit from to make their own language runtimes, which I think is how most people expect `offload/` to work.

I find this argument compelling as well.

Perhaps it would make sense to keep `offload` generic and minimal and to co-locate the device RTs under a top level `device-rt` directory that contains `openmp`, `openacc`, `cuda`, etc...

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


More information about the Openmp-commits mailing list