summaryrefslogtreecommitdiffstats
path: root/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.h
diff options
context:
space:
mode:
authorJames Molloy <james.molloy@arm.com>2014-04-30 10:15:41 +0000
committerJames Molloy <james.molloy@arm.com>2014-04-30 10:15:41 +0000
commitbd2ffa0f6a71d68389cd5a4f9ea26ceaff1df13d (patch)
tree3fb4fe39a324aa42576896a52b963b8f76e98ffd /llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.h
parent7c39df37b22b1614b6c69f504badd1a38fdff740 (diff)
downloadbcm5719-llvm-bd2ffa0f6a71d68389cd5a4f9ea26ceaff1df13d.tar.gz
bcm5719-llvm-bd2ffa0f6a71d68389cd5a4f9ea26ceaff1df13d.zip
[ARM64] Try and make the ELF MCJIT *slightly* less broken for ARM64.
A bunch of switch cases were missing, not just for ARM64 but also for AArch64_BE. I've fixed all those, but there's zero testing as ExecutionEngine tests are disabled when crosscompiling and I don't have a native platform available to test on. llvm-svn: 207626
Diffstat (limited to 'llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.h')
-rw-r--r--llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.h b/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.h
index e08f2ee4390..a56bd0cb3ef 100644
--- a/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.h
+++ b/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.h
@@ -59,7 +59,8 @@ class RuntimeDyldELF : public RuntimeDyldImpl {
uint64_t Value, uint32_t Type, int64_t Addend);
unsigned getMaxStubSize() override {
- if (Arch == Triple::aarch64)
+ if (Arch == Triple::aarch64 || Arch == Triple::arm64 ||
+ Arch == Triple::aarch64_be || Arch == Triple::arm64_be)
return 20; // movz; movk; movk; movk; br
if (Arch == Triple::arm || Arch == Triple::thumb)
return 8; // 32-bit instruction and 32-bit address
OpenPOWER on IntegriCloud