diff options
author | Andrew Kaylor <andrew.kaylor@intel.com> | 2013-10-15 21:32:56 +0000 |
---|---|---|
committer | Andrew Kaylor <andrew.kaylor@intel.com> | 2013-10-15 21:32:56 +0000 |
commit | 72be32c6332ff9dd38b989d5a0dd80f40996dd10 (patch) | |
tree | 142a5984fac30d2f81d0b1f7ecde3b73f4455740 /lib/ExecutionEngine/RuntimeDyld/RuntimeDyldImpl.h | |
parent | 977ce007ad49f122f8132a042ddb6b2c0fd53491 (diff) | |
download | llvm-72be32c6332ff9dd38b989d5a0dd80f40996dd10.tar.gz llvm-72be32c6332ff9dd38b989d5a0dd80f40996dd10.tar.bz2 llvm-72be32c6332ff9dd38b989d5a0dd80f40996dd10.tar.xz |
Separating ELF and MachO stub info functions for RuntimeDyld
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192737 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/ExecutionEngine/RuntimeDyld/RuntimeDyldImpl.h')
-rw-r--r-- | lib/ExecutionEngine/RuntimeDyld/RuntimeDyldImpl.h | 25 |
1 files changed, 2 insertions, 23 deletions
diff --git a/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldImpl.h b/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldImpl.h index b5f2991244..2fb2813b07 100644 --- a/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldImpl.h +++ b/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldImpl.h @@ -186,29 +186,8 @@ protected: Triple::ArchType Arch; bool IsTargetLittleEndian; - inline unsigned getMaxStubSize() { - if (Arch == Triple::aarch64) - return 20; // movz; movk; movk; movk; br - if (Arch == Triple::arm || Arch == Triple::thumb) - return 8; // 32-bit instruction and 32-bit address - else if (Arch == Triple::mipsel || Arch == Triple::mips) - return 16; - else if (Arch == Triple::ppc64 || Arch == Triple::ppc64le) - return 44; - else if (Arch == Triple::x86_64) - return 6; // 2-byte jmp instruction + 32-bit relative address - else if (Arch == Triple::systemz) - return 16; - else - return 0; - } - - inline unsigned getStubAlignment() { - if (Arch == Triple::systemz) - return 8; - else - return 1; - } + virtual unsigned getMaxStubSize() = 0; + virtual unsigned getStubAlignment() = 0; bool HasError; std::string ErrorStr; |