]> granicus.if.org Git - llvm/commitdiff
[yaml2obj] - Simplify and reduce the code. NFC.
authorGeorge Rimar <grimar@accesssoftek.com>
Mon, 29 Apr 2019 12:25:01 +0000 (12:25 +0000)
committerGeorge Rimar <grimar@accesssoftek.com>
Mon, 29 Apr 2019 12:25:01 +0000 (12:25 +0000)
This inlines 2 single line static methods
and simplifies the code.

It is also possible to remove the `Is64Bit`
variable since it is used only once,
but I am not sure it will be better for readability.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@359445 91177308-0d34-0410-b5e6-96231b3b80d8

tools/yaml2obj/yaml2elf.cpp

index ba07c9c100cdd457db932ec9c3fbfcfb8a84f733..cb12cdd5385df4925cbf1df1c30623d37e754ee8 100644 (file)
@@ -933,24 +933,15 @@ std::vector<StringRef> ELFState<ELFT>::implicitSectionNames() const {
   return {".symtab", ".strtab", ".shstrtab", ".dynsym", ".dynstr"};
 }
 
-static bool is64Bit(const ELFYAML::Object &Doc) {
-  return Doc.Header.Class == ELFYAML::ELF_ELFCLASS(ELF::ELFCLASS64);
-}
-
-static bool isLittleEndian(const ELFYAML::Object &Doc) {
-  return Doc.Header.Data == ELFYAML::ELF_ELFDATA(ELF::ELFDATA2LSB);
-}
-
 int yaml2elf(llvm::ELFYAML::Object &Doc, raw_ostream &Out) {
-  if (is64Bit(Doc)) {
-    if (isLittleEndian(Doc))
+  bool IsLE = Doc.Header.Data == ELFYAML::ELF_ELFDATA(ELF::ELFDATA2LSB);
+  bool Is64Bit = Doc.Header.Class == ELFYAML::ELF_ELFCLASS(ELF::ELFCLASS64);
+  if (Is64Bit) {
+    if (IsLE)
       return ELFState<object::ELF64LE>::writeELF(Out, Doc);
-    else
-      return ELFState<object::ELF64BE>::writeELF(Out, Doc);
-  } else {
-    if (isLittleEndian(Doc))
-      return ELFState<object::ELF32LE>::writeELF(Out, Doc);
-    else
-      return ELFState<object::ELF32BE>::writeELF(Out, Doc);
+    return ELFState<object::ELF64BE>::writeELF(Out, Doc);
   }
+  if (IsLE)
+    return ELFState<object::ELF32LE>::writeELF(Out, Doc);
+  return ELFState<object::ELF32BE>::writeELF(Out, Doc);
 }