diff options
| author | Ed Maste <emaste@freebsd.org> | 2014-06-27 16:37:20 +0000 |
|---|---|---|
| committer | Ed Maste <emaste@freebsd.org> | 2014-06-27 16:37:20 +0000 |
| commit | 637f6cceeed31dbbcf441b5dcd71ad4f9606cde4 (patch) | |
| tree | cad20afb63c75b54719c68322419199bd3ca88c2 /llvm | |
| parent | c1fdb889a9e24fb6732b10c26568e5af4ada2f68 (diff) | |
| download | bcm5719-llvm-637f6cceeed31dbbcf441b5dcd71ad4f9606cde4.tar.gz bcm5719-llvm-637f6cceeed31dbbcf441b5dcd71ad4f9606cde4.zip | |
llvm-objdump: don't assert if ELF file has no sections
FreeBSD core files, for example, have no sections (only program headers).
llvm.org/pr20139
Differential Revision: http://reviews.llvm.org/D4323
llvm-svn: 211904
Diffstat (limited to 'llvm')
| -rw-r--r-- | llvm/include/llvm/Object/ELF.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/include/llvm/Object/ELF.h b/llvm/include/llvm/Object/ELF.h index 716b3b93c0e..c968295b840 100644 --- a/llvm/include/llvm/Object/ELF.h +++ b/llvm/include/llvm/Object/ELF.h @@ -602,7 +602,7 @@ void ELFFile<ELFT>::VerifyStrTab(const Elf_Shdr *sh) const { template <class ELFT> uint64_t ELFFile<ELFT>::getNumSections() const { assert(Header && "Header not initialized!"); - if (Header->e_shnum == ELF::SHN_UNDEF) { + if (Header->e_shnum == ELF::SHN_UNDEF && Header->e_shoff > 0) { assert(SectionHeaderTable && "SectionHeaderTable not initialized!"); return SectionHeaderTable->sh_size; } |

