[llvm] r310938 - [ORC] Add case statements for AArch64 to the local stub and callback manager

Lang Hames via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 15 11:10:19 PDT 2017


Author: lhames
Date: Tue Aug 15 11:10:19 2017
New Revision: 310938

URL: http://llvm.org/viewvc/llvm-project?rev=310938&view=rev
Log:
[ORC] Add case statements for AArch64 to the local stub and callback manager
creation functions.

This should allow lli to lazily execute code using OrcLazyJIT on AArch64.

Modified:
    llvm/trunk/lib/ExecutionEngine/Orc/IndirectionUtils.cpp

Modified: llvm/trunk/lib/ExecutionEngine/Orc/IndirectionUtils.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/ExecutionEngine/Orc/IndirectionUtils.cpp?rev=310938&r1=310937&r2=310938&view=diff
==============================================================================
--- llvm/trunk/lib/ExecutionEngine/Orc/IndirectionUtils.cpp (original)
+++ llvm/trunk/lib/ExecutionEngine/Orc/IndirectionUtils.cpp Tue Aug 15 11:10:19 2017
@@ -28,6 +28,11 @@ createLocalCompileCallbackManager(const
   switch (T.getArch()) {
     default: return nullptr;
 
+    case Triple::aarch64: {
+      typedef orc::LocalJITCompileCallbackManager<orc::OrcAArch64> CCMgrT;
+      return llvm::make_unique<CCMgrT>(ErrorHandlerAddress);
+    }
+
     case Triple::x86: {
       typedef orc::LocalJITCompileCallbackManager<orc::OrcI386> CCMgrT;
       return llvm::make_unique<CCMgrT>(ErrorHandlerAddress);
@@ -42,6 +47,7 @@ createLocalCompileCallbackManager(const
         return llvm::make_unique<CCMgrT>(ErrorHandlerAddress);
       }
     }
+
   }
 }
 
@@ -50,6 +56,12 @@ createLocalIndirectStubsManagerBuilder(c
   switch (T.getArch()) {
     default: return nullptr;
 
+    case Triple::aarch64:
+      return [](){
+        return llvm::make_unique<
+                       orc::LocalIndirectStubsManager<orc::OrcAArch64>>();
+      };
+
     case Triple::x86:
       return [](){
         return llvm::make_unique<
@@ -68,6 +80,7 @@ createLocalIndirectStubsManagerBuilder(c
                      orc::LocalIndirectStubsManager<orc::OrcX86_64_SysV>>();
         };
       }
+
   }
 }
 




More information about the llvm-commits mailing list