#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 136 of file device_binary_image.hpp.
|
delete |
|
default |
|
inlinevirtual |
Definition at line 145 of file device_binary_image.hpp.
|
virtual |
Definition at line 134 of file device_binary_image.cpp.
References Bin, pi_device_binary_struct::BinaryStart, and getSize().
|
inlineprotected |
Definition at line 228 of file device_binary_image.hpp.
References Bin.
Referenced by sycl::_V1::detail::ProgramManager::build(), sycl::_V1::detail::ProgramManager::getBuiltPIProgram(), and getRawData().
|
inline |
Definition at line 212 of file device_binary_image.hpp.
References AssertUsed.
|
inline |
Definition at line 161 of file device_binary_image.hpp.
References Bin, and pi_device_binary_struct::CompileOptions.
Referenced by sycl::_V1::detail::appendCompileOptionsFromImage().
|
inline |
Definition at line 215 of file device_binary_image.hpp.
References DeviceGlobals.
|
inline |
Definition at line 208 of file device_binary_image.hpp.
References DeviceLibReqMask.
Referenced by sycl::_V1::detail::ProgramManager::getDeviceLibReqMask().
|
inline |
Definition at line 216 of file device_binary_image.hpp.
References DeviceRequirements.
Referenced by sycl::_V1::detail::checkDevSupportDeviceRequirements().
|
inline |
Definition at line 214 of file device_binary_image.hpp.
References ExportedSymbols.
|
inline |
Returns the format of the binary image.
Definition at line 172 of file device_binary_image.hpp.
Referenced by sycl::_V1::detail::ProgramManager::build(), sycl::_V1::detail::ProgramManager::createPIProgram(), sycl::_V1::detail::ProgramManager::getBuiltPIProgram(), and supportsSpecConstants().
|
inline |
Definition at line 219 of file device_binary_image.hpp.
References HostPipes.
|
inline |
Definition at line 221 of file device_binary_image.hpp.
References Bin.
Referenced by sycl::_V1::detail::ProgramManager::build(), sycl::_V1::detail::ProgramManager::getBuiltPIProgram(), and sycl::_V1::detail::context_impl::getProgramForHostPipe().
|
inline |
Definition at line 209 of file device_binary_image.hpp.
References KernelParamOptInfo.
|
inline |
Definition at line 166 of file device_binary_image.hpp.
References Bin, and pi_device_binary_struct::LinkOptions.
Referenced by sycl::_V1::detail::appendLinkOptionsFromImage().
|
inline |
Definition at line 213 of file device_binary_image.hpp.
References ProgramMetadata.
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 140 of file device_binary_image.cpp.
References __SYCL_PI_PROPERTY_SET_SYCL_MISC_PROP, sycl::_V1::detail::RTDeviceBinaryImage::PropertyRange::begin(), Bin, sycl::_V1::detail::RTDeviceBinaryImage::PropertyRange::end(), and sycl::_V1::detail::RTDeviceBinaryImage::PropertyRange::isAvailable().
Referenced by sycl::_V1::detail::appendCompileOptionsForGRFSizeProperties(), sycl::_V1::detail::getUint32PropAsBool(), sycl::_V1::detail::getUint32PropAsOptStr(), and sycl::_V1::detail::device_image_impl::specialization_constants_replaced_with_default().
|
inline |
Definition at line 151 of file device_binary_image.hpp.
References get().
Referenced by sycl::_V1::detail::device_image_impl::all_specialization_constant_native(), sycl::_V1::detail::CheckJITCompilationForImage(), 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 156 of file device_binary_image.hpp.
References Bin, pi_device_binary_struct::BinaryEnd, and pi_device_binary_struct::BinaryStart.
Referenced by sycl::_V1::detail::ProgramManager::createPIProgram(), dump(), sycl::_V1::detail::PersistentDeviceCodeCache::getCacheItemPath(), and init().
|
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 204 of file device_binary_image.hpp.
References SpecConstIDMap.
Referenced by sycl::_V1::detail::program_impl::flush_spec_constants().
|
inline |
Definition at line 205 of file device_binary_image.hpp.
References SpecConstDefaultValuesMap.
|
protected |
Definition at line 155 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, AssertUsed, Bin, pi_device_binary_struct::BinaryStart, DeviceGlobals, DeviceLibReqMask, DeviceRequirements, ExportedSymbols, pi_device_binary_struct::Format, Format, sycl::_V1::detail::pi::getBinaryImageFormat(), getSize(), HostPipes, KernelParamOptInfo, PI_DEVICE_BINARY_TYPE_NONE, ProgramMetadata, SpecConstDefaultValuesMap, and SpecConstIDMap.
Referenced by sycl::_V1::detail::DynRTDeviceBinaryImage::DynRTDeviceBinaryImage(), and RTDeviceBinaryImage().
|
delete |
|
default |
|
virtual |
Reimplemented in sycl::_V1::detail::DynRTDeviceBinaryImage.
Definition at line 100 of file device_binary_image.cpp.
References Bin, pi_device_binary_struct::BinaryEnd, pi_device_binary_struct::BinaryStart, std::cerr, pi_device_binary_struct::CompileOptions, pi_device_binary_struct::DeviceTargetSpec, pi_device_binary_struct::EntriesBegin, pi_device_binary_struct::EntriesEnd, pi_device_binary_struct::Format, pi_device_binary_struct::Kind, pi_device_binary_struct::LinkOptions, _pi_device_binary_property_set_struct::Name, _pi_device_binary_property_set_struct::PropertiesBegin, _pi_device_binary_property_set_struct::PropertiesEnd, pi_device_binary_struct::PropertySetsBegin, pi_device_binary_struct::PropertySetsEnd, and pi_device_binary_struct::Version.
Referenced by sycl::_V1::detail::ProgramManager::getDeviceImage(), and sycl::_V1::detail::DynRTDeviceBinaryImage::print().
|
inline |
Definition at line 147 of file device_binary_image.hpp.
References getFormat(), and PI_DEVICE_BINARY_TYPE_SPIRV.
Referenced by sycl::_V1::detail::ProgramManager::flushSpecConstants(), and sycl::_V1::detail::ProgramManager::getBuiltPIProgram().
|
protected |
Definition at line 237 of file device_binary_image.hpp.
Referenced by getAssertUsed(), and init().
|
protected |
Definition at line 230 of file device_binary_image.hpp.
Referenced by dump(), sycl::_V1::detail::DynRTDeviceBinaryImage::DynRTDeviceBinaryImage(), get(), getCompileOptions(), getFormat(), getImageID(), getLinkOptions(), getProperty(), getSize(), init(), print(), RTDeviceBinaryImage(), and sycl::_V1::detail::DynRTDeviceBinaryImage::~DynRTDeviceBinaryImage().
|
protected |
Definition at line 240 of file device_binary_image.hpp.
Referenced by getDeviceGlobals(), and init().
|
protected |
Definition at line 235 of file device_binary_image.hpp.
Referenced by getDeviceLibReqMask(), and init().
|
protected |
Definition at line 241 of file device_binary_image.hpp.
Referenced by getDeviceRequirements(), and init().
|
protected |
Definition at line 239 of file device_binary_image.hpp.
Referenced by getExportedSymbols(), and init().
|
protected |
Definition at line 232 of file device_binary_image.hpp.
Referenced by getFormat(), and init().
|
protected |
Definition at line 242 of file device_binary_image.hpp.
Referenced by getHostPipes(), and init().
|
protected |
Definition at line 236 of file device_binary_image.hpp.
Referenced by getKernelParamOptInfo(), and init().
|
protected |
Definition at line 238 of file device_binary_image.hpp.
Referenced by getProgramMetadata(), and init().
|
protected |
Definition at line 234 of file device_binary_image.hpp.
Referenced by getSpecConstantsDefaultValues(), and init().
|
protected |
Definition at line 233 of file device_binary_image.hpp.
Referenced by getSpecConstants(), and init().