diff options
author | Lang Hames <lhames@gmail.com> | 2014-07-30 03:35:05 +0000 |
---|---|---|
committer | Lang Hames <lhames@gmail.com> | 2014-07-30 03:35:05 +0000 |
commit | 1316365e2cee88687b503d3818987a5fed147463 (patch) | |
tree | 21fd3153e620b2a893bc138cc21133249f50ff80 /llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.h | |
parent | 005214ce50dd62936cf5834d46a2dd257a7f0b3d (diff) | |
download | bcm5719-llvm-1316365e2cee88687b503d3818987a5fed147463.tar.gz bcm5719-llvm-1316365e2cee88687b503d3818987a5fed147463.zip |
[MCJIT] Fix the ARM BR24 relocation in RuntimeDyldMachO.
We now (1) correctly decode the branch immediate, (2) modify the immediate to
corretly treat it as PC-rel, and (3) properly populate the stub entry.
Previously we had been doing each of these wrong.
<rdar://problem/17750739>
llvm-svn: 214285
Diffstat (limited to 'llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.h')
-rw-r--r-- | llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.h b/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.h index 7450f1141e1..30f61e98e32 100644 --- a/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.h +++ b/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.h @@ -73,7 +73,8 @@ protected: /// Make the RelocationValueRef addend PC-relative. void makeValueAddendPCRel(RelocationValueRef &Value, ObjectImage &ObjImg, - const relocation_iterator &RI); + const relocation_iterator &RI, + unsigned OffsetToNextPC); /// Dump information about the relocation entry (RE) and resolved value. void dumpRelocationToResolve(const RelocationEntry &RE, uint64_t Value) const; |