[PATCH] D35239: [llvm-objdump] Properly print MachO aarch64 addend relocations

Martin Storsjö via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jul 13 10:03:42 PDT 2017


This revision was automatically updated to reflect the committed changes.
Closed by commit rL307927: [llvm-objdump] Properly print MachO aarch64 addend relocations (authored by mstorsjo).

Changed prior to commit:
  https://reviews.llvm.org/D35239?vs=105979&id=106446#toc

Repository:
  rL LLVM

https://reviews.llvm.org/D35239

Files:
  llvm/trunk/test/tools/llvm-objdump/AArch64/Inputs/reloc-addend.obj.macho-aarch64
  llvm/trunk/test/tools/llvm-objdump/AArch64/macho-reloc-addend.test
  llvm/trunk/tools/llvm-objdump/llvm-objdump.cpp


Index: llvm/trunk/test/tools/llvm-objdump/AArch64/macho-reloc-addend.test
===================================================================
--- llvm/trunk/test/tools/llvm-objdump/AArch64/macho-reloc-addend.test
+++ llvm/trunk/test/tools/llvm-objdump/AArch64/macho-reloc-addend.test
@@ -0,0 +1,6 @@
+RUN: llvm-objdump -r %p/Inputs/reloc-addend.obj.macho-aarch64 | FileCheck %s
+
+CHECK-DAG: 0000000000000004 ARM64_RELOC_ADDEND 0x999
+CHECK-DAG: 0000000000000004 ARM64_RELOC_PAGEOFF12 _stringbuf
+CHECK-DAG: 0000000000000000 ARM64_RELOC_ADDEND 0x999
+CHECK-DAG: 0000000000000000 ARM64_RELOC_PAGE21 _stringbuf
Index: llvm/trunk/tools/llvm-objdump/llvm-objdump.cpp
===================================================================
--- llvm/trunk/tools/llvm-objdump/llvm-objdump.cpp
+++ llvm/trunk/tools/llvm-objdump/llvm-objdump.cpp
@@ -870,7 +870,10 @@
   bool isExtern = O->getPlainRelocationExternal(RE);
   uint64_t Val = O->getPlainRelocationSymbolNum(RE);
 
-  if (isExtern) {
+  if (O->getAnyRelocationType(RE) == MachO::ARM64_RELOC_ADDEND) {
+    fmt << format("0x%x", Val);
+    return;
+  } else if (isExtern) {
     symbol_iterator SI = O->symbol_begin();
     advance(SI, Val);
     Expected<StringRef> SOrErr = SI->getName();


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D35239.106446.patch
Type: text/x-patch
Size: 1239 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170713/a28dbd55/attachment.bin>


More information about the llvm-commits mailing list