11#ifndef PROTEUS_JIT_INTERFACE_HPP
12#define PROTEUS_JIT_INTERFACE_HPP
34static __attribute__((noinline)) T jit_variable(T v,
int pos = -1) {
36 std::memcpy(&RC, &v,
sizeof(T));
45 const char *Symbol =
"") {
46 assert(Symbol &&
"Expected non-null Symbol");
48 return std::forward<T>(t);
51#if defined(__CUDACC__) || defined(__HIP__)
54shared_array(
size_t N,
size_t ElemSize =
sizeof(T)) {
64inline void disable() {
71#if PROTEUS_ENABLE_HIP || PROTEUS_ENABLE_CUDA
76inline void finalize() {
78#if PROTEUS_ENABLE_HIP || PROTEUS_ENABLE_CUDA
void __jit_init_device()
Definition CompilerInterfaceDevice.cpp:63
void __jit_enable_device()
Definition CompilerInterfaceDevice.cpp:70
void __jit_disable_device()
Definition CompilerInterfaceDevice.cpp:75
__attribute__((used)) void __jit_register_fatbinary(void *Handle
Definition CompilerInterfaceDevice.cpp:37
void __jit_finalize_device()
Definition CompilerInterfaceDevice.cpp:65
void __jit_init_host()
Definition CompilerInterfaceHost.cpp:39
void __jit_disable_host()
Definition CompilerInterfaceHost.cpp:48
void __jit_enable_host()
Definition CompilerInterfaceHost.cpp:43
void __jit_finalize_host()
Definition CompilerInterfaceHost.cpp:41
void __jit_init_host()
Definition CompilerInterfaceHost.cpp:39
void __jit_init_device()
Definition CompilerInterfaceDevice.cpp:63
void __jit_enable_device()
Definition CompilerInterfaceDevice.cpp:70
void __jit_disable_host()
Definition CompilerInterfaceHost.cpp:48
void __jit_enable_host()
Definition CompilerInterfaceHost.cpp:43
void __jit_disable_device()
Definition CompilerInterfaceDevice.cpp:75
void __jit_finalize_host()
Definition CompilerInterfaceHost.cpp:41
void __jit_push_variable(proteus::RuntimeConstant RC)
void __jit_register_lambda(const char *Symbol)
void __jit_finalize_device()
Definition CompilerInterfaceDevice.cpp:65
Definition JitEngine.cpp:20
Definition CompilerInterfaceTypes.h:30