#include <detail/device_binary_image.hpp>
Classes | |
class | PropertyRange |
Protected Member Functions | |
void | init (pi_device_binary Bin) |
pi_device_binary | get () const |
Definition at line 82 of file device_binary_image.hpp.
|
inline |
Definition at line 135 of file device_binary_image.hpp.
|
inline |
Definition at line 137 of file device_binary_image.hpp.
|
delete |
|
default |
|
inlinevirtual |
Definition at line 151 of file device_binary_image.hpp.
|
virtual |
Definition at line 135 of file device_binary_image.cpp.
References pi_device_binary_struct::BinaryStart.
|
inlineprotected |
Definition at line 234 of file device_binary_image.hpp.
Referenced by sycl::_V1::detail::ProgramManager::getBuiltPIProgram(), and sycl::_V1::detail::ProgramManager::getDeviceImage().
|
inline |
Definition at line 218 of file device_binary_image.hpp.
|
inline |
Definition at line 167 of file device_binary_image.hpp.
Referenced by sycl::_V1::detail::appendCompileOptionsFromImage().
|
inline |
Definition at line 221 of file device_binary_image.hpp.
Referenced by sycl::_V1::detail::appendCompileOptionsFromImage().
|
inline |
Definition at line 214 of file device_binary_image.hpp.
Referenced by sycl::_V1::detail::ProgramManager::getDeviceLibReqMask().
|
inline |
Definition at line 222 of file device_binary_image.hpp.
Referenced by sycl::_V1::detail::doesDevSupportDeviceRequirements(), and sycl::_V1::detail::ProgramManager::getBuiltPIProgram().
|
inline |
Definition at line 220 of file device_binary_image.hpp.
|
inline |
Returns the format of the binary image.
Definition at line 178 of file device_binary_image.hpp.
Referenced by sycl::_V1::detail::ProgramManager::createPIProgram(), and sycl::_V1::detail::ProgramManager::getBuiltPIProgram().
|
inline |
Definition at line 225 of file device_binary_image.hpp.
|
inline |
Definition at line 227 of file device_binary_image.hpp.
Referenced by sycl::_V1::detail::ProgramManager::getBuiltPIProgram(), and sycl::_V1::detail::context_impl::getProgramForHostPipe().
|
inline |
Definition at line 215 of file device_binary_image.hpp.
|
inline |
Definition at line 172 of file device_binary_image.hpp.
Referenced by sycl::_V1::detail::appendLinkOptionsFromImage().
|
inline |
Definition at line 149 of file device_binary_image.hpp.
|
inline |
Definition at line 219 of file device_binary_image.hpp.
Referenced by sycl::_V1::detail::ProgramManager::createPIProgram(), and sycl::_V1::detail::ProgramManager::getOrCreatePIProgram().
pi_device_binary_property sycl::_V1::detail::RTDeviceBinaryImage::getProperty | ( | const char * | PropName | ) | const |
Returns a single property from SYCL_MISC_PROP category.
Definition at line 141 of file device_binary_image.cpp.
References __SYCL_PI_PROPERTY_SET_SYCL_MISC_PROP, sycl::_V1::detail::RTDeviceBinaryImage::PropertyRange::begin(), sycl::_V1::detail::RTDeviceBinaryImage::PropertyRange::end(), and sycl::_V1::detail::RTDeviceBinaryImage::PropertyRange::isAvailable().
Referenced by sycl::_V1::detail::appendCompileOptionsForRegAllocMode(), sycl::_V1::detail::getUint32PropAsBool(), and sycl::_V1::detail::getUint32PropAsOptStr().
|
inline |
Definition at line 157 of file device_binary_image.hpp.
References std::get().
Referenced by sycl::_V1::detail::compatibleWithDevice(), sycl::_V1::detail::ProgramManager::createPIProgram(), sycl::_V1::detail::ProgramManager::flushSpecConstants(), sycl::_V1::detail::getBinImageState(), sycl::_V1::detail::PersistentDeviceCodeCache::getCacheItemPath(), and sycl::_V1::detail::ProgramManager::getDeviceImage().
|
inline |
Definition at line 162 of file device_binary_image.hpp.
Referenced by sycl::_V1::detail::ProgramManager::createPIProgram(), and sycl::_V1::detail::PersistentDeviceCodeCache::getCacheItemPath().
|
inline |
Gets the iterator range over specialization constants in this binary image.
For each property pointed to by an iterator within the range, the name of the property is the specialization constant symbolic ID and the value is a list of 3-element tuples of 32-bit unsigned integers, describing the specialization constant. This is done in order to unify representation of both scalar and composite specialization constants: composite specialization constant is represented by its leaf elements, so for scalars the list contains only a single tuple, while for composite there might be more of them. Each tuple consists of ID of scalar specialization constant, its location within a composite (offset in bytes from the beginning or 0 if it is not an element of a composite specialization constant) and its size. For example, for the following structure: struct A { int a; float b; }; struct POD { A a[2]; int b; }; List of tuples will look like: { ID0, 0, 4 }, // .a[0].a { ID1, 4, 4 }, // .a[0].b { ID2, 8, 4 }, // .a[1].a { ID3, 12, 4 }, // .a[1].b { ID4, 16, 4 }, // .b And for an interger specialization constant, the list of tuples will look like: { ID5, 0, 4 }
Definition at line 210 of file device_binary_image.hpp.
Referenced by sycl::_V1::detail::program_impl::flush_spec_constants().
|
inline |
Definition at line 211 of file device_binary_image.hpp.
|
protected |
Definition at line 156 of file device_binary_image.cpp.
References __SYCL_PI_PROPERTY_SET_DEVICELIB_REQ_MASK, __SYCL_PI_PROPERTY_SET_KERNEL_PARAM_OPT_INFO, __SYCL_PI_PROPERTY_SET_PROGRAM_METADATA, __SYCL_PI_PROPERTY_SET_SPEC_CONST_DEFAULT_VALUES_MAP, __SYCL_PI_PROPERTY_SET_SPEC_CONST_MAP, __SYCL_PI_PROPERTY_SET_SYCL_ASSERT_USED, __SYCL_PI_PROPERTY_SET_SYCL_DEVICE_GLOBALS, __SYCL_PI_PROPERTY_SET_SYCL_DEVICE_REQUIREMENTS, __SYCL_PI_PROPERTY_SET_SYCL_EXPORTED_SYMBOLS, __SYCL_PI_PROPERTY_SET_SYCL_HOST_PIPES, pi_device_binary_struct::BinaryStart, pi_device_binary_struct::Format, sycl::_V1::detail::pi::getBinaryImageFormat(), and PI_DEVICE_BINARY_TYPE_NONE.
Referenced by sycl::_V1::detail::DynRTDeviceBinaryImage::DynRTDeviceBinaryImage().
|
delete |
|
default |
|
virtual |
Reimplemented in sycl::_V1::detail::DynRTDeviceBinaryImage.
Definition at line 100 of file device_binary_image.cpp.
References std::cerr, _pi_device_binary_property_set_struct::Name, _pi_device_binary_property_set_struct::PropertiesBegin, and _pi_device_binary_property_set_struct::PropertiesEnd.
Referenced by sycl::_V1::detail::ProgramManager::getDeviceImage().
|
inline |
Definition at line 153 of file device_binary_image.hpp.
References PI_DEVICE_BINARY_TYPE_SPIRV.
Referenced by sycl::_V1::detail::ProgramManager::flushSpecConstants(), and sycl::_V1::detail::ProgramManager::getBuiltPIProgram().
|
protected |
Definition at line 244 of file device_binary_image.hpp.
|
protected |
Definition at line 236 of file device_binary_image.hpp.
Referenced by sycl::_V1::detail::DynRTDeviceBinaryImage::DynRTDeviceBinaryImage(), and sycl::_V1::detail::DynRTDeviceBinaryImage::~DynRTDeviceBinaryImage().
|
protected |
Definition at line 247 of file device_binary_image.hpp.
|
protected |
Definition at line 242 of file device_binary_image.hpp.
|
protected |
Definition at line 248 of file device_binary_image.hpp.
|
protected |
Definition at line 246 of file device_binary_image.hpp.
|
protected |
Definition at line 239 of file device_binary_image.hpp.
|
protected |
Definition at line 249 of file device_binary_image.hpp.
|
protected |
Definition at line 243 of file device_binary_image.hpp.
|
protected |
Definition at line 237 of file device_binary_image.hpp.
|
protected |
Definition at line 245 of file device_binary_image.hpp.
|
protected |
Definition at line 241 of file device_binary_image.hpp.
|
protected |
Definition at line 240 of file device_binary_image.hpp.