20 #define __SYCL_DEVICE_BINARY_TARGET_UNKNOWN "<unknown>"
22 #define __SYCL_DEVICE_BINARY_TARGET_SPIRV32 "spir"
24 #define __SYCL_DEVICE_BINARY_TARGET_SPIRV64 "spir64"
27 #define __SYCL_DEVICE_BINARY_TARGET_SPIRV64_X86_64 "spir64_x86_64"
28 #define __SYCL_DEVICE_BINARY_TARGET_SPIRV64_GEN "spir64_gen"
29 #define __SYCL_DEVICE_BINARY_TARGET_SPIRV64_FPGA "spir64_fpga"
31 #define __SYCL_DEVICE_BINARY_TARGET_NVPTX64 "nvptx64"
32 #define __SYCL_DEVICE_BINARY_TARGET_AMDGCN "amdgcn"
33 #define __SYCL_DEVICE_BINARY_TARGET_NATIVE_CPU "native_cpu"
39 #define __SYCL_PROPERTY_SET_SPEC_CONST_MAP "SYCL/specialization constants"
42 #define __SYCL_PROPERTY_SET_SPEC_CONST_DEFAULT_VALUES_MAP \
43 "SYCL/specialization constants default values"
45 #define __SYCL_PROPERTY_SET_DEVICELIB_REQ_MASK "SYCL/devicelib req mask"
47 #define __SYCL_PROPERTY_SET_KERNEL_PARAM_OPT_INFO "SYCL/kernel param opt"
49 #define __SYCL_PROPERTY_SET_PROGRAM_METADATA "SYCL/program metadata"
51 #define __SYCL_PROPERTY_SET_SYCL_MISC_PROP "SYCL/misc properties"
53 #define __SYCL_PROPERTY_SET_SYCL_ASSERT_USED "SYCL/assert used"
55 #define __SYCL_PROPERTY_SET_SYCL_EXPORTED_SYMBOLS "SYCL/exported symbols"
57 #define __SYCL_PROPERTY_SET_SYCL_IMPORTED_SYMBOLS "SYCL/imported symbols"
59 #define __SYCL_PROPERTY_SET_SYCL_DEVICE_GLOBALS "SYCL/device globals"
61 #define __SYCL_PROPERTY_SET_SYCL_DEVICE_REQUIREMENTS "SYCL/device requirements"
63 #define __SYCL_PROPERTY_SET_SYCL_HOST_PIPES "SYCL/host pipes"
65 #define __SYCL_PROPERTY_SET_SYCL_VIRTUAL_FUNCTIONS "SYCL/virtual functions"
69 #define __SYCL_PROGRAM_METADATA_TAG_REQD_WORK_GROUP_SIZE "@reqd_work_group_size"
70 #define __SYCL_PROGRAM_METADATA_GLOBAL_ID_MAPPING "@global_id_mapping"
72 #define __SYCL_PROGRAM_METADATA_TAG_NEED_FINALIZATION "Requires finalization"
@ SYCL_PROPERTY_TYPE_UNKNOWN
@ SYCL_PROPERTY_TYPE_STRING
@ SYCL_PROPERTY_TYPE_BYTE_ARRAY
@ SYCL_PROPERTY_TYPE_UINT32
static const uint16_t SYCL_DEVICE_BINARIES_VERSION
sycl_device_binary_type
Types of device binary.
@ SYCL_DEVICE_BINARY_TYPE_SPIRV
@ SYCL_DEVICE_BINARY_TYPE_LLVMIR_BITCODE
@ SYCL_DEVICE_BINARY_TYPE_NONE
@ SYCL_DEVICE_BINARY_TYPE_NATIVE
static const uint8_t SYCL_DEVICE_BINARY_OFFLOAD_KIND_SYCL
static const uint16_t SYCL_DEVICE_BINARY_VERSION
sycl_device_binary_property PropertiesBegin
sycl_device_binary_property PropertiesEnd
This struct is a record of all the device code that may be offloaded.
uint16_t NumDeviceBinaries
Number of device binaries in this descriptor.
sycl_offload_entry * HostEntriesEnd
sycl_offload_entry * HostEntriesBegin
the offload entry table (not used, for compatibility with OpenMP)
uint16_t Version
version of this structure - for backward compatibility; all modifications which change order/type/off...
sycl_device_binary DeviceBinaries
Device binaries data.
This struct is a record of the device binary information.
uint8_t Kind
the type of offload model the binary employs; must be 4 for SYCL
sycl_offload_entry EntriesEnd
const char * LinkOptions
a null-terminated string; target- and compiler-specific options which are suggested to use to "link" ...
sycl_offload_entry EntriesBegin
the offload entry table
const char * ManifestEnd
Pointer to the manifest data end.
const char * CompileOptions
a null-terminated string; target- and compiler-specific options which are suggested to use to "compil...
const unsigned char * BinaryStart
Pointer to the target code start.
uint8_t Format
format of the binary data - SPIR-V, LLVM IR bitcode,...
sycl_device_binary_property_set PropertySetsBegin
sycl_device_binary_property_set PropertySetsEnd
const char * ManifestStart
Pointer to the manifest data start.
const char * DeviceTargetSpec
null-terminated string representation of the device's target architecture which holds one of: __SYCL_...
uint16_t Version
version of this structure - for backward compatibility; all modifications which change order/type/off...
const unsigned char * BinaryEnd
Pointer to the target code end.