Improve pretty printing of GOT relocations in MachO on x86_64.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143031 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Owen Anderson 2011-10-26 17:05:20 +00:00
parent e8ec225e77
commit 929e27cc3c

View File

@ -807,8 +807,15 @@ error_code MachOObjectFile::getRelocationValueString(DataRefImpl Rel,
StringRef Name;
if (error_code ec = getRelocationTargetName(RE->Word1, Name))
report_fatal_error(ec.message());
bool isPCRel = ((RE->Word1 >> 24) & 1);
switch (Type) {
case 3: // X86_64_RELOC_GOT_LOAD
case 4: { // X86_64_RELOC_GOT
fmt << Name << "@GOT";
if (isPCRel) fmt << "PCREL";
break;
}
case 5: { // X86_64_RELOC_SUBTRACTOR
InMemoryStruct<macho::RelocationEntry> RENext;
DataRefImpl RelNext = Rel;