Proteus
Programmable JIT compilation and optimization for C/C++ using LLVM
Loading...
Searching...
No Matches
JITPassPluginRegistry.h
Go to the documentation of this file.
1#ifndef PROTEUS_JIT_PASS_PLUGIN_REGISTRY_H
2#define PROTEUS_JIT_PASS_PLUGIN_REGISTRY_H
3
4#include "proteus/Init.h"
5
6#include <optional>
7#include <string>
8#include <vector>
9
10namespace proteus {
11
13 std::string Pipeline;
15
16 bool operator==(const JITPassPluginInsertion &Other) const {
17 return Pipeline == Other.Pipeline && Position == Other.Position;
18 }
19};
20
22 std::string Path;
23 std::optional<JITPassPluginInsertion> Insertion;
24 std::string Fingerprint;
25};
26
27void registerJITPassPluginImpl(const std::string &PluginPath,
28 std::optional<JITPassPluginInsertion> Insertion);
30std::vector<JITPassPluginConfig> getJITPassPluginConfigs();
31
32} // namespace proteus
33
34#endif
Definition MemoryCache.h:27
void clearJITPassPluginsImpl()
Definition JITPassPluginRegistry.cpp:103
std::vector< JITPassPluginConfig > getJITPassPluginConfigs()
Definition JITPassPluginRegistry.cpp:105
JITPassPluginPosition
Definition Init.h:21
void registerJITPassPluginImpl(const std::string &PluginPath, std::optional< JITPassPluginInsertion > Insertion)
Definition JITPassPluginRegistry.cpp:96
Definition JITPassPluginRegistry.h:21
std::optional< JITPassPluginInsertion > Insertion
Definition JITPassPluginRegistry.h:23
std::string Path
Definition JITPassPluginRegistry.h:22
std::string Fingerprint
Definition JITPassPluginRegistry.h:24
Definition JITPassPluginRegistry.h:12
JITPassPluginPosition Position
Definition JITPassPluginRegistry.h:14
bool operator==(const JITPassPluginInsertion &Other) const
Definition JITPassPluginRegistry.h:16
std::string Pipeline
Definition JITPassPluginRegistry.h:13