Fix some more problems where we called getOffset before getNode()
authorChris Lattner <sabre@nondot.org>
Sat, 30 Oct 2004 07:21:19 +0000 (07:21 +0000)
committerChris Lattner <sabre@nondot.org>
Sat, 30 Oct 2004 07:21:19 +0000 (07:21 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17358 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Analysis/DataStructure/Printer.cpp

index c951433f49a1fcbcd8a78f2fb48c89387d971a9c..67d5c275506295fbc5d387f88e727160961cf596 100644 (file)
@@ -144,9 +144,10 @@ struct DOTGraphTraits<const DSGraph*> : public DefaultDOTGraphTraits {
         GW.emitSimpleNode(I->first, "", OS.str());
         
         // Add edge from return node to real destination
+        DSNode *DestNode = I->second.getNode();
         int EdgeDest = I->second.getOffset() >> DS::PointerShift;
         if (EdgeDest == 0) EdgeDest = -1;
-        GW.emitEdge(I->first, -1, I->second.getNode(),
+        GW.emitEdge(I->first, -1, DestNode,
                     EdgeDest, "arrowtail=tee,color=gray63");
       }
 
@@ -165,9 +166,10 @@ struct DOTGraphTraits<const DSGraph*> : public DefaultDOTGraphTraits {
         GW.emitSimpleNode((void*)I->first, "plaintext=circle", Label);
 
         // Add edge from return node to real destination
+        DSNode *RetNode = I->second.getNode();
         int RetEdgeDest = I->second.getOffset() >> DS::PointerShift;;
         if (RetEdgeDest == 0) RetEdgeDest = -1;
-        GW.emitEdge((void*)I->first, -1, I->second.getNode(),
+        GW.emitEdge((void*)I->first, -1, RetNode,
                     RetEdgeDest, "arrowtail=tee,color=gray63");
       }