diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2016-11-03 19:07:15 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2016-11-03 19:07:15 +0000 |
commit | a625bffced27a7cb7e8bcf9d02e1c7494589ee7c (patch) | |
tree | 83447583028be8e5d60f2f59a91e028dc66122f8 /tools | |
parent | 1787ec76dd36ee278b2014af806a46513c047d4a (diff) |
Remove the last use of report_fatal_error from ELF.h.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@285955 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools')
-rw-r--r-- | tools/llvm-readobj/ARMEHABIPrinter.h | 2 | ||||
-rw-r--r-- | tools/llvm-readobj/ELFDumper.cpp | 12 | ||||
-rw-r--r-- | tools/obj2yaml/elf2yaml.cpp | 10 |
3 files changed, 15 insertions, 9 deletions
diff --git a/tools/llvm-readobj/ARMEHABIPrinter.h b/tools/llvm-readobj/ARMEHABIPrinter.h index 2e10d8a917f..78060e3abcd 100644 --- a/tools/llvm-readobj/ARMEHABIPrinter.h +++ b/tools/llvm-readobj/ARMEHABIPrinter.h @@ -387,7 +387,7 @@ PrinterContext<ET>::FindExceptionTable(unsigned IndexSectionIndex, error(SymTabOrErr.getError()); const Elf_Shdr *SymTab = *SymTabOrErr; - for (const Elf_Rel &R : ELF->rels(&Sec)) { + for (const Elf_Rel &R : unwrapOrError(ELF->rels(&Sec))) { if (R.r_offset != static_cast<unsigned>(IndexTableOffset)) continue; diff --git a/tools/llvm-readobj/ELFDumper.cpp b/tools/llvm-readobj/ELFDumper.cpp index bde7a6ebbea..0fdf3919470 100644 --- a/tools/llvm-readobj/ELFDumper.cpp +++ b/tools/llvm-readobj/ELFDumper.cpp @@ -2067,7 +2067,7 @@ template <class ELFT> void MipsGOTParser<ELFT>::parsePLT() { switch (PLTRelShdr->sh_type) { case ELF::SHT_REL: - for (const Elf_Rel &Rel : Obj->rels(PLTRelShdr)) { + for (const Elf_Rel &Rel : unwrapOrError(Obj->rels(PLTRelShdr))) { const Elf_Sym *Sym = unwrapOrError(Obj->getRelocationSymbol(&Rel, SymTable)); printPLTEntry(PLTShdr->sh_addr, PLTBegin, It, StrTable, Sym); @@ -2076,7 +2076,7 @@ template <class ELFT> void MipsGOTParser<ELFT>::parsePLT() { } break; case ELF::SHT_RELA: - for (const Elf_Rela &Rel : Obj->relas(PLTRelShdr)) { + for (const Elf_Rela &Rel : unwrapOrError(Obj->relas(PLTRelShdr))) { const Elf_Sym *Sym = unwrapOrError(Obj->getRelocationSymbol(&Rel, SymTable)); printPLTEntry(PLTShdr->sh_addr, PLTBegin, It, StrTable, Sym); @@ -2531,7 +2531,7 @@ template <class ELFT> void GNUStyle<ELFT>::printRelocations(const ELFO *Obj) { printRelocHeader(OS, ELFT::Is64Bits, (Sec.sh_type == ELF::SHT_RELA)); const Elf_Shdr *SymTab = unwrapOrError(Obj->getSection(Sec.sh_link)); if (Sec.sh_type == ELF::SHT_REL) { - for (const auto &R : Obj->rels(&Sec)) { + for (const auto &R : unwrapOrError(Obj->rels(&Sec))) { Elf_Rela Rela; Rela.r_offset = R.r_offset; Rela.r_info = R.r_info; @@ -2539,7 +2539,7 @@ template <class ELFT> void GNUStyle<ELFT>::printRelocations(const ELFO *Obj) { printRelocation(Obj, SymTab, Rela, false); } } else { - for (const auto &R : Obj->relas(&Sec)) + for (const auto &R : unwrapOrError(Obj->relas(&Sec))) printRelocation(Obj, SymTab, R, true); } } @@ -3388,7 +3388,7 @@ void LLVMStyle<ELFT>::printRelocations(const Elf_Shdr *Sec, const ELFO *Obj) { switch (Sec->sh_type) { case ELF::SHT_REL: - for (const Elf_Rel &R : Obj->rels(Sec)) { + for (const Elf_Rel &R : unwrapOrError(Obj->rels(Sec))) { Elf_Rela Rela; Rela.r_offset = R.r_offset; Rela.r_info = R.r_info; @@ -3397,7 +3397,7 @@ void LLVMStyle<ELFT>::printRelocations(const Elf_Shdr *Sec, const ELFO *Obj) { } break; case ELF::SHT_RELA: - for (const Elf_Rela &R : Obj->relas(Sec)) + for (const Elf_Rela &R : unwrapOrError(Obj->relas(Sec))) printRelocation(Obj, R, SymTab); break; } diff --git a/tools/obj2yaml/elf2yaml.cpp b/tools/obj2yaml/elf2yaml.cpp index dbb8c7d436b..ffcb2d0ece4 100644 --- a/tools/obj2yaml/elf2yaml.cpp +++ b/tools/obj2yaml/elf2yaml.cpp @@ -295,7 +295,10 @@ ELFDumper<ELFT>::dumpRelSection(const Elf_Shdr *Shdr) { return EC; const Elf_Shdr *SymTab = *SymTabOrErr; - for (const Elf_Rel &Rel : Obj.rels(Shdr)) { + auto Rels = Obj.rels(Shdr); + if (std::error_code EC = Rels.getError()) + return EC; + for (const Elf_Rel &Rel : *Rels) { ELFYAML::Relocation R; if (std::error_code EC = dumpRelocation(&Rel, SymTab, R)) return EC; @@ -319,7 +322,10 @@ ELFDumper<ELFT>::dumpRelaSection(const Elf_Shdr *Shdr) { return EC; const Elf_Shdr *SymTab = *SymTabOrErr; - for (const Elf_Rela &Rel : Obj.relas(Shdr)) { + auto Rels = Obj.relas(Shdr); + if (std::error_code EC = Rels.getError()) + return EC; + for (const Elf_Rela &Rel : *Rels) { ELFYAML::Relocation R; if (std::error_code EC = dumpRelocation(&Rel, SymTab, R)) return EC; |