mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-15 23:31:37 +00:00
* Print the "return" node in the graphs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4199 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
96f5493100
commit
eb265cdc90
@ -194,6 +194,23 @@ struct DOTGraphTraits<DSGraph*> : public DefaultDOTGraphTraits {
|
||||
assert(Node == I.getNode() && "Iterator not for this node!");
|
||||
return Node->getMergeMapLabel(I.getOffset());
|
||||
}
|
||||
|
||||
/// addCustomGraphFeatures - Use this graph writing hook to emit call nodes
|
||||
/// and the return node.
|
||||
///
|
||||
static void addCustomGraphFeatures(DSGraph *G, GraphWriter<DSGraph*> &GW) {
|
||||
// Output the returned value pointer...
|
||||
if (G->getRetNode().getNode() != 0) {
|
||||
// Output the return node...
|
||||
GW.emitSimpleNode((void*)1, "plaintext=circle", "returning");
|
||||
|
||||
// Add edge from return node to real destination
|
||||
int RetEdgeDest = G->getRetNode().getOffset();
|
||||
if (RetEdgeDest == 0) RetEdgeDest = -1;
|
||||
GW.emitEdge((void*)1, -1, G->getRetNode().getNode(),
|
||||
RetEdgeDest, "arrowtail=tee,color=gray63");
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user