- Make DSCallSite not inherit from std::vector.  Renamed methods slightly.
    Make copy ctor have two versions to avoid dealing with conditional template
    argument.  DSCallSite ctor now takes all arguments instead of taking one
    and being populated later.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4240 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Analysis/DataStructure/Printer.cpp b/lib/Analysis/DataStructure/Printer.cpp
index 25e51f1..8b6e362 100644
--- a/lib/Analysis/DataStructure/Printer.cpp
+++ b/lib/Analysis/DataStructure/Printer.cpp
@@ -110,13 +110,13 @@
     const std::vector<DSCallSite> &FCs = G->getFunctionCalls();
     for (unsigned i = 0, e = FCs.size(); i != e; ++i) {
       const DSCallSite &Call = FCs[i];
-      GW.emitSimpleNode(&Call, "shape=record", "call", Call.size());
+      GW.emitSimpleNode(&Call, "shape=record", "call", Call.getNumPtrArgs()+2);
 
-      for (unsigned j = 0, e = Call.size(); j != e; ++j)
-        if (Call[j].getNode()) {
-          int EdgeDest = Call[j].getOffset();
+      for (unsigned j = 0, e = Call.getNumPtrArgs(); j != e; ++j)
+        if (DSNode *N = Call.getPtrArg(j).getNode()) {
+          int EdgeDest = Call.getPtrArg(j).getOffset();
           if (EdgeDest == 0) EdgeDest = -1;
-          GW.emitEdge(&Call, j, Call[j].getNode(), EdgeDest, "color=gray63");
+          GW.emitEdge(&Call, j+2, N, EdgeDest, "color=gray63");
         }
     }
   }