|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjpaul.Graphs.DiGraph<HMethod>
harpoon.Analysis.CallGraph
harpoon.Analysis.Quads.CallGraphImpl2
public class CallGraphImpl2
CallGraphImpl2
constructs a simple directed call graph.
This version pays closer attention to types for a more precise
result. To quantify this a bit, the standard CallGraphImpl
yields a 510-node call graph on the "Hello, World" program, compared
to the 370-node graph that CallGraphImpl2
gives you.
CallGraphImpl2
only works on SSI form.
Field Summary |
---|
Fields inherited from class harpoon.Analysis.CallGraph |
---|
navigator |
Fields inherited from class jpaul.Graphs.DiGraph |
---|
CACHING |
Constructor Summary | |
---|---|
CallGraphImpl2(ClassHierarchy ch,
HCodeFactory hcf)
Creates a CallGraph using the specified
ClassHierarchy . |
Method Summary | |
---|---|
Set |
callableMethods()
Returns the set of all the methods that can be called in the execution of the program. |
HMethod[] |
calls(CALL cs,
ReachingDefs rd,
ExactTypeMap etm)
Return a list of all possible methods called by this method at a particular call site. |
HMethod[] |
calls(HMethod m)
Return a list of all possible methods called by this method. |
Methods inherited from class harpoon.Analysis.CallGraph |
---|
getBiDiNavigator, getForwardNavigator, getRoots, getRunMethods |
Methods inherited from class jpaul.Graphs.DiGraph |
---|
constructBiDiNavigator, dfs, dfs2, diGraph, diGraph, findPath, findPath, forAllVertices, getComponentDiGraph, numArcs, numVertices, reverseDiGraph, subDiGraph, toString, transitivePred, transitivePred, transitiveSucc, transitiveSucc, union, vertices |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public CallGraphImpl2(ClassHierarchy ch, HCodeFactory hcf)
CallGraph
using the specified
ClassHierarchy
. hcf
must be a code
factory that generates quad-ssi form.
Method Detail |
---|
public HMethod[] calls(HMethod m)
calls
in class CallGraph
public HMethod[] calls(CALL cs, ReachingDefs rd, ExactTypeMap etm)
public Set callableMethods()
callableMethods
in class CallGraph
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |