There is no need to maintain separate labelid list in the dwarf writer. It is not...
authorDevang Patel <dpatel@apple.com>
Mon, 12 Jan 2009 18:41:00 +0000 (18:41 +0000)
committerDevang Patel <dpatel@apple.com>
Mon, 12 Jan 2009 18:41:00 +0000 (18:41 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62090 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/AsmPrinter/DwarfWriter.cpp

index 25420473ad6913f40c5a30811969c6282ca7898b..0194dd4e490c58d454484e34892919f55cc5fe66 100644 (file)
@@ -1341,37 +1341,6 @@ private:
   // DbgScopeMap - Tracks the scopes in the current function.
   DenseMap<GlobalVariable *, DbgScope *> DbgScopeMap;
   
-  // DbgLabelIDList - One entry per assigned label.  Normally the entry is equal to
-  // the list index(+1).  If the entry is zero then the label has been deleted.
-  // Any other value indicates the label has been deleted by is mapped to
-  // another label.
-  SmallVector<unsigned, 32> DbgLabelIDList;
-
-  /// NextLabelID - Return the next unique label id.
-  ///
-  unsigned NextLabelID() {
-    unsigned ID = (unsigned)DbgLabelIDList.size() + 1;
-    DbgLabelIDList.push_back(ID);
-    return ID;
-  }
-
-  /// RemapLabel - Indicate that a label has been merged into another.
-  ///
-  void RemapLabel(unsigned OldLabelID, unsigned NewLabelID) {
-    assert(0 < OldLabelID && OldLabelID <= DbgLabelIDList.size() &&
-          "Old label ID out of range.");
-    assert(NewLabelID <= DbgLabelIDList.size() &&
-          "New label ID out of range.");
-    DbgLabelIDList[OldLabelID - 1] = NewLabelID;
-  }
-  
-  /// MappedLabel - Find out the label's final ID.  Zero indicates deletion.
-  /// ID != Mapped ID indicates that the label was folded into another label.
-  unsigned MappedLabel(unsigned LabelID) const {
-    assert(LabelID <= DbgLabelIDList.size() && "Debug label ID out of range.");
-    return LabelID ? DbgLabelIDList[LabelID - 1] : 0;
-  }
-
   struct FunctionDebugFrameInfo {
     unsigned Number;
     std::vector<MachineMove> Moves;
@@ -2569,7 +2538,7 @@ private:
   unsigned RecordSourceLine(Value *V, unsigned Line, unsigned Col) {
     CompileUnit *Unit = DW_CUs[V];
     assert (Unit && "Unable to find CompileUnit");
-    unsigned ID = NextLabelID();
+    unsigned ID = MMI->NextLabelID();
     Lines.push_back(SrcLineInfo(Line, Col, Unit->getID(), ID));
     return ID;
   }
@@ -2588,7 +2557,7 @@ private:
   ///
   unsigned RecordRegionStart(GlobalVariable *V) {
     DbgScope *Scope = getOrCreateScope(V);
-    unsigned ID = NextLabelID();
+    unsigned ID = MMI->NextLabelID();
     if (!Scope->getStartLabelID()) Scope->setStartLabelID(ID);
     return ID;
   }
@@ -2597,7 +2566,7 @@ private:
   ///
   unsigned RecordRegionEnd(GlobalVariable *V) {
     DbgScope *Scope = getOrCreateScope(V);
-    unsigned ID = NextLabelID();
+    unsigned ID = MMI->NextLabelID();
     Scope->setEndLabelID(ID);
     return ID;
   }
@@ -2659,8 +2628,8 @@ private:
       // FIXME - Ignore inlined functions for the time being.
       if (!Scope->getParent()) continue;
 
-      unsigned StartID = MappedLabel(Scope->getStartLabelID());
-      unsigned EndID = MappedLabel(Scope->getEndLabelID());
+      unsigned StartID = MMI->MappedLabel(Scope->getStartLabelID());
+      unsigned EndID = MMI->MappedLabel(Scope->getEndLabelID());
 
       // Ignore empty scopes.
       if (StartID == EndID && StartID != 0) continue;