aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/CodeGen/CodeGenAction.cpp
diff options
context:
space:
mode:
authorMaksim Sabianin <maksim.sabianin@intel.com>2025-09-26 19:02:31 +0200
committerGitHub <noreply@github.com>2025-09-26 17:02:31 +0000
commit65d730b4a5aaea91493305dd32e27bc8e033a0ac (patch)
treebf9ca239a9e7620f77fa100a74806bcf08a01fd5 /clang/lib/CodeGen/CodeGenAction.cpp
parent12b74111b24d8ed511a382a913cda706128c8336 (diff)
downloadllvm-65d730b4a5aaea91493305dd32e27bc8e033a0ac.zip
llvm-65d730b4a5aaea91493305dd32e27bc8e033a0ac.tar.gz
llvm-65d730b4a5aaea91493305dd32e27bc8e033a0ac.tar.bz2
[SYCL] Add offload wrapping for SYCL kind (#147508)
This patch adds an Offload Wrapper for the SYCL kind. This is an essential step for SYCL offloading and the compilation flow. The usage of offload wrapping is added to the clang-linker-wrapper tool. Modifications: Implemented `bundleSYCL()` function to handle SYCL image bundling. Implemented `wrapSYCLBinaries()` function that is invoked from clang-linker-wrapper. SYCL Offload Wrapping uses specific data structures such as `__sycl.tgt_device_image` and `__sycl.tgt_bin_desc`. Each SYCL image maintains its own symbol table (unlike shared global tables in other targets). Therefore, symbols are encoded explicitly during the offload wrapping. Also, images refer to their own Offloading Entries arrays unlike other targets. The proposed `__sycl.tgt_device_image` uses Version 3 to differentiate from images generated by Intel DPC++. The structure proposed in this patch doesn't have fields deprecated in DPC++.
Diffstat (limited to 'clang/lib/CodeGen/CodeGenAction.cpp')
0 files changed, 0 insertions, 0 deletions