Proteus
Programmable JIT compilation and optimization for C/C++ using LLVM
Loading...
Searching...
No Matches
CompilerSync.h
Go to the documentation of this file.
1#ifndef PROTEUS_SYNC_COMPILER_H
2#define PROTEUS_SYNC_COMPILER_H
3
7
8#include <llvm/ExecutionEngine/Orc/ThreadSafeModule.h>
9
10namespace proteus {
11
12using namespace llvm;
13
15public:
17 static CompilerSync Singleton;
18 return Singleton;
19 }
20
21 std::unique_ptr<MemoryBuffer> compile(CompilationTask &&CT) {
22 return CT.compile();
23 }
24
25private:
26 CompilerSync() {}
27
28 ~CompilerSync() {}
29};
30
31} // namespace proteus
32
33#endif
Definition CompilationTask.h:19
Definition CompilerSync.h:14
std::unique_ptr< MemoryBuffer > compile(CompilationTask &&CT)
Definition CompilerSync.h:21
static CompilerSync & instance()
Definition CompilerSync.h:16
Definition CompiledLibrary.h:7
Definition MemoryCache.h:26