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
8
9#include <llvm/ExecutionEngine/Orc/ThreadSafeModule.h>
10
11namespace proteus {
12
13using namespace llvm;
14
16public:
18 static CompilerSync Singleton;
19 return Singleton;
20 }
21
22 std::unique_ptr<MemoryBuffer> compile(CompilationTask &&CT) {
24 return CT.compile();
25 }
26
27private:
28 CompilerSync() {}
29
30 ~CompilerSync() {}
31};
32
33} // namespace proteus
34
35#endif
#define TIMESCOPE(...)
Definition TimeTracing.h:66
Definition CompilationTask.h:19
Definition CompilerSync.h:15
std::unique_ptr< MemoryBuffer > compile(CompilationTask &&CT)
Definition CompilerSync.h:22
static CompilerSync & instance()
Definition CompilerSync.h:17
Definition CompiledLibrary.h:7
Definition MemoryCache.h:27