[clang] [llvm] [clang-sycl-linker] Add per-translation-unit device code split mode (PR #196435)

Alexey Bader via llvm-commits llvm-commits at lists.llvm.org
Sat May 9 12:39:31 PDT 2026


================
@@ -57,6 +57,9 @@ def opencl_aot_options_EQ : Joined<["--", "-"], "opencl-aot-options=">,
 
 def module_split_mode_EQ : Joined<["--", "-"], "module-split-mode=">,
   Flags<[LinkerOnlyOption]>, MetaVarName<"<mode>">,
-  HelpText<"SYCL device code module split mode. Valid values: 'none' (default) "
-           "emits a single device image; 'kernel' emits one device image per "
-           "kernel function.">;
+  HelpText<"SYCL device code module split mode. Valid values: "
+           "'source' (default) emits one device image per translation unit that contains "
+           "at least one kernel; translation units containing only sycl_external "
+           "functions do not produce a device image, this behavior may change in the future; "
----------------
bader wrote:

> translation units containing only sycl_external functions do not produce a device image, this behavior may change in the future

What does it mean? I suggest we drop this part.


```suggestion
           "at least one entry point"
```

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


More information about the llvm-commits mailing list