Use the new tailclip property new added to graphviz CVS to make call nodes

actually intelligable

llvm-svn: 5554
This commit is contained in:
Chris Lattner 2003-02-13 20:14:40 +00:00
parent 3789369330
commit 60ede774af
1 changed files with 4 additions and 5 deletions

View File

@ -69,8 +69,7 @@ struct DOTGraphTraits<const DSGraph*> : public DefaultDOTGraphTraits {
}
static const char *getGraphProperties(const DSGraph *G) {
return "\tedge [arrowtail=\"dot\"];\n"
"\tsize=\"10,7.5\";\n"
return "\tsize=\"10,7.5\";\n"
"\trotate=\"90\";\n";
}
@ -135,21 +134,21 @@ struct DOTGraphTraits<const DSGraph*> : public DefaultDOTGraphTraits {
if (DSNode *N = Call.getRetVal().getNode()) {
int EdgeDest = Call.getRetVal().getOffset() >> DS::PointerShift;
if (EdgeDest == 0) EdgeDest = -1;
GW.emitEdge(&Call, 0, N, EdgeDest, "color=gray63");
GW.emitEdge(&Call, 0, N, EdgeDest, "color=gray63,tailclip=false");
}
// Print out the callee...
if (Call.isIndirectCall()) {
DSNode *N = Call.getCalleeNode();
assert(N && "Null call site callee node!");
GW.emitEdge(&Call, 1, N, -1, "color=gray63");
GW.emitEdge(&Call, 1, N, -1, "color=gray63,tailclip=false");
}
for (unsigned j = 0, e = Call.getNumPtrArgs(); j != e; ++j)
if (DSNode *N = Call.getPtrArg(j).getNode()) {
int EdgeDest = Call.getPtrArg(j).getOffset() >> DS::PointerShift;
if (EdgeDest == 0) EdgeDest = -1;
GW.emitEdge(&Call, j+2, N, EdgeDest, "color=gray63");
GW.emitEdge(&Call, j+2, N, EdgeDest, "color=gray63,tailclip=false");
}
}
}