[clang] [clang-sycl-linker] Add static archive (.a) support (PR #202829)

Alexey Bader via cfe-commits cfe-commits at lists.llvm.org
Wed Jun 10 10:54:09 PDT 2026


================
@@ -50,7 +50,10 @@ be passed down to downstream AOT compilation tools like 'ocloc' and 'opencl-aot'
     -help-hidden                  Display all available options
     -help                         Display available options (--help-hidden for more)
     -L <dir>                      Add <dir> to the library search path
-    --bc-library <name>           Add LLVM bitcode library <name> (with extension) to the link. A relative <name> is resolved against -L paths; an absolute path is taken as-is.
+    -l <libname>                  Search for library <libname>
----------------
bader wrote:

This is a revamped version of the https://github.com/llvm/llvm-project/pull/201253 which separates `clang-sycl-linker` implementation from `clang-nvlink-wrapper`. In nutshell - I just moved the implementation from shared library to `clang-sycl-linker` tool. I removed a few features used only by `clang-nvlink-wrapper` (e.g. archives of ELF-wrapped LLVM bitcodes, ignoring non-existing input files).

I realized that there are differences tools behavior, which make code sharing a non-trivial work. https://github.com/llvm/llvm-project/pull/201253 caused some regressions in OpenMP testing on NVIDIA platform, which I'm unable to reproduce and investigate. To avoid this kind of problems, I decided to separate the implementation.

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


More information about the cfe-commits mailing list