You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Make the OpenCL Builtin lookup agnostic to programming models
Rename the OpenCL Builtin lookup system to make it agnostic.
The Builtin emitter is now outputting the builtin information
into a class so that different programming models can be
produced and used.
* Add SPIR-V variants of TypeSampledImage as clang builtin type.
This patch adds SPIR-V sampled image types as derivative of the builtin OpenCL Image types.
For each OpenCL image type, clang defines a Sampled<image type> variant and
lowered as a "spirv.SampledImage.<image>" llvm opaque type.
* Enable SPIR-V builtin lookup
Add flag -fdeclare-spirv-builtins to enable lookup of SPIR-V builtins.
If -fdeclare-spirv-builtins is passed to clang, the compiler will try
to lookup for the builtin described in SPIRVBuiltins.td for any match.
If a match is found, overloads are build for the match.
This will enforce a stable way to express SPIR-V builtins and make them
closer to how the translator mangles them. This will help ensuring
builtin for CUDA does not break easily. This will also support any
changes suggested by the SPIRV-LLVM people on how to represent builtins.
Define __SPIRV_BUILTIN_DECLARATIONS__ when passing
-fdeclare-spirv-builtins to clang.
Added OpenCL SPIR-V extended set builtins bindings and
part of the core SPIR-V (mostly missing Images and Pipes)
TODO: Known vendor extensions are not implemented yet.
Signed-off-by: Victor Lomuller <[email protected]>
Differential Revision: https://reviews.llvm.org/D108034
0 commit comments