summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Object/MachOObjectFile.cpp
diff options
context:
space:
mode:
authorOwen Anderson <resistor@mac.com>2011-10-26 17:10:22 +0000
committerOwen Anderson <resistor@mac.com>2011-10-26 17:10:22 +0000
commit04e46b6ae49e1748a200e3832447a0d35655d20b (patch)
tree3c3f8759455d1cebfacc48733d90d752ac13fcb2 /llvm/lib/Object/MachOObjectFile.cpp
parent7be76590e6bb78e80842d632e7217c138f4fb4f0 (diff)
downloadbcm5719-llvm-04e46b6ae49e1748a200e3832447a0d35655d20b.tar.gz
bcm5719-llvm-04e46b6ae49e1748a200e3832447a0d35655d20b.zip
Include the full 64 bits of relocation data in the type info for MachO relocations, so that we can recognize scattered relocations.
llvm-svn: 143033
Diffstat (limited to 'llvm/lib/Object/MachOObjectFile.cpp')
-rw-r--r--llvm/lib/Object/MachOObjectFile.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/llvm/lib/Object/MachOObjectFile.cpp b/llvm/lib/Object/MachOObjectFile.cpp
index 9ed5445ddaa..82b9231ed8d 100644
--- a/llvm/lib/Object/MachOObjectFile.cpp
+++ b/llvm/lib/Object/MachOObjectFile.cpp
@@ -637,7 +637,9 @@ error_code MachOObjectFile::getRelocationType(DataRefImpl Rel,
uint64_t &Res) const {
InMemoryStruct<macho::RelocationEntry> RE;
getRelocation(Rel, RE);
- Res = RE->Word1;
+ Res = RE->Word0;
+ Res <<= 32;
+ Res |= RE->Word1;
return object_error::success;
}
error_code MachOObjectFile::getRelocationTypeName(DataRefImpl Rel,
OpenPOWER on IntegriCloud