diff options
| author | Dimitry Andric <dim@FreeBSD.org> | 2017-12-18 20:10:56 +0000 | 
|---|---|---|
| committer | Dimitry Andric <dim@FreeBSD.org> | 2017-12-18 20:10:56 +0000 | 
| commit | 044eb2f6afba375a914ac9d8024f8f5142bb912e (patch) | |
| tree | 1475247dc9f9fe5be155ebd4c9069c75aadf8c20 /lib/ExecutionEngine/Orc/IndirectionUtils.cpp | |
| parent | eb70dddbd77e120e5d490bd8fbe7ff3f8fa81c6b (diff) | |
Notes
Diffstat (limited to 'lib/ExecutionEngine/Orc/IndirectionUtils.cpp')
| -rw-r--r-- | lib/ExecutionEngine/Orc/IndirectionUtils.cpp | 13 | 
1 files changed, 13 insertions, 0 deletions
| diff --git a/lib/ExecutionEngine/Orc/IndirectionUtils.cpp b/lib/ExecutionEngine/Orc/IndirectionUtils.cpp index e3a456849f90..68397beae63a 100644 --- a/lib/ExecutionEngine/Orc/IndirectionUtils.cpp +++ b/lib/ExecutionEngine/Orc/IndirectionUtils.cpp @@ -28,6 +28,11 @@ createLocalCompileCallbackManager(const Triple &T,    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 Triple &T,          return llvm::make_unique<CCMgrT>(ErrorHandlerAddress);        }      } +    }  } @@ -50,6 +56,12 @@ createLocalIndirectStubsManagerBuilder(const Triple &T) {    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(const Triple &T) {                       orc::LocalIndirectStubsManager<orc::OrcX86_64_SysV>>();          };        } +    }  } | 
