11#ifndef PROTEUS_JITENGINEDEVICECUDA_HPP
12#define PROTEUS_JITENGINEDEVICECUDA_HPP
16#include <llvm/ADT/DenseMap.h>
17#include <llvm/ADT/SmallVector.h>
void const char * ModuleId
Definition CompilerInterfaceDevice.cpp:31
void char * KernelName
Definition CompilerInterfaceDevice.cpp:50
Definition JitEngineDevice.hpp:79
Definition Hashing.hpp:20
Definition JitEngineDeviceCUDA.hpp:31
static JitEngineDeviceCUDA & instance()
Definition JitEngineDeviceCUDA.cpp:27
void setLaunchBoundsForKernel(Module &M, Function &F, size_t GridSize, int BlockSize)
void extractModules(BinaryInfo &BinInfo)
Definition JitEngineDeviceCUDA.cpp:114
std::unique_ptr< MemoryBuffer > compileOnly(Module &M, bool DisableIROpt=false)
Definition JitEngineDeviceCUDA.cpp:183
void codegenPTX(Module &M, StringRef DeviceArch, SmallVectorImpl< char > &PTXStr)
HashT getModuleHash(BinaryInfo &BinInfo)
Definition JitEngineDeviceCUDA.cpp:69
std::unique_ptr< Module > tryExtractKernelModule(BinaryInfo &BinInfo, StringRef KernelName, LLVMContext &Ctx)
Definition JitEngineDeviceCUDA.cpp:106
void * resolveDeviceGlobalAddr(const void *Addr)
Definition JitEngineDeviceCUDA.cpp:23
cudaError_t launchKernelFunction(CUfunction KernelFunc, dim3 GridDim, dim3 BlockDim, void **KernelArgs, uint64_t ShmemSize, CUstream Stream)
Definition JitEngineDeviceCUDA.cpp:147
CUfunction getKernelFunctionFromImage(StringRef KernelName, const void *Image)
Definition JitEngineDeviceCUDA.cpp:139
Definition JitEngineDevice.hpp:245
std::string DeviceArch
Definition JitEngineDevice.hpp:529
Definition BuiltinsCUDA.cpp:4
T getRuntimeConstantValue(void *Arg)
Definition CompilerInterfaceRuntimeConstantInfo.h:114
CUfunction KernelFunction_t
Definition JitEngineDeviceCUDA.hpp:28
CUstream DeviceStream_t
Definition JitEngineDeviceCUDA.hpp:27
cudaError_t DeviceError_t
Definition JitEngineDeviceCUDA.hpp:26
Definition JitEngineDevice.hpp:243