mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-08-18 12:29:21 +00:00
Use the new tailclip property new added to graphviz CVS to make call nodes
actually intelligable git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5554 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
0779388ff8
commit
352a6fa36f
@ -69,8 +69,7 @@ struct DOTGraphTraits<const DSGraph*> : public DefaultDOTGraphTraits {
|
|||||||
}
|
}
|
||||||
|
|
||||||
static const char *getGraphProperties(const DSGraph *G) {
|
static const char *getGraphProperties(const DSGraph *G) {
|
||||||
return "\tedge [arrowtail=\"dot\"];\n"
|
return "\tsize=\"10,7.5\";\n"
|
||||||
"\tsize=\"10,7.5\";\n"
|
|
||||||
"\trotate=\"90\";\n";
|
"\trotate=\"90\";\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -135,21 +134,21 @@ struct DOTGraphTraits<const DSGraph*> : public DefaultDOTGraphTraits {
|
|||||||
if (DSNode *N = Call.getRetVal().getNode()) {
|
if (DSNode *N = Call.getRetVal().getNode()) {
|
||||||
int EdgeDest = Call.getRetVal().getOffset() >> DS::PointerShift;
|
int EdgeDest = Call.getRetVal().getOffset() >> DS::PointerShift;
|
||||||
if (EdgeDest == 0) EdgeDest = -1;
|
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...
|
// Print out the callee...
|
||||||
if (Call.isIndirectCall()) {
|
if (Call.isIndirectCall()) {
|
||||||
DSNode *N = Call.getCalleeNode();
|
DSNode *N = Call.getCalleeNode();
|
||||||
assert(N && "Null call site callee node!");
|
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)
|
for (unsigned j = 0, e = Call.getNumPtrArgs(); j != e; ++j)
|
||||||
if (DSNode *N = Call.getPtrArg(j).getNode()) {
|
if (DSNode *N = Call.getPtrArg(j).getNode()) {
|
||||||
int EdgeDest = Call.getPtrArg(j).getOffset() >> DS::PointerShift;
|
int EdgeDest = Call.getPtrArg(j).getOffset() >> DS::PointerShift;
|
||||||
if (EdgeDest == 0) EdgeDest = -1;
|
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");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user