summaryrefslogtreecommitdiffstats
path: root/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.h
diff options
context:
space:
mode:
authorAlexei Starovoitov <alexei.starovoitov@gmail.com>2017-05-03 17:30:56 +0000
committerAlexei Starovoitov <alexei.starovoitov@gmail.com>2017-05-03 17:30:56 +0000
commit4198f2a702b9a8a5dae47e67e8ed206f5ae6622f (patch)
treed3d18e0b31fd08206be9de6f4c357e7caaedf78c /llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.h
parent21ebbf74ac9911339e4a8c40753c2e00603c769f (diff)
downloadbcm5719-llvm-4198f2a702b9a8a5dae47e67e8ed206f5ae6622f.tar.gz
bcm5719-llvm-4198f2a702b9a8a5dae47e67e8ed206f5ae6622f.zip
[bpf] add relocation support
. there should be no runtime relocation inside the bpf function. . relocation supported here mostly for debugging. . a test case is added. Signed-off-by: Yonghong Song <yhs@fb.com> Signed-off-by: Alexei Starovoitov <ast@kernel.org> llvm-svn: 302055
Diffstat (limited to 'llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.h')
-rw-r--r--llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.h b/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.h
index 498979705b7..84dd810101f 100644
--- a/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.h
+++ b/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.h
@@ -58,6 +58,9 @@ class RuntimeDyldELF : public RuntimeDyldImpl {
void resolveSystemZRelocation(const SectionEntry &Section, uint64_t Offset,
uint64_t Value, uint32_t Type, int64_t Addend);
+ void resolveBPFRelocation(const SectionEntry &Section, uint64_t Offset,
+ uint64_t Value, uint32_t Type, int64_t Addend);
+
unsigned getMaxStubSize() override {
if (Arch == Triple::aarch64 || Arch == Triple::aarch64_be)
return 20; // movz; movk; movk; movk; br
OpenPOWER on IntegriCloud