13#ifndef LLVM_CLANG_LIB_INTERPRETER_ORCINCREMENTALEXECUTOR_H
14#define LLVM_CLANG_LIB_INTERPRETER_ORCINCREMENTALEXECUTOR_H
18#include "llvm/ADT/DenseMap.h"
19#include "llvm/ADT/StringRef.h"
20#include "llvm/ExecutionEngine/Orc/Core.h"
21#include "llvm/ExecutionEngine/Orc/ExecutionUtils.h"
22#include "llvm/ExecutionEngine/Orc/Layer.h"
23#include "llvm/ExecutionEngine/Orc/Shared/ExecutorAddress.h"
24#include "llvm/ExecutionEngine/Orc/SimpleRemoteEPC.h"
25#include "llvm/Support/Error.h"
33class JITTargetMachineBuilder;
36class ThreadSafeContext;
45 std::unique_ptr<llvm::orc::LLJIT> Jit;
46 llvm::orc::ThreadSafeContext &TSCtx;
48 llvm::DenseMap<const PartialTranslationUnit *, llvm::orc::ResourceTrackerSP>
56 llvm::orc::LLJITBuilder &JITBuilder, llvm::Error &Err);
61 llvm::Error
runCtors()
const override;
llvm::Expected< llvm::orc::ExecutorAddr > getSymbolAddress(llvm::StringRef Name, SymbolNameKind NameKind) const override
llvm::Error runCtors() const override
OrcIncrementalExecutor(llvm::orc::ThreadSafeContext &TSC)
~OrcIncrementalExecutor() override
llvm::Error removeModule(PartialTranslationUnit &PTU) override
llvm::Error LoadDynamicLibrary(const char *name) override
llvm::Error addModule(PartialTranslationUnit &PTU) override
llvm::Error cleanUp() override
The JSON file list parser is used to communicate input to InstallAPI.
Diagnostic wrappers for TextAPI types for error reporting.
The class keeps track of various objects created as part of processing incremental inputs.