[llvm] 5ea91be - Revert "[Orc][LLJIT] Use JITLink even if a custom JITTargetMachineBuilder is supplied."

Lang Hames via llvm-commits llvm-commits at lists.llvm.org
Wed Dec 18 15:14:25 PST 2019


Author: Lang Hames
Date: 2019-12-18T15:13:35-08:00
New Revision: 5ea91bea15dd0cda55b83d108686c3087b479284

URL: https://github.com/llvm/llvm-project/commit/5ea91bea15dd0cda55b83d108686c3087b479284
DIFF: https://github.com/llvm/llvm-project/commit/5ea91bea15dd0cda55b83d108686c3087b479284.diff

LOG: Revert "[Orc][LLJIT] Use JITLink even if a custom JITTargetMachineBuilder is supplied."

This reverts commit 298e183e813c884dd22816383405bae3ef9ef278.

This commit caused some build failures -- reverting while I investigate.

Added: 
    

Modified: 
    llvm/include/llvm/ExecutionEngine/Orc/JITTargetMachineBuilder.h
    llvm/lib/ExecutionEngine/Orc/LLJIT.cpp

Removed: 
    


################################################################################
diff  --git a/llvm/include/llvm/ExecutionEngine/Orc/JITTargetMachineBuilder.h b/llvm/include/llvm/ExecutionEngine/Orc/JITTargetMachineBuilder.h
index 4f2f55770996..c8c4ecdaff16 100644
--- a/llvm/include/llvm/ExecutionEngine/Orc/JITTargetMachineBuilder.h
+++ b/llvm/include/llvm/ExecutionEngine/Orc/JITTargetMachineBuilder.h
@@ -79,18 +79,12 @@ class JITTargetMachineBuilder {
     return *this;
   }
 
-  /// Get the relocation model.
-  const Optional<Reloc::Model> &getRelocationModel() const { return RM; }
-
   /// Set the code model.
   JITTargetMachineBuilder &setCodeModel(Optional<CodeModel::Model> CM) {
     this->CM = std::move(CM);
     return *this;
   }
 
-  /// Get the code model.
-  const Optional<CodeModel::Model> &getCodeModel() const { return CM; }
-
   /// Set the LLVM CodeGen optimization level.
   JITTargetMachineBuilder &setCodeGenOptLevel(CodeGenOpt::Level OptLevel) {
     this->OptLevel = OptLevel;

diff  --git a/llvm/lib/ExecutionEngine/Orc/LLJIT.cpp b/llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
index 54473ab46423..5c393739f401 100644
--- a/llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
+++ b/llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
@@ -24,15 +24,11 @@ Error LLJITBuilderState::prepareForConstruction() {
       JTMB = std::move(*JTMBOrErr);
     else
       return JTMBOrErr.takeError();
-  }
-
-  // If the client didn't configure any linker options then auto-configure the
-  // JIT linker.
-  if (!CreateObjectLinkingLayer && JTMB->getCodeModel() == None &&
-      JTMB->getRelocationModel() == None) {
 
+    // If no ObjectLinkingLayer creator was set and the target supports JITLink
+    // then configure for JITLink.
     auto &TT = JTMB->getTargetTriple();
-    if (TT.isOSBinFormatMachO() &&
+    if (!CreateObjectLinkingLayer && TT.isOSBinFormatMachO() &&
         (TT.getArch() == Triple::aarch64 || TT.getArch() == Triple::x86_64)) {
 
       JTMB->setRelocationModel(Reloc::PIC_);


        


More information about the llvm-commits mailing list