diff options
author | Lang Hames <lhames@gmail.com> | 2014-07-12 00:16:47 +0000 |
---|---|---|
committer | Lang Hames <lhames@gmail.com> | 2014-07-12 00:16:47 +0000 |
commit | 5d10284238bdc0e79771cad48f622cc26aabf0e8 (patch) | |
tree | 5f53984a3735aa7d528d77e673cd7ee34c93b5ca /llvm/lib/ExecutionEngine | |
parent | 44362e06d1a963ac6ed55b01f3c13bc4e1e55a45 (diff) | |
download | bcm5719-llvm-5d10284238bdc0e79771cad48f622cc26aabf0e8.tar.gz bcm5719-llvm-5d10284238bdc0e79771cad48f622cc26aabf0e8.zip |
[RuntimeDyld] Fix stub size and offset for AArch64 in RuntimeDyldMachO.h.
<rdar://problem/17648000>
llvm-svn: 212864
Diffstat (limited to 'llvm/lib/ExecutionEngine')
-rw-r--r-- | llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.h | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.h b/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.h index 35f07208083..24dc5674d46 100644 --- a/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.h +++ b/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.h @@ -16,7 +16,6 @@ #include "ObjectImageCommon.h" #include "RuntimeDyldImpl.h" -#include "llvm/ADT/IndexedMap.h" #include "llvm/Object/MachO.h" #include "llvm/Support/Format.h" @@ -56,11 +55,20 @@ private: return 8; // 32-bit instruction and 32-bit address else if (Arch == Triple::x86_64) return 8; // GOT entry + else if (Arch == Triple::arm64) + return 8; // GOT entry else return 0; } - unsigned getStubAlignment() override { return 1; } + unsigned getStubAlignment() override { + if (Arch == Triple::arm || Arch == Triple::thumb) + return 4; + else if (Arch == Triple::arm64) + return 8; + else + return 1; + } relocation_iterator processSECTDIFFRelocation( unsigned SectionID, |