#include <cstddef>
#include <cstdint>
Go to the source code of this file.
Classes | |
struct | _sycl_offload_entry_struct |
struct | _sycl_device_binary_property_struct |
struct | _sycl_device_binary_property_set_struct |
struct | sycl_device_binary_struct |
This struct is a record of the device binary information. More... | |
struct | sycl_device_binaries_struct |
This struct is a record of all the device code that may be offloaded. More... | |
Macros | |
#define | __SYCL_DEVICE_BINARY_TARGET_UNKNOWN "<unknown>" |
Target identification strings. More... | |
#define | __SYCL_DEVICE_BINARY_TARGET_SPIRV32 "spir" |
SPIR-V 32-bit image <-> "spir", 32-bit OpenCL device. More... | |
#define | __SYCL_DEVICE_BINARY_TARGET_SPIRV64 "spir64" |
SPIR-V 64-bit image <-> "spir64", 64-bit OpenCL device. More... | |
#define | __SYCL_DEVICE_BINARY_TARGET_SPIRV64_X86_64 "spir64_x86_64" |
Device-specific binary images produced from SPIR-V 64-bit <-> various "spir64_*" triples for specific 64-bit OpenCL devices. More... | |
#define | __SYCL_DEVICE_BINARY_TARGET_SPIRV64_GEN "spir64_gen" |
#define | __SYCL_DEVICE_BINARY_TARGET_SPIRV64_FPGA "spir64_fpga" |
#define | __SYCL_DEVICE_BINARY_TARGET_NVPTX64 "nvptx64" |
PTX 64-bit image <-> "nvptx64", 64-bit NVIDIA PTX device. More... | |
#define | __SYCL_DEVICE_BINARY_TARGET_AMDGCN "amdgcn" |
#define | __SYCL_DEVICE_BINARY_TARGET_NATIVE_CPU "native_cpu" |
#define | __SYCL_PROPERTY_SET_SPEC_CONST_MAP "SYCL/specialization constants" |
Device binary image property set names recognized by the SYCL runtime. More... | |
#define | __SYCL_PROPERTY_SET_SPEC_CONST_DEFAULT_VALUES_MAP "SYCL/specialization constants default values" |
PropertySetRegistry::SYCL_SPEC_CONSTANTS_DEFAULT_VALUES defined in PropertySetIO.h. More... | |
#define | __SYCL_PROPERTY_SET_DEVICELIB_REQ_MASK "SYCL/devicelib req mask" |
PropertySetRegistry::SYCL_DEVICELIB_REQ_MASK defined in PropertySetIO.h. More... | |
#define | __SYCL_PROPERTY_SET_KERNEL_PARAM_OPT_INFO "SYCL/kernel param opt" |
PropertySetRegistry::SYCL_KERNEL_PARAM_OPT_INFO defined in PropertySetIO.h. More... | |
#define | __SYCL_PROPERTY_SET_PROGRAM_METADATA "SYCL/program metadata" |
PropertySetRegistry::SYCL_KERNEL_PROGRAM_METADATA defined in PropertySetIO.h. More... | |
#define | __SYCL_PROPERTY_SET_SYCL_MISC_PROP "SYCL/misc properties" |
PropertySetRegistry::SYCL_MISC_PROP defined in PropertySetIO.h. More... | |
#define | __SYCL_PROPERTY_SET_SYCL_ASSERT_USED "SYCL/assert used" |
PropertySetRegistry::SYCL_ASSERT_USED defined in PropertySetIO.h. More... | |
#define | __SYCL_PROPERTY_SET_SYCL_EXPORTED_SYMBOLS "SYCL/exported symbols" |
PropertySetRegistry::SYCL_EXPORTED_SYMBOLS defined in PropertySetIO.h. More... | |
#define | __SYCL_PROPERTY_SET_SYCL_IMPORTED_SYMBOLS "SYCL/imported symbols" |
PropertySetRegistry::SYCL_IMPORTED_SYMBOLS defined in PropertySetIO.h. More... | |
#define | __SYCL_PROPERTY_SET_SYCL_DEVICE_GLOBALS "SYCL/device globals" |
PropertySetRegistry::SYCL_DEVICE_GLOBALS defined in PropertySetIO.h. More... | |
#define | __SYCL_PROPERTY_SET_SYCL_DEVICE_REQUIREMENTS "SYCL/device requirements" |
PropertySetRegistry::SYCL_DEVICE_REQUIREMENTS defined in PropertySetIO.h. More... | |
#define | __SYCL_PROPERTY_SET_SYCL_HOST_PIPES "SYCL/host pipes" |
PropertySetRegistry::SYCL_HOST_PIPES defined in PropertySetIO.h. More... | |
#define | __SYCL_PROPERTY_SET_SYCL_VIRTUAL_FUNCTIONS "SYCL/virtual functions" |
PropertySetRegistry::SYCL_VIRTUAL_FUNCTIONS defined in PropertySetIO.h. More... | |
#define | __SYCL_PROGRAM_METADATA_TAG_REQD_WORK_GROUP_SIZE "@reqd_work_group_size" |
Program metadata tags recognized by the PI backends. More... | |
#define | __SYCL_PROGRAM_METADATA_GLOBAL_ID_MAPPING "@global_id_mapping" |
#define | __SYCL_PROGRAM_METADATA_TAG_NEED_FINALIZATION "Requires finalization" |
Typedefs | |
using | sycl_offload_entry = _sycl_offload_entry_struct * |
using | sycl_device_binary_property = _sycl_device_binary_property_struct * |
using | sycl_device_binary_property_set = _sycl_device_binary_property_set_struct * |
using | sycl_device_binary = sycl_device_binary_struct * |
using | sycl_device_binaries = sycl_device_binaries_struct * |
Enumerations | |
enum | sycl_property_type { SYCL_PROPERTY_TYPE_UNKNOWN , SYCL_PROPERTY_TYPE_UINT32 , SYCL_PROPERTY_TYPE_BYTE_ARRAY , SYCL_PROPERTY_TYPE_STRING } |
enum | sycl_device_binary_type : uint8_t { SYCL_DEVICE_BINARY_TYPE_NONE = 0 , SYCL_DEVICE_BINARY_TYPE_NATIVE = 1 , SYCL_DEVICE_BINARY_TYPE_SPIRV = 2 , SYCL_DEVICE_BINARY_TYPE_LLVMIR_BITCODE = 3 } |
Types of device binary. More... | |
Variables | |
static const uint16_t | SYCL_DEVICE_BINARY_VERSION = 1 |
static const uint8_t | SYCL_DEVICE_BINARY_OFFLOAD_KIND_SYCL = 4 |
static const uint16_t | SYCL_DEVICE_BINARIES_VERSION = 1 |
#define __SYCL_DEVICE_BINARY_TARGET_AMDGCN "amdgcn" |
Definition at line 32 of file compiler.hpp.
#define __SYCL_DEVICE_BINARY_TARGET_NATIVE_CPU "native_cpu" |
Definition at line 33 of file compiler.hpp.
#define __SYCL_DEVICE_BINARY_TARGET_NVPTX64 "nvptx64" |
PTX 64-bit image <-> "nvptx64", 64-bit NVIDIA PTX device.
Definition at line 31 of file compiler.hpp.
#define __SYCL_DEVICE_BINARY_TARGET_SPIRV32 "spir" |
SPIR-V 32-bit image <-> "spir", 32-bit OpenCL device.
Definition at line 22 of file compiler.hpp.
#define __SYCL_DEVICE_BINARY_TARGET_SPIRV64 "spir64" |
SPIR-V 64-bit image <-> "spir64", 64-bit OpenCL device.
Definition at line 24 of file compiler.hpp.
#define __SYCL_DEVICE_BINARY_TARGET_SPIRV64_FPGA "spir64_fpga" |
Definition at line 29 of file compiler.hpp.
#define __SYCL_DEVICE_BINARY_TARGET_SPIRV64_GEN "spir64_gen" |
Definition at line 28 of file compiler.hpp.
#define __SYCL_DEVICE_BINARY_TARGET_SPIRV64_X86_64 "spir64_x86_64" |
Device-specific binary images produced from SPIR-V 64-bit <-> various "spir64_*" triples for specific 64-bit OpenCL devices.
Definition at line 27 of file compiler.hpp.
#define __SYCL_DEVICE_BINARY_TARGET_UNKNOWN "<unknown>" |
Target identification strings.
A device type represented by a particular target triple requires specific binary images. We need to map the image type onto the device target triple
Definition at line 20 of file compiler.hpp.
#define __SYCL_PROGRAM_METADATA_GLOBAL_ID_MAPPING "@global_id_mapping" |
Definition at line 70 of file compiler.hpp.
#define __SYCL_PROGRAM_METADATA_TAG_NEED_FINALIZATION "Requires finalization" |
Definition at line 72 of file compiler.hpp.
#define __SYCL_PROGRAM_METADATA_TAG_REQD_WORK_GROUP_SIZE "@reqd_work_group_size" |
Program metadata tags recognized by the PI backends.
For kernels the tag must appear after the kernel name.
Definition at line 69 of file compiler.hpp.
#define __SYCL_PROPERTY_SET_DEVICELIB_REQ_MASK "SYCL/devicelib req mask" |
PropertySetRegistry::SYCL_DEVICELIB_REQ_MASK defined in PropertySetIO.h.
Definition at line 45 of file compiler.hpp.
#define __SYCL_PROPERTY_SET_KERNEL_PARAM_OPT_INFO "SYCL/kernel param opt" |
PropertySetRegistry::SYCL_KERNEL_PARAM_OPT_INFO defined in PropertySetIO.h.
Definition at line 47 of file compiler.hpp.
#define __SYCL_PROPERTY_SET_PROGRAM_METADATA "SYCL/program metadata" |
PropertySetRegistry::SYCL_KERNEL_PROGRAM_METADATA defined in PropertySetIO.h.
Definition at line 49 of file compiler.hpp.
#define __SYCL_PROPERTY_SET_SPEC_CONST_DEFAULT_VALUES_MAP "SYCL/specialization constants default values" |
PropertySetRegistry::SYCL_SPEC_CONSTANTS_DEFAULT_VALUES defined in PropertySetIO.h.
Definition at line 42 of file compiler.hpp.
#define __SYCL_PROPERTY_SET_SPEC_CONST_MAP "SYCL/specialization constants" |
Device binary image property set names recognized by the SYCL runtime.
Name must be consistent with PropertySetRegistry::SYCL_SPECIALIZATION_CONSTANTS defined in PropertySetIO.h
Definition at line 39 of file compiler.hpp.
#define __SYCL_PROPERTY_SET_SYCL_ASSERT_USED "SYCL/assert used" |
PropertySetRegistry::SYCL_ASSERT_USED defined in PropertySetIO.h.
Definition at line 53 of file compiler.hpp.
#define __SYCL_PROPERTY_SET_SYCL_DEVICE_GLOBALS "SYCL/device globals" |
PropertySetRegistry::SYCL_DEVICE_GLOBALS defined in PropertySetIO.h.
Definition at line 59 of file compiler.hpp.
#define __SYCL_PROPERTY_SET_SYCL_DEVICE_REQUIREMENTS "SYCL/device requirements" |
PropertySetRegistry::SYCL_DEVICE_REQUIREMENTS defined in PropertySetIO.h.
Definition at line 61 of file compiler.hpp.
#define __SYCL_PROPERTY_SET_SYCL_EXPORTED_SYMBOLS "SYCL/exported symbols" |
PropertySetRegistry::SYCL_EXPORTED_SYMBOLS defined in PropertySetIO.h.
Definition at line 55 of file compiler.hpp.
#define __SYCL_PROPERTY_SET_SYCL_HOST_PIPES "SYCL/host pipes" |
PropertySetRegistry::SYCL_HOST_PIPES defined in PropertySetIO.h.
Definition at line 63 of file compiler.hpp.
#define __SYCL_PROPERTY_SET_SYCL_IMPORTED_SYMBOLS "SYCL/imported symbols" |
PropertySetRegistry::SYCL_IMPORTED_SYMBOLS defined in PropertySetIO.h.
Definition at line 57 of file compiler.hpp.
#define __SYCL_PROPERTY_SET_SYCL_MISC_PROP "SYCL/misc properties" |
PropertySetRegistry::SYCL_MISC_PROP defined in PropertySetIO.h.
Definition at line 51 of file compiler.hpp.
#define __SYCL_PROPERTY_SET_SYCL_VIRTUAL_FUNCTIONS "SYCL/virtual functions" |
PropertySetRegistry::SYCL_VIRTUAL_FUNCTIONS defined in PropertySetIO.h.
Definition at line 65 of file compiler.hpp.
Definition at line 199 of file compiler.hpp.
using sycl_device_binary = sycl_device_binary_struct * |
Definition at line 178 of file compiler.hpp.
Definition at line 102 of file compiler.hpp.
Definition at line 110 of file compiler.hpp.
using sycl_offload_entry = _sycl_offload_entry_struct * |
Definition at line 82 of file compiler.hpp.
enum sycl_device_binary_type : uint8_t |
Types of device binary.
Enumerator | |
---|---|
SYCL_DEVICE_BINARY_TYPE_NONE | |
SYCL_DEVICE_BINARY_TYPE_NATIVE | |
SYCL_DEVICE_BINARY_TYPE_SPIRV | |
SYCL_DEVICE_BINARY_TYPE_LLVMIR_BITCODE |
Definition at line 114 of file compiler.hpp.
enum sycl_property_type |
Enumerator | |
---|---|
SYCL_PROPERTY_TYPE_UNKNOWN | |
SYCL_PROPERTY_TYPE_UINT32 | |
SYCL_PROPERTY_TYPE_BYTE_ARRAY | |
SYCL_PROPERTY_TYPE_STRING |
Definition at line 85 of file compiler.hpp.
|
static |
Definition at line 181 of file compiler.hpp.
Referenced by sycl::_V1::detail::DeviceBinariesCollection::getPIDeviceStruct().
|
static |
Definition at line 125 of file compiler.hpp.
Referenced by sycl::_V1::detail::DynRTDeviceBinaryImage::DynRTDeviceBinaryImage(), and sycl::_V1::detail::DeviceBinaryContainer::getPIDeviceBinary().
|
static |
Definition at line 122 of file compiler.hpp.
Referenced by sycl::_V1::detail::DynRTDeviceBinaryImage::DynRTDeviceBinaryImage(), and sycl::_V1::detail::DeviceBinaryContainer::getPIDeviceBinary().