Skip to content

generated SPIRV contains mangled get_global_id #21

Closed
@airlied

Description

@airlied

The SPIR-V generated here using the suggested command line contains a function call out to get_global_id.

This should be lowered by the llvm-spirv code, but isn't and I'm not sure how to fix it.

the llvm-spirv code has an OCL20ToSPIRV lowering code for OpenCL C 2.0, and OCL21toSPIRV lowering for OpenCL C++ 2.1 code.

Now we generate OpenCL C++ 1.0 source version, so neither of these gets hit.

However the OpenCL C++ interface to get_global_id is cl::get_global_id in the CL namespace, so the current SYCL runtime gets this wrong.

I'm not sure what best solution is?

Move to CL C++ 2.1 version (maybe this is a bug in the llvm-spirv, since it's probably meant to be C++ 1.0) and use cl:: for the device only code?

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions