|
Proteus
Programmable JIT compilation and optimization for C/C++ using LLVM
|
#include "proteus/CompilerInterfaceTypes.h"#include <llvm/ADT/DenseMap.h>#include <llvm/ADT/SmallVector.h>#include <llvm/IR/Constants.h>#include <llvm/IR/InstrTypes.h>#include <llvm/IR/LLVMContext.h>#include <llvm/IR/Metadata.h>#include <optional>

Go to the source code of this file.
Classes | |
| struct | proteus::LambdaKernelArgLocation |
Namespaces | |
| namespace | proteus |
Typedefs | |
| using | proteus::LambdaKernelArgLocationVec = SmallVector< LambdaKernelArgLocation, 4 > |
| using | proteus::LambdaKernelArgLocationMap = DenseMap< uint64_t, LambdaKernelArgLocationVec > |
| using | proteus::LambdaCallsiteLocationMap = DenseMap< uint64_t, DenseMap< uint32_t, LambdaKernelArgLocation > > |
| using | proteus::LambdaCallsiteRuntimeConstants = SmallVector< RuntimeConstant, 8 > |
| using | proteus::LambdaCallsiteRuntimeConstantsMap = DenseMap< uint64_t, LambdaCallsiteRuntimeConstants > |
Functions | |
| void | proteus::setLambdaCallsiteMetadata (CallBase &CB, uint64_t LambdaID, uint32_t CallsiteIndex) |
| std::optional< std::pair< uint64_t, uint32_t > > | proteus::getLambdaCallsiteMetadata (const CallBase &CB) |
| std::optional< uint32_t > | proteus::getLambdaCallsiteIndex (const CallBase &CB, uint64_t ExpectedLambdaID) |
| LambdaKernelArgLocationVec | proteus::getOrderedLambdaKernelArgLocations (const DenseMap< uint32_t, LambdaKernelArgLocation > &CallsiteLocations) |
Variables | |
| constexpr char | proteus::LambdaCallsiteMetadataName [] = "proteus.lambda_callsite" |
| constexpr char | proteus::LambdaSchemaMetadataName [] = "proteus.lambda_schema" |