[llvm] r270507 - llvm-dwp: Reduce indentation

David Blaikie via llvm-commits llvm-commits at lists.llvm.org
Mon May 23 15:38:06 PDT 2016


Author: dblaikie
Date: Mon May 23 17:38:06 2016
New Revision: 270507

URL: http://llvm.org/viewvc/llvm-project?rev=270507&view=rev
Log:
llvm-dwp: Reduce indentation

Modified:
    llvm/trunk/tools/llvm-dwp/llvm-dwp.cpp

Modified: llvm/trunk/tools/llvm-dwp/llvm-dwp.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/llvm-dwp/llvm-dwp.cpp?rev=270507&r1=270506&r2=270507&view=diff
==============================================================================
--- llvm/trunk/tools/llvm-dwp/llvm-dwp.cpp (original)
+++ llvm/trunk/tools/llvm-dwp/llvm-dwp.cpp Mon May 23 17:38:06 2016
@@ -521,53 +521,10 @@ static Error write(MCStreamer &Out, Arra
     if (InfoSection.empty())
       continue;
 
-    if (!CurCUIndexSection.empty()) {
-      DWARFUnitIndex CUIndex(DW_SECT_INFO);
-      DataExtractor CUIndexData(CurCUIndexSection, Obj.isLittleEndian(), 0);
-      if (!CUIndex.parse(CUIndexData))
-        return make_error<DWPError>("Failed to parse cu_index");
-
-      for (const DWARFUnitIndex::Entry &E : CUIndex.getRows()) {
-        auto *I = E.getOffsets();
-        if (!I)
-          continue;
-        auto P =
-            IndexEntries.insert(std::make_pair(E.getSignature(), CurEntry));
-        Expected<CompileUnitIdentifiers> EID = getCUIdentifiers(
-            getSubsection(AbbrevSection, E, DW_SECT_ABBREV),
-            getSubsection(InfoSection, E, DW_SECT_INFO),
-            getSubsection(CurStrOffsetSection, E, DW_SECT_STR_OFFSETS),
-            CurStrSection);
-        if (!EID)
-          return EID.takeError();
-        const auto &ID = *EID;
-        if (!P.second)
-          return buildDuplicateError(*P.first, ID, Input);
-        auto &NewEntry = P.first->second;
-        NewEntry.Name = ID.Name;
-        NewEntry.DWOName = ID.DWOName;
-        NewEntry.DWPName = Input;
-        for (auto Kind : CUIndex.getColumnKinds()) {
-          auto &C = NewEntry.Contributions[Kind - DW_SECT_INFO];
-          C.Offset += I->Offset;
-          C.Length = I->Length;
-          ++I;
-        }
-      }
+    writeStringsAndOffsets(Out, Strings, StrOffsetSection, CurStrSection,
+                           CurStrOffsetSection);
 
-      if (!CurTypesSection.empty()) {
-        if (CurTypesSection.size() != 1)
-          return make_error<DWPError>(
-              "multiple type unit sections in .dwp file");
-        DWARFUnitIndex TUIndex(DW_SECT_TYPES);
-        DataExtractor TUIndexData(CurTUIndexSection, Obj.isLittleEndian(), 0);
-        if (!TUIndex.parse(TUIndexData))
-          return make_error<DWPError>("Failed to parse tu_index");
-        addAllTypesFromDWP(Out, TypeIndexEntries, TUIndex, TypesSection,
-                           CurTypesSection.front(), CurEntry,
-                           ContributionOffsets[DW_SECT_TYPES - DW_SECT_INFO]);
-      }
-    } else {
+    if (CurCUIndexSection.empty()) {
       Expected<CompileUnitIdentifiers> EID = getCUIdentifiers(
           AbbrevSection, InfoSection, CurStrOffsetSection, CurStrSection);
       if (!EID)
@@ -580,10 +537,52 @@ static Error write(MCStreamer &Out, Arra
       P.first->second.DWOName = ID.DWOName;
       addAllTypes(Out, TypeIndexEntries, TypesSection, CurTypesSection,
                   CurEntry, ContributionOffsets[DW_SECT_TYPES - DW_SECT_INFO]);
+      continue;
     }
 
-    writeStringsAndOffsets(Out, Strings, StrOffsetSection, CurStrSection,
-                           CurStrOffsetSection);
+    DWARFUnitIndex CUIndex(DW_SECT_INFO);
+    DataExtractor CUIndexData(CurCUIndexSection, Obj.isLittleEndian(), 0);
+    if (!CUIndex.parse(CUIndexData))
+      return make_error<DWPError>("Failed to parse cu_index");
+
+    for (const DWARFUnitIndex::Entry &E : CUIndex.getRows()) {
+      auto *I = E.getOffsets();
+      if (!I)
+        continue;
+      auto P = IndexEntries.insert(std::make_pair(E.getSignature(), CurEntry));
+      Expected<CompileUnitIdentifiers> EID = getCUIdentifiers(
+          getSubsection(AbbrevSection, E, DW_SECT_ABBREV),
+          getSubsection(InfoSection, E, DW_SECT_INFO),
+          getSubsection(CurStrOffsetSection, E, DW_SECT_STR_OFFSETS),
+          CurStrSection);
+      if (!EID)
+        return EID.takeError();
+      const auto &ID = *EID;
+      if (!P.second)
+        return buildDuplicateError(*P.first, ID, Input);
+      auto &NewEntry = P.first->second;
+      NewEntry.Name = ID.Name;
+      NewEntry.DWOName = ID.DWOName;
+      NewEntry.DWPName = Input;
+      for (auto Kind : CUIndex.getColumnKinds()) {
+        auto &C = NewEntry.Contributions[Kind - DW_SECT_INFO];
+        C.Offset += I->Offset;
+        C.Length = I->Length;
+        ++I;
+      }
+    }
+
+    if (!CurTypesSection.empty()) {
+      if (CurTypesSection.size() != 1)
+        return make_error<DWPError>("multiple type unit sections in .dwp file");
+      DWARFUnitIndex TUIndex(DW_SECT_TYPES);
+      DataExtractor TUIndexData(CurTUIndexSection, Obj.isLittleEndian(), 0);
+      if (!TUIndex.parse(TUIndexData))
+        return make_error<DWPError>("Failed to parse tu_index");
+      addAllTypesFromDWP(Out, TypeIndexEntries, TUIndex, TypesSection,
+                         CurTypesSection.front(), CurEntry,
+                         ContributionOffsets[DW_SECT_TYPES - DW_SECT_INFO]);
+    }
   }
 
   // Lie about there being no info contributions so the TU index only includes




More information about the llvm-commits mailing list