llvm::offloading

Helpers for embedding and registering device images with offload runtimes.

Namespaces

NameDescription
amdgpu AMDGPU-specific offloading helpers for image compatibility and metadata.
intel Intel-specific helpers for containerizing OpenMP SPIR-V images.
sycl SYCL OffloadBinary symbol-table serialization helpers.

Types

NameDescription
EntryTy This is the record of an object that just be registered with the offloading runtime.
SYCLJITOptions Compiler and linker options encoded for SYCL runtime JIT compilation.

Type Aliases

NameDescription
ByteArray Contiguous sequence of bytes used as a property value payload.
EntryArrayTy Pair of constants pointing to the begin and end of an offload entry array.
PropertySet Named map of property values within one property set.
PropertySetRegistry Named map of property sets forming a property set registry.
PropertyValue Single property value, either a 32-bit integer or a byte array.

Enums

NameDescription
OffloadEntryKindFlag Offloading entry flags for CUDA / HIP. The first three bits indicate the type of entry while the others are a bit field for additional information.

Functions

NameDescription
containerizeImage Containerizes an image within an OffloadBinary image.
emitOffloadingEntry Create an offloading entry used to register this global at runtime.
getEntryTy Returns the type of the offloading entry we use to store kernels and globals that will be registered with the offloading runtime.
getOffloadEntryArray Creates a pair of constants used to iterate the array of offloading entries by accessing the section variables provided by the linker.
getOffloadEntrySection Returns the section name for offloading entries based on the target triple.
getOffloadingEntryInitializer Create a constant struct initializer used to register this global at runtime.
readPropertiesFromJSON Parses a property set registry from a JSON buffer.
wrapCudaBinary Wraps the input fatbinary image into the module M as global symbols and registers the images with the CUDA runtime.
wrapHIPBinary Wraps the input bundled image into the module M as global symbols and registers the images with the HIP runtime.
wrapOpenMPBinaries Wraps the input device images into the module M as global symbols and registers the images with the OpenMP Offloading runtime libomptarget.
wrapSYCLBinaries Wraps OffloadBinaries in the given Buffers into the module M as global symbols and registers the images with the SYCL Runtime.
writePropertiesToJSON Serializes a property set registry to JSON on the given stream.