diff options
author | Pavel Labath <labath@google.com> | 2015-04-16 08:58:11 +0000 |
---|---|---|
committer | Pavel Labath <labath@google.com> | 2015-04-16 08:58:11 +0000 |
commit | 041b5a571bdd7e1d6075532675438ac252bd3314 (patch) | |
tree | 87a27b580284b8b553dcfc7503668743dbed8b29 /llvm/lib/ExecutionEngine | |
parent | 23341446e8d7eb3d523c77b91d32055eeeb2bf3e (diff) | |
download | bcm5719-llvm-041b5a571bdd7e1d6075532675438ac252bd3314.tar.gz bcm5719-llvm-041b5a571bdd7e1d6075532675438ac252bd3314.zip |
Revert "[RuntimeDyldELF] Fix missing cases in Placeholder processing"
This reverts commit ec0a34f850eca0d97e0592236e0ac14083aa1c3d.
llvm-svn: 235081
Diffstat (limited to 'llvm/lib/ExecutionEngine')
-rw-r--r-- | llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp b/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp index 52db2c0f62a..d380cb4e18b 100644 --- a/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp +++ b/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp @@ -460,7 +460,7 @@ void RuntimeDyldELF::resolveARMRelocation(const SectionEntry &Section, else if (Type == ELF::R_ARM_MOVT_ABS) Value = (Value >> 16) & 0xFFFF; *TargetPtr &= ~0x000F0FFF; - *TargetPtr |= Value & 0xFFF; + *TargetPtr = Value & 0xFFF; *TargetPtr |= ((Value >> 12) & 0xF) << 16; break; // Write 24 bit relative value to the branch instruction. @@ -1052,8 +1052,6 @@ relocation_iterator RuntimeDyldELF::processRelocationRef( Value.Addend += ((*Placeholder) & 0x0000ffff) << 16; else if (RelType == ELF::R_MIPS_LO16) Value.Addend += ((*Placeholder) & 0x0000ffff); - else if (RelType == ELF::R_MIPS_32) - Value.Addend += *Placeholder; processSimpleRelocation(SectionID, Offset, RelType, Value); } } else if (Arch == Triple::ppc64 || Arch == Triple::ppc64le) { |