llvm
llvm copied to clipboard
[Driver][SYCL] Introduce gpu specific device targets for AOT
Expands spir64_gen target capabilities with -fsycl by introducing a number of GPU specific targets that can be specified via -fsycl-targets. These targets (intel_gpu_* in format) are a set of reserved values which will correspond to spir64_gen target compilations with implied -device values.
Example: -fsycl-targets=intel_gpu_skl
- Passes '-device skl' to ocloc
- Adds -D__SYCL_TARGET_INTEL_GPU_SKL__ to the device compilation step
For each value passed in -fsycl-targets, additional device specific compilations will be performed. When bundling (using -c) the corresponding fat object will be generated with spir64_gen-unknown-unknown-skl to continue to be unique for extraction at a later time.