Use computeSymbolSizes in llvm-symbolize.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@240646 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Rafael Espindola
2015-06-25 15:06:38 +00:00
parent 7a0f58b7f0
commit 8bf1076cf9
3 changed files with 12 additions and 22 deletions

View File

@ -52,7 +52,10 @@ llvm::object::computeSymbolSizes(const ObjectFile &O) {
std::vector<std::pair<SymbolRef, uint64_t>> Ret;
if (const auto *E = dyn_cast<ELFObjectFileBase>(&O)) {
for (SymbolRef Sym : E->symbols())
auto Syms = E->symbols();
if (Syms.begin() == Syms.end())
Syms = E->getDynamicSymbolIterators();
for (SymbolRef Sym : Syms)
Ret.push_back({Sym, E->getSymbolSize(Sym)});
return Ret;
}