aboutsummaryrefslogtreecommitdiff
path: root/llvm/tools/llvm-objdump/llvm-objdump.cpp
diff options
context:
space:
mode:
authorShivam Gupta <Shivam.Gupta2@amd.com>2023-09-11 09:55:45 +0530
committerShivam Gupta <Shivam.Gupta2@amd.com>2023-09-11 09:57:27 +0530
commit7b7470600c1b30d6f1acf500976e1c06e5282aa0 (patch)
tree43380dc3cac195110abaff4fcfb6a06e35bb2b2a /llvm/tools/llvm-objdump/llvm-objdump.cpp
parent46ee3b39149602dddab92882dad26c23746868c7 (diff)
downloadllvm-7b7470600c1b30d6f1acf500976e1c06e5282aa0.zip
llvm-7b7470600c1b30d6f1acf500976e1c06e5282aa0.tar.gz
llvm-7b7470600c1b30d6f1acf500976e1c06e5282aa0.tar.bz2
[llvm-objdump] --adjust-vma adjust symbol table
Add a shouldAdjustVA(Section) guard on top of address update. Update llvm-objdump file to update symbol table when --adjust-vma used. Fixes #63203 Patch by HamidrezaSK (Hamidreza Sanaee)
Diffstat (limited to 'llvm/tools/llvm-objdump/llvm-objdump.cpp')
-rw-r--r--llvm/tools/llvm-objdump/llvm-objdump.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/llvm/tools/llvm-objdump/llvm-objdump.cpp b/llvm/tools/llvm-objdump/llvm-objdump.cpp
index 96d74d6..e4e1ceb 100644
--- a/llvm/tools/llvm-objdump/llvm-objdump.cpp
+++ b/llvm/tools/llvm-objdump/llvm-objdump.cpp
@@ -2555,6 +2555,9 @@ void Dumper::printSymbol(const SymbolRef &Symbol,
return;
}
uint64_t Address = *AddrOrErr;
+ section_iterator SecI = unwrapOrError(Symbol.getSection(), FileName);
+ if (SecI != O.section_end() && shouldAdjustVA(*SecI))
+ Address += AdjustVMA;
if ((Address < StartAddress) || (Address > StopAddress))
return;
SymbolRef::Type Type =