diff options
author | SahilPatidar <patidarsahil2001@gmail.com> | 2024-11-12 16:51:25 +0530 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-11-12 16:51:25 +0530 |
commit | ebb3508899c3e1773884cf5bc1b1df6f32450ca9 (patch) | |
tree | 7a02cc69de03523f65afb07e6f6997087ea10a69 /clang/lib/Interpreter/Interpreter.cpp | |
parent | 512208b498d27e885cd9164bed516eeb910a4933 (diff) | |
download | llvm-ebb3508899c3e1773884cf5bc1b1df6f32450ca9.zip llvm-ebb3508899c3e1773884cf5bc1b1df6f32450ca9.tar.gz llvm-ebb3508899c3e1773884cf5bc1b1df6f32450ca9.tar.bz2 |
Revert "[Clang-Repl] Add support for out-of-process execution." (#115854)
Reverts llvm/llvm-project#110418
Buildbot encountered a failure.
Diffstat (limited to 'clang/lib/Interpreter/Interpreter.cpp')
-rw-r--r-- | clang/lib/Interpreter/Interpreter.cpp | 37 |
1 files changed, 8 insertions, 29 deletions
diff --git a/clang/lib/Interpreter/Interpreter.cpp b/clang/lib/Interpreter/Interpreter.cpp index 8eacbc6..bc96da8 100644 --- a/clang/lib/Interpreter/Interpreter.cpp +++ b/clang/lib/Interpreter/Interpreter.cpp @@ -44,7 +44,6 @@ #include "clang/Sema/Lookup.h" #include "clang/Serialization/ObjectFilePCHContainerReader.h" #include "llvm/ExecutionEngine/JITSymbol.h" -#include "llvm/ExecutionEngine/Orc/EPCDynamicLibrarySearchGenerator.h" #include "llvm/ExecutionEngine/Orc/LLJIT.h" #include "llvm/IR/Module.h" #include "llvm/Support/Errc.h" @@ -457,11 +456,10 @@ const char *const Runtimes = R"( )"; llvm::Expected<std::unique_ptr<Interpreter>> -Interpreter::create(std::unique_ptr<CompilerInstance> CI, - std::unique_ptr<llvm::orc::LLJITBuilder> JB) { +Interpreter::create(std::unique_ptr<CompilerInstance> CI) { llvm::Error Err = llvm::Error::success(); - auto Interp = std::unique_ptr<Interpreter>( - new Interpreter(std::move(CI), Err, JB ? std::move(JB) : nullptr)); + auto Interp = + std::unique_ptr<Interpreter>(new Interpreter(std::move(CI), Err)); if (Err) return std::move(Err); @@ -580,25 +578,6 @@ createJITTargetMachineBuilder(const std::string &TT) { return llvm::orc::JITTargetMachineBuilder(llvm::Triple(TT)); } -llvm::Expected<std::unique_ptr<llvm::orc::LLJITBuilder>> -Interpreter::createLLJITBuilder( - std::unique_ptr<llvm::orc::ExecutorProcessControl> EPC, - llvm::StringRef OrcRuntimePath) { - const std::string &TT = EPC->getTargetTriple().getTriple(); - auto JTMB = createJITTargetMachineBuilder(TT); - if (!JTMB) - return JTMB.takeError(); - auto JB = IncrementalExecutor::createDefaultJITBuilder(std::move(*JTMB)); - if (!JB) - return JB.takeError(); - - (*JB)->setExecutorProcessControl(std::move(EPC)); - (*JB)->setPlatformSetUp( - llvm::orc::ExecutorNativePlatform(OrcRuntimePath.str())); - - return std::move(*JB); -} - llvm::Error Interpreter::CreateExecutor() { if (IncrExecutor) return llvm::make_error<llvm::StringError>("Operation failed. " @@ -723,11 +702,11 @@ llvm::Error Interpreter::LoadDynamicLibrary(const char *name) { if (!EE) return EE.takeError(); - if (auto DLSG = llvm::orc::EPCDynamicLibrarySearchGenerator::Load( - EE->getExecutionSession(), name)) - // FIXME: Eventually we should put each library in its own JITDylib and - // turn off process symbols by default. - EE->getProcessSymbolsJITDylib()->addGenerator(std::move(*DLSG)); + auto &DL = EE->getDataLayout(); + + if (auto DLSG = llvm::orc::DynamicLibrarySearchGenerator::Load( + name, DL.getGlobalPrefix())) + EE->getMainJITDylib().addGenerator(std::move(*DLSG)); else return DLSG.takeError(); |