Skip to content

Upstream basic SYCL device front-end compiler

No due date 71% complete

Success criteria for this milestone is to compile SYCL kernels from a simple SYCL application to SPIR-V format using vanilla clang compiler as front-end compiler (i.e. upstreaming llvm-spirv tool and SYCL headers is out of this milestone scope).

E.g. https://github.com/codeplaysoftware/computecpp-sdk/blob/master/samples/accessors.cpp

clang -cc1 %s -fsycl-…

Success criteria for this milestone is to compile SYCL kernels from a simple SYCL application to SPIR-V format using vanilla clang compiler as front-end compiler (i.e. upstreaming llvm-spirv tool and SYCL headers is out of this milestone scope).

E.g. https://github.com/codeplaysoftware/computecpp-sdk/blob/master/samples/accessors.cpp

clang -cc1 %s -fsycl-is-device -target spir -I<patch to SYCL headers> <a lot of other options> accessors.cpp -o accessors.bc
llvm-spirv accessors.bc -o kernel.spv

The result of this compilation process can be verified manually or we can build a host part of the test application using any host compiler and configure SYCL runtime to use generated SPIR-V file to execute SYCL kernels.

Loading