[llvm] 5949bd9 - [Orc] Allow OrcGenericABI variant of LazyCallThroughManager

Stefan Gränitz via llvm-commits llvm-commits at lists.llvm.org
Tue Mar 23 06:09:10 PDT 2021


Author: Stefan Gränitz
Date: 2021-03-23T14:08:53+01:00
New Revision: 5949bd91253672ea8599a7a234b18e78972d3aa1

URL: https://github.com/llvm/llvm-project/commit/5949bd91253672ea8599a7a234b18e78972d3aa1
DIFF: https://github.com/llvm/llvm-project/commit/5949bd91253672ea8599a7a234b18e78972d3aa1.diff

LOG: [Orc] Allow OrcGenericABI variant of LazyCallThroughManager

Apply the way createLocalIndirectStubsManagerBuilder() deals with unsupported achritectures to createLocalLazyCallThroughManager(). The returned call-through manager is dysfunctional: It runs into an unreachable as soon as a lazy JIT attempts to use it. However, this results in broader platform support for lli in default (greedy) ORC mode where no lazy materialization is required.

Added: 
    

Modified: 
    llvm/lib/ExecutionEngine/Orc/LazyReexports.cpp

Removed: 
    


################################################################################
diff  --git a/llvm/lib/ExecutionEngine/Orc/LazyReexports.cpp b/llvm/lib/ExecutionEngine/Orc/LazyReexports.cpp
index e1f494415e86..bc339321fb55 100644
--- a/llvm/lib/ExecutionEngine/Orc/LazyReexports.cpp
+++ b/llvm/lib/ExecutionEngine/Orc/LazyReexports.cpp
@@ -107,9 +107,8 @@ createLocalLazyCallThroughManager(const Triple &T, ExecutionSession &ES,
                                   JITTargetAddress ErrorHandlerAddr) {
   switch (T.getArch()) {
   default:
-    return make_error<StringError>(
-        std::string("No callback manager available for ") + T.str(),
-        inconvertibleErrorCode());
+    return LocalLazyCallThroughManager::Create<OrcGenericABI>(ES,
+                                                              ErrorHandlerAddr);
 
   case Triple::aarch64:
   case Triple::aarch64_32:


        


More information about the llvm-commits mailing list