From b1e759524dd94f7ce1e24935daed8383927e96c1 Mon Sep 17 00:00:00 2001 From: Simon Atanasyan Date: Fri, 8 May 2015 07:05:04 +0000 Subject: [PATCH] [yaml2elf] Replace error message by assert call in writeSectionContent methods Now caller of ELFState::writeSectionContent() methods is responsible to check a section type and selects an appropriate writeSectionContent method. So unexpected section type inside writeSectionContent method indicates a wrong usage of the method and should be guarded by assert. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@236808 91177308-0d34-0410-b5e6-96231b3b80d8 --- tools/yaml2obj/yaml2elf.cpp | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-) diff --git a/tools/yaml2obj/yaml2elf.cpp b/tools/yaml2obj/yaml2elf.cpp index 1226506f624..33865880563 100644 --- a/tools/yaml2obj/yaml2elf.cpp +++ b/tools/yaml2obj/yaml2elf.cpp @@ -350,11 +350,9 @@ bool ELFState::writeSectionContent(Elf_Shdr &SHeader, const ELFYAML::RelocationSection &Section, ContiguousBlobAccumulator &CBA) { - if (Section.Type != llvm::ELF::SHT_REL && - Section.Type != llvm::ELF::SHT_RELA) { - errs() << "error: Invalid relocation section type.\n"; - return false; - } + assert((Section.Type == llvm::ELF::SHT_REL || + Section.Type == llvm::ELF::SHT_RELA) && + "Section type is not SHT_REL nor SHT_RELA"); bool IsRela = Section.Type == llvm::ELF::SHT_RELA; SHeader.sh_entsize = IsRela ? sizeof(Elf_Rela) : sizeof(Elf_Rel); @@ -392,10 +390,8 @@ bool ELFState::writeSectionContent(Elf_Shdr &SHeader, const ELFYAML::Group &Section, ContiguousBlobAccumulator &CBA) { typedef typename object::ELFFile::Elf_Word Elf_Word; - if (Section.Type != llvm::ELF::SHT_GROUP) { - errs() << "error: Invalid section type.\n"; - return false; - } + assert(Section.Type == llvm::ELF::SHT_GROUP && + "Section type is not SHT_GROUP"); SHeader.sh_entsize = sizeof(Elf_Word); SHeader.sh_size = SHeader.sh_entsize * Section.Members.size(); @@ -423,10 +419,8 @@ template bool ELFState::writeSectionContent(Elf_Shdr &SHeader, const ELFYAML::MipsABIFlags &Section, ContiguousBlobAccumulator &CBA) { - if (Section.Type != llvm::ELF::SHT_MIPS_ABIFLAGS) { - errs() << "error: Invalid section type.\n"; - return false; - } + assert(Section.Type == llvm::ELF::SHT_MIPS_ABIFLAGS && + "Section type is not SHT_MIPS_ABIFLAGS"); object::Elf_Mips_ABIFlags Flags; zero(Flags); -- 2.34.1