================
@@ -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];
----------------
sarnex wrote:
Just tried and it seems yes:
```
"/llvm/build/bin/clang-22" -cc1 -triple x86_64-unknown-linux-gnu
-fsycl-is-host -sycl-std=2020 -emit-obj -dumpdir a- -disable-free
-clear-ast-before-backend -main-file-name foo.cpp -mrelocation-model pic
-pic-level 2 -pic-is-pie -mframe-pointer=all -fmath-errno -ffp-contract=on
-fno-rounding-math -mconstructor-aliases -funwind-tables=2 -target-cpu x86-64
-tune-cpu generic -debugger-tuning=gdb -v -resource-dir
/llvm/build/lib/clang/22 -internal-isystem
/usr/lib/gcc/x86_64-redhat-linux/11/../../../../include/c++/11
-internal-isystem
/usr/lib/gcc/x86_64-redhat-linux/11/../../../../include/c++/11/x86_64-redhat-linux
-internal-isystem
/usr/lib/gcc/x86_64-redhat-linux/11/../../../../include/c++/11/backward
-internal-isystem
/usr/lib/gcc/x86_64-redhat-linux/11/../../../../include/c++/11
-internal-isystem
/usr/lib/gcc/x86_64-redhat-linux/11/../../../../include/c++/11/x86_64-redhat-linux
-internal-isystem
/usr/lib/gcc/x86_64-redhat-linux/11/../../../../include/c++/11/backward
-internal-isystem /llvm/build/lib/clang/22/include -internal-isystem
/usr/local/include -internal-isystem
/usr/lib/gcc/x86_64-redhat-linux/11/../../../../x86_64-redhat-linux/include
-internal-externc-isystem /include -internal-externc-isystem /usr/include
-internal-isystem /llvm/build/lib/clang/22/include -internal-isystem
/usr/local/include -internal-isystem
/usr/lib/gcc/x86_64-redhat-linux/11/../../../../x86_64-redhat-linux/include
-internal-externc-isystem /include -internal-externc-isystem /usr/include
-fdeprecated-macro -ferror-limit 19 -fmessage-length=262 -fgnuc-version=4.2.1
-fskip-odr-check-in-gmf -fcxx-exceptions -fexceptions -fcolor-diagnostics
-fembed-offload-object=/tmp/foo-b73420.out -faddrsig
-D__GCC_HAVE_DWARF2_CFI_ASM=1 -o /tmp/foo-053756.o -x c++ foo.cpp
clang -cc1 version 22.0.0git based upon LLVM 22.0.0git default target
x86_64-unknown-linux-gnu
ignoring nonexistent directory
"/usr/lib/gcc/x86_64-redhat-linux/11/../../../../x86_64-redhat-linux/include"
ignoring nonexistent directory "/include"
ignoring nonexistent directory
"/usr/lib/gcc/x86_64-redhat-linux/11/../../../../x86_64-redhat-linux/include"
ignoring nonexistent directory "/include"
ignoring duplicate directory
"/usr/lib/gcc/x86_64-redhat-linux/11/../../../../include/c++/11"
ignoring duplicate directory
"/usr/lib/gcc/x86_64-redhat-linux/11/../../../../include/c++/11/x86_64-redhat-linux"
ignoring duplicate directory
"/usr/lib/gcc/x86_64-redhat-linux/11/../../../../include/c++/11/backward"
ignoring duplicate directory "/llvm/build/lib/clang/22/include"
ignoring duplicate directory "/usr/local/include"
ignoring duplicate directory "/usr/include"
#include "..." search starts here:
#include <...> search starts here:
/usr/lib/gcc/x86_64-redhat-linux/11/../../../../include/c++/11
/usr/lib/gcc/x86_64-redhat-linux/11/../../../../include/c++/11/x86_64-redhat-linux
/usr/lib/gcc/x86_64-redhat-linux/11/../../../../include/c++/11/backward
/llvm/build/lib/clang/22/include
/usr/local/include
/usr/include
End of search list.
foo.cpp:2:3: warning: 'clang::sycl_kernel' attribute ignored
[-Wignored-attributes]
2 | [[clang::sycl_kernel]]
```
No warning for the device compile.
https://github.com/llvm/llvm-project/pull/162868
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits