X-Git-Url: http://plrg.eecs.uci.edu/git/?a=blobdiff_plain;f=include%2Fllvm%2FObject%2FELFObjectFile.h;h=f4f688ae7937ffbf11a90f1f90db44334c9a4135;hb=b81f60fd7669d635c0c404f78623283055ab99af;hp=5433a7a1b3ffb80fc1a838255efa64963c168fd4;hpb=f96f832a3ca939aba0098b3343f2f48aab49f6d0;p=oota-llvm.git diff --git a/include/llvm/Object/ELFObjectFile.h b/include/llvm/Object/ELFObjectFile.h index 5433a7a1b3f..f4f688ae793 100644 --- a/include/llvm/Object/ELFObjectFile.h +++ b/include/llvm/Object/ELFObjectFile.h @@ -379,7 +379,8 @@ error_code ELFObjectFile::getSymbolType(DataRefImpl Symb, template uint32_t ELFObjectFile::getSymbolFlags(DataRefImpl Symb) const { - const Elf_Sym *ESym = getSymbol(Symb); + Elf_Sym_Iter EIter = toELFSymIter(Symb); + const Elf_Sym *ESym = &*EIter; uint32_t Result = SymbolRef::SF_None; @@ -393,7 +394,7 @@ uint32_t ELFObjectFile::getSymbolFlags(DataRefImpl Symb) const { Result |= SymbolRef::SF_Absolute; if (ESym->getType() == ELF::STT_FILE || ESym->getType() == ELF::STT_SECTION || - ESym == &*EF.begin_symbols()) + EIter == EF.begin_symbols() || EIter == EF.begin_dynamic_symbols()) Result |= SymbolRef::SF_FormatSpecific; if (EF.getSymbolTableIndex(ESym) == ELF::SHN_UNDEF)