This struct is a record of the device binary information. More...
#include <sycl/detail/pi.h>
Public Attributes | |
uint16_t | Version |
version of this structure - for backward compatibility; all modifications which change order/type/offsets of existing fields should increment the version. More... | |
uint8_t | Kind |
the type of offload model the binary employs; must be 4 for SYCL More... | |
uint8_t | Format |
format of the binary data - SPIR-V, LLVM IR bitcode,... More... | |
const char * | DeviceTargetSpec |
null-terminated string representation of the device's target architecture which holds one of: __SYCL_PI_DEVICE_BINARY_TARGET_UNKNOWN - unknown __SYCL_PI_DEVICE_BINARY_TARGET_SPIRV32 - general value for 32-bit OpenCL devices __SYCL_PI_DEVICE_BINARY_TARGET_SPIRV64 - general value for 64-bit OpenCL devices __SYCL_PI_DEVICE_BINARY_TARGET_SPIRV64_X86_64 - 64-bit OpenCL CPU device __SYCL_PI_DEVICE_BINARY_TARGET_SPIRV64_GEN - GEN GPU device (64-bit OpenCL) __SYCL_PI_DEVICE_BINARY_TARGET_SPIRV64_FPGA - 64-bit OpenCL FPGA device More... | |
const char * | CompileOptions |
a null-terminated string; target- and compiler-specific options which are suggested to use to "compile" program at runtime More... | |
const char * | LinkOptions |
a null-terminated string; target- and compiler-specific options which are suggested to use to "link" program at runtime More... | |
const char * | ManifestStart |
Pointer to the manifest data start. More... | |
const char * | ManifestEnd |
Pointer to the manifest data end. More... | |
const unsigned char * | BinaryStart |
Pointer to the target code start. More... | |
const unsigned char * | BinaryEnd |
Pointer to the target code end. More... | |
_pi_offload_entry | EntriesBegin |
the offload entry table More... | |
_pi_offload_entry | EntriesEnd |
pi_device_binary_property_set | PropertySetsBegin |
pi_device_binary_property_set | PropertySetsEnd |
This struct is a record of the device binary information.
If the Kind field denotes a portable binary type (SPIR-V or LLVM IR), the DeviceTargetSpec field can still be specific and denote e.g. FPGA target. It must match the __tgt_device_image structure generated by the clang-offload-wrapper tool when their Version field match.
const unsigned char* pi_device_binary_struct::BinaryEnd |
Pointer to the target code end.
Definition at line 876 of file pi.h.
Referenced by sycl::_V1::detail::ProgramManager::createPIProgram(), sycl::_V1::detail::DynRTDeviceBinaryImage::DynRTDeviceBinaryImage(), and sycl::_V1::detail::DeviceBinaryContainer::getPIDeviceBinary().
const unsigned char* pi_device_binary_struct::BinaryStart |
Pointer to the target code start.
Definition at line 874 of file pi.h.
Referenced by sycl::_V1::detail::ProgramManager::createPIProgram(), sycl::_V1::detail::RTDeviceBinaryImage::dump(), sycl::_V1::detail::DynRTDeviceBinaryImage::DynRTDeviceBinaryImage(), sycl::_V1::detail::PersistentDeviceCodeCache::getCacheItemPath(), sycl::_V1::detail::DeviceBinaryContainer::getPIDeviceBinary(), and sycl::_V1::detail::RTDeviceBinaryImage::init().
const char* pi_device_binary_struct::CompileOptions |
a null-terminated string; target- and compiler-specific options which are suggested to use to "compile" program at runtime
Definition at line 865 of file pi.h.
Referenced by sycl::_V1::detail::DynRTDeviceBinaryImage::DynRTDeviceBinaryImage(), and sycl::_V1::detail::DeviceBinaryContainer::getPIDeviceBinary().
const char* pi_device_binary_struct::DeviceTargetSpec |
null-terminated string representation of the device's target architecture which holds one of: __SYCL_PI_DEVICE_BINARY_TARGET_UNKNOWN - unknown __SYCL_PI_DEVICE_BINARY_TARGET_SPIRV32 - general value for 32-bit OpenCL devices __SYCL_PI_DEVICE_BINARY_TARGET_SPIRV64 - general value for 64-bit OpenCL devices __SYCL_PI_DEVICE_BINARY_TARGET_SPIRV64_X86_64 - 64-bit OpenCL CPU device __SYCL_PI_DEVICE_BINARY_TARGET_SPIRV64_GEN - GEN GPU device (64-bit OpenCL) __SYCL_PI_DEVICE_BINARY_TARGET_SPIRV64_FPGA - 64-bit OpenCL FPGA device
Definition at line 862 of file pi.h.
Referenced by sycl::_V1::detail::DynRTDeviceBinaryImage::DynRTDeviceBinaryImage(), sycl::_V1::detail::getBinImageState(), sycl::_V1::detail::ProgramManager::getDeviceImage(), and sycl::_V1::detail::DeviceBinaryContainer::getPIDeviceBinary().
_pi_offload_entry pi_device_binary_struct::EntriesBegin |
the offload entry table
Definition at line 878 of file pi.h.
Referenced by sycl::_V1::detail::ProgramManager::addImages(), sycl::_V1::detail::DynRTDeviceBinaryImage::DynRTDeviceBinaryImage(), and sycl::_V1::detail::DeviceBinaryContainer::getPIDeviceBinary().
_pi_offload_entry pi_device_binary_struct::EntriesEnd |
Definition at line 879 of file pi.h.
Referenced by sycl::_V1::detail::ProgramManager::addImages(), sycl::_V1::detail::DynRTDeviceBinaryImage::DynRTDeviceBinaryImage(), and sycl::_V1::detail::DeviceBinaryContainer::getPIDeviceBinary().
uint8_t pi_device_binary_struct::Format |
format of the binary data - SPIR-V, LLVM IR bitcode,...
Definition at line 850 of file pi.h.
Referenced by sycl::_V1::detail::DynRTDeviceBinaryImage::DynRTDeviceBinaryImage(), sycl::_V1::detail::DeviceBinaryContainer::getPIDeviceBinary(), and sycl::_V1::detail::RTDeviceBinaryImage::init().
uint8_t pi_device_binary_struct::Kind |
the type of offload model the binary employs; must be 4 for SYCL
Definition at line 848 of file pi.h.
Referenced by sycl::_V1::detail::DynRTDeviceBinaryImage::DynRTDeviceBinaryImage(), and sycl::_V1::detail::DeviceBinaryContainer::getPIDeviceBinary().
const char* pi_device_binary_struct::LinkOptions |
a null-terminated string; target- and compiler-specific options which are suggested to use to "link" program at runtime
Definition at line 868 of file pi.h.
Referenced by sycl::_V1::detail::DynRTDeviceBinaryImage::DynRTDeviceBinaryImage(), and sycl::_V1::detail::DeviceBinaryContainer::getPIDeviceBinary().
const char* pi_device_binary_struct::ManifestEnd |
Pointer to the manifest data end.
Definition at line 872 of file pi.h.
Referenced by sycl::_V1::detail::DynRTDeviceBinaryImage::DynRTDeviceBinaryImage(), and sycl::_V1::detail::DeviceBinaryContainer::getPIDeviceBinary().
const char* pi_device_binary_struct::ManifestStart |
Pointer to the manifest data start.
Definition at line 870 of file pi.h.
Referenced by sycl::_V1::detail::DynRTDeviceBinaryImage::DynRTDeviceBinaryImage(), and sycl::_V1::detail::DeviceBinaryContainer::getPIDeviceBinary().
pi_device_binary_property_set pi_device_binary_struct::PropertySetsBegin |
Definition at line 882 of file pi.h.
Referenced by sycl::_V1::detail::DeviceBinaryContainer::getPIDeviceBinary().
pi_device_binary_property_set pi_device_binary_struct::PropertySetsEnd |
Definition at line 883 of file pi.h.
Referenced by sycl::_V1::detail::DeviceBinaryContainer::getPIDeviceBinary().
uint16_t pi_device_binary_struct::Version |
version of this structure - for backward compatibility; all modifications which change order/type/offsets of existing fields should increment the version.
Definition at line 846 of file pi.h.
Referenced by sycl::_V1::detail::DynRTDeviceBinaryImage::DynRTDeviceBinaryImage(), and sycl::_V1::detail::DeviceBinaryContainer::getPIDeviceBinary().