[PATCH] D153027: [llvm-objdump] --adjust-vma adjust symbol table

Hamidreza Sanaee via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 15 07:31:34 PDT 2023


HamidrezaSK created this revision.
Herald added a reviewer: jhenderson.
Herald added a reviewer: MaskRay.
Herald added a project: All.
HamidrezaSK requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

Update llvm-objdump file to update symbol table when --adjust-vma used.

Updated adjust-vma test file to support ADJUST and NOADJUST symbol tables.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D153027

Files:
  llvm/test/tools/llvm-objdump/X86/adjust-vma.test
  llvm/tools/llvm-objdump/llvm-objdump.cpp


Index: llvm/tools/llvm-objdump/llvm-objdump.cpp
===================================================================
--- llvm/tools/llvm-objdump/llvm-objdump.cpp
+++ llvm/tools/llvm-objdump/llvm-objdump.cpp
@@ -2400,6 +2400,7 @@
   const MachOObjectFile *MachO = dyn_cast<const MachOObjectFile>(&O);
   uint64_t Address = unwrapOrError(Symbol.getAddress(), FileName, ArchiveName,
                                    ArchitectureName);
+  Address += AdjustVMA;
   if ((Address < StartAddress) || (Address > StopAddress))
     return;
   SymbolRef::Type Type =
Index: llvm/test/tools/llvm-objdump/X86/adjust-vma.test
===================================================================
--- llvm/test/tools/llvm-objdump/X86/adjust-vma.test
+++ llvm/test/tools/llvm-objdump/X86/adjust-vma.test
@@ -27,10 +27,15 @@
 # ADJUST-NEXT:    7 .strtab         00000010 0000000000000000
 # ADJUST-NEXT:    8 .shstrtab       0000003c 0000000000000000
 
-# COMMON:      SYMBOL TABLE:
-# COMMON-NEXT:  0000000000000001  l F .text 0000000000000000 func
-# COMMON-NEXT:  0000000000000000  l   .text 0000000000000000 sym
-# COMMON-NEXT:  0000000000000000  l d .text 0000000000000000 .text
+# NOADJUST:      SYMBOL TABLE:
+# NOADJUST-NEXT:  0000000000000001  l F .text 0000000000000000 func
+# NOADJUST-NEXT:  0000000000000000  l   .text 0000000000000000 sym
+# NOADJUST-NEXT:  0000000000000000  l d .text 0000000000000000 .text
+
+# ADJUST:      SYMBOL TABLE:
+# ADJUST-NEXT:  0000000000123001  l F .text 0000000000000000 func
+# ADJUST-NEXT:  0000000000123000  l   .text 0000000000000000 sym
+# ADJUST-NEXT:  0000000000123000  l d .text 0000000000000000 .text
 
 # NOADJUST:      0000000000000000 <sym>:
 # NOADJUST-NEXT:   0: {{.*}}  nop


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D153027.531719.patch
Type: text/x-patch
Size: 1718 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20230615/b4f33e20/attachment.bin>


More information about the llvm-commits mailing list