summaryrefslogtreecommitdiffstats
path: root/llvm/tools
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2015-06-25 22:10:04 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2015-06-25 22:10:04 +0000
commitdbb6bd334515b3a84d7c7a12a52dd785d3d439cd (patch)
tree17a31a156bcc9e35cd3920fca470b153d838864d /llvm/tools
parentf0af05c4a57475b8e3b9ba9920018ddd5bd00322 (diff)
downloadbcm5719-llvm-dbb6bd334515b3a84d7c7a12a52dd785d3d439cd.tar.gz
bcm5719-llvm-dbb6bd334515b3a84d7c7a12a52dd785d3d439cd.zip
Add an ELFSymbolRef type.
This allows user code to say Sym.getSize() instead of having to manually fetch the object. llvm-svn: 240708
Diffstat (limited to 'llvm/tools')
-rw-r--r--llvm/tools/llvm-nm/llvm-nm.cpp4
-rw-r--r--llvm/tools/llvm-objdump/llvm-objdump.cpp4
2 files changed, 4 insertions, 4 deletions
diff --git a/llvm/tools/llvm-nm/llvm-nm.cpp b/llvm/tools/llvm-nm/llvm-nm.cpp
index feff6aa487b..16579883d75 100644
--- a/llvm/tools/llvm-nm/llvm-nm.cpp
+++ b/llvm/tools/llvm-nm/llvm-nm.cpp
@@ -930,8 +930,8 @@ static void dumpSymbolNamesFromObject(SymbolicFile &Obj, bool printName,
S.Size = 0;
S.Address = UnknownAddress;
if (PrintSize) {
- if (auto *E = dyn_cast<ELFObjectFileBase>(&Obj))
- S.Size = E->getSymbolSize(Sym);
+ if (isa<ELFObjectFileBase>(&Obj))
+ S.Size = ELFSymbolRef(Sym).getSize();
}
if (PrintAddress && isa<ObjectFile>(Obj)) {
if (error(SymbolRef(Sym).getAddress(S.Address)))
diff --git a/llvm/tools/llvm-objdump/llvm-objdump.cpp b/llvm/tools/llvm-objdump/llvm-objdump.cpp
index 518d6de34fa..24cedb38297 100644
--- a/llvm/tools/llvm-objdump/llvm-objdump.cpp
+++ b/llvm/tools/llvm-objdump/llvm-objdump.cpp
@@ -1149,8 +1149,8 @@ void llvm::PrintSymbolTable(const ObjectFile *o) {
outs() << '\t';
if (Common || isa<ELFObjectFileBase>(o)) {
- uint64_t Val = Common ? Symbol.getAlignment()
- : cast<ELFObjectFileBase>(o)->getSymbolSize(Symbol);
+ uint64_t Val =
+ Common ? Symbol.getAlignment() : ELFSymbolRef(Symbol).getSize();
outs() << format("\t %08" PRIx64 " ", Val);
}
OpenPOWER on IntegriCloud