LLVM 19.0.0git
Namespaces | Enumerations | Functions
Utility.h File Reference
#include "llvm/IR/Module.h"
#include "llvm/Object/OffloadBinary.h"

Go to the source code of this file.

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.
 
namespace  llvm::offloading
 

Enumerations

enum  llvm::offloading::OffloadEntryKindFlag : uint32_t {
  llvm::offloading::OffloadGlobalEntry = 0x0 , llvm::offloading::OffloadGlobalManagedEntry = 0x1 , llvm::offloading::OffloadGlobalSurfaceEntry = 0x2 , llvm::offloading::OffloadGlobalTextureEntry = 0x3 ,
  llvm::offloading::OffloadGlobalExtern = 0x1 << 3 , llvm::offloading::OffloadGlobalConstant = 0x1 << 4 , llvm::offloading::OffloadGlobalNormalized = 0x1 << 5
}
 Offloading entry flags for CUDA / HIP. More...
 

Functions

StructTypellvm::offloading::getEntryTy (Module &M)
 Returns the type of the offloading entry we use to store kernels and globals that will be registered with the offloading runtime.
 
void llvm::offloading::emitOffloadingEntry (Module &M, Constant *Addr, StringRef Name, uint64_t Size, int32_t Flags, int32_t Data, StringRef SectionName)
 Create an offloading section struct used to register this global at runtime.
 
std::pair< Constant *, GlobalVariable * > llvm::offloading::getOffloadingEntryInitializer (Module &M, Constant *Addr, StringRef Name, uint64_t Size, int32_t Flags, int32_t Data)
 Create a constant struct initializer used to register this global at runtime.
 
std::pair< GlobalVariable *, GlobalVariable * > llvm::offloading::getOffloadEntryArray (Module &M, StringRef SectionName)
 Creates a pair of globals used to iterate the array of offloading entries by accessing the section variables provided by the linker.