The way we are doing it, per Vikram's recommendation, is to provide a
mapping between the callers nodes and the callees nodes at the time of the
call. Given that the only way they can communicate is through the
parameters, globals, and return node, this is fairly easy. You must take
into account that the DSGraphs may be different shapes though.
Thanks for the tip, but what do you mean by "DSGraphs may be different
Ok, here is a trivial example:
In the Callee: A->(itself)
In the caller: B->C->itself
Your mapping should provide:
A->B (not sure about this one, is there a better way?)
I don't know how this example could be manufactured in code, but I'm sure
there are more complex cases which need the same principle...