Proteus
Programmable JIT compilation and optimization for C/C++ using LLVM
Loading...
Searching...
No Matches
Classes | Namespaces | Macros | Functions | Variables
JitInterface.h File Reference
#include "proteus/CompilerInterfaceTypes.h"
#include "proteus/Init.h"
#include <cassert>
#include <cstdint>
#include <cstring>
#include <type_traits>
#include <utility>
Include dependency graph for JitInterface.h:

Go to the source code of this file.

Classes

struct  proteus::detail::LambdaFunctorWrapper< T >
 
struct  proteus::detail::is_lambda_functor_wrapper< T >
 
struct  proteus::detail::is_lambda_functor_wrapper< LambdaFunctorWrapper< FunctorID, Lambda > >
 

Namespaces

namespace  proteus
 
namespace  proteus::detail
 

Macros

#define PROTEUS_HOST_DEVICE
 

Functions

 __attribute__ ((used)) void __proteus_register_lambda_runtime_constant(int32_t Type
 
void __proteus_take_address (void const *) noexcept
 
template<typename T >
 proteus::__attribute__ ((noinline)) void jit_arg(T V) noexcept
 
constexpr std::uint64_t proteus::detail::fnv1a64 (const char *s)
 
template<class Lambda >
constexpr std::uint64_t proteus::detail::functor_id ()
 
template<std::uint64_t FunctorId, typename L >
PROTEUS_HOST_DEVICE auto proteus::detail::tag_functor (L &&lambda)
 
static ID auto proteus::detail::__register_lambda_impl (T &&t) noexcept
 
template<class L >
auto proteus::__attribute__ ((annotate("proteus.register_call"))) register_lambda(L &&lambda) noexcept
 

Variables

int32_t Pos
 
int32_t int32_t Offset
 
int32_t int32_t const void * ValuePtr
 
int32_t int32_t const void uint64_t functor_id
 
size_t proteus::NumElts
 
size_t std::remove_pointer< T >::type proteus::Velem = 0) noexcept
 

Macro Definition Documentation

◆ PROTEUS_HOST_DEVICE

#define PROTEUS_HOST_DEVICE

Function Documentation

◆ __attribute__()

__attribute__ ( (used)  ) const

◆ __proteus_take_address()

void __proteus_take_address ( void const *  )
noexcept

Variable Documentation

◆ functor_id

int32_t int32_t const void uint64_t functor_id

◆ Offset

int32_t int32_t Offset

◆ Pos

int32_t Pos

◆ ValuePtr

int32_t int32_t const void* ValuePtr