[clang] [clang][Sema] Split SYCLKernel back into its own attribute (PR #162868)

Tom Honermann via cfe-commits cfe-commits at lists.llvm.org
Fri Oct 10 11:15:46 PDT 2025


================
@@ -1599,8 +1599,15 @@ def CUDAShared : InheritableAttr {
 }
 def : MutualExclusions<[CUDAConstant, CUDAShared, HIPManaged]>;
 
+def SYCLKernel : InheritableAttr {
+  let Spellings = [Clang<"sycl_kernel">];
+  let Subjects = SubjectList<[FunctionTmpl]>;
+  let LangOpts = [SYCLDevice];
----------------
tahonermann wrote:

@jhuber6, yes, the attribute intentionally has no effect for host compilation and is expected to be hidden behind a macro for device compilation. We are designing differently for the [`sycl_kernel_entry_point` attribute](https://clang.llvm.org/docs/AttributeReference.html#sycl-kernel-entry-point) that is intended to replace `sycl_kernel`.

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


More information about the cfe-commits mailing list