Uses of Interface
soot.toolkits.graph.DirectedGraph
-
Packages that use DirectedGraph Package Description soot.dava.internal.asg soot.jbco.jimpleTransformations soot.jbco.util soot.jimple.toolkits.annotation.arraycheck Classes that carry out an analysis to determine whether or not array bounds checks are necessary.soot.jimple.toolkits.annotation.purity soot.jimple.toolkits.callgraph soot.jimple.toolkits.ide.icfg soot.jimple.toolkits.infoflow soot.jimple.toolkits.pointer soot.jimple.toolkits.scalar A toolkit for scalar optimization of Jimple.soot.jimple.toolkits.scalar.pre Particial redundency elimination.soot.jimple.toolkits.thread.mhp soot.jimple.toolkits.thread.mhp.pegcallgraph soot.jimple.toolkits.thread.synchronization soot.toolkits.graph Toolkit to produce and manipulate various types of control flow graphs.soot.toolkits.graph.interaction soot.toolkits.graph.pdg soot.toolkits.scalar A number of scalar optimizations, and the flow analysis framework.soot.util Generally useful utility classes for Soot.soot.util.cfgcmd -
-
Uses of DirectedGraph in soot.dava.internal.asg
Classes in soot.dava.internal.asg that implement DirectedGraph Modifier and Type Class Description classAugmentedStmtGraph -
Uses of DirectedGraph in soot.jbco.jimpleTransformations
Constructors in soot.jbco.jimpleTransformations with parameters of type DirectedGraph Constructor Description New2InitFlowAnalysis(DirectedGraph<Unit> graph) -
Uses of DirectedGraph in soot.jbco.util
Classes in soot.jbco.util that implement DirectedGraph Modifier and Type Class Description classSimpleExceptionalGraph -
Uses of DirectedGraph in soot.jimple.toolkits.annotation.arraycheck
Classes in soot.jimple.toolkits.annotation.arraycheck that implement DirectedGraph Modifier and Type Class Description classExtendedHashMutableDirectedGraph<N>add skipNode method to direct all predecessor edges to successors. -
Uses of DirectedGraph in soot.jimple.toolkits.annotation.purity
Classes in soot.jimple.toolkits.annotation.purity that implement DirectedGraph Modifier and Type Class Description classDirectedCallGraphBuilds a DirectedGraph from a CallGraph and SootMethodFilter.Fields in soot.jimple.toolkits.annotation.purity declared as DirectedGraph Modifier and Type Field Description protected DirectedGraph<SootMethod>AbstractInterproceduralAnalysis. dg -
Uses of DirectedGraph in soot.jimple.toolkits.callgraph
Constructors in soot.jimple.toolkits.callgraph with parameters of type DirectedGraph Constructor Description ConstantArrayAnalysis(DirectedGraph<Unit> graph, Body b) -
Uses of DirectedGraph in soot.jimple.toolkits.ide.icfg
Fields in soot.jimple.toolkits.ide.icfg with type parameters of type DirectedGraph Modifier and Type Field Description protected com.google.common.cache.LoadingCache<Body,DirectedGraph<Unit>>AbstractJimpleBasedICFG. bodyToUnitGraphMethods in soot.jimple.toolkits.ide.icfg that return DirectedGraph Modifier and Type Method Description DirectedGraph<Unit>AbstractJimpleBasedICFG. getOrCreateUnitGraph(Body body)DirectedGraph<Unit>AbstractJimpleBasedICFG. getOrCreateUnitGraph(SootMethod m)DirectedGraph<Unit>BackwardsInterproceduralCFG. getOrCreateUnitGraph(SootMethod m)DirectedGraph<N>BiDiInterproceduralCFG. getOrCreateUnitGraph(M body)protected DirectedGraph<Unit>AbstractJimpleBasedICFG. makeGraph(Body body) -
Uses of DirectedGraph in soot.jimple.toolkits.infoflow
Methods in soot.jimple.toolkits.infoflow with parameters of type DirectedGraph Modifier and Type Method Description static voidInfoFlowAnalysis. printGraphToDotFile(String filename, DirectedGraph<EquivalentValue> graph, String graphname, boolean onePage)static voidInfoFlowAnalysis. printInfoFlowSummary(DirectedGraph<EquivalentValue> g) -
Uses of DirectedGraph in soot.jimple.toolkits.pointer
Constructors in soot.jimple.toolkits.pointer with parameters of type DirectedGraph Constructor Description LocalMustNotAliasAnalysis(DirectedGraph<Unit> directedGraph, Body b) -
Uses of DirectedGraph in soot.jimple.toolkits.scalar
Constructors in soot.jimple.toolkits.scalar with parameters of type DirectedGraph Constructor Description FastAvailableExpressionsAnalysis(DirectedGraph<Unit> dg, SootMethod m, SideEffectTester st)PessimisticAvailableExpressionsAnalysis(DirectedGraph<Unit> dg, SootMethod m, SideEffectTester st)SlowAvailableExpressionsAnalysis(DirectedGraph<Unit> dg) -
Uses of DirectedGraph in soot.jimple.toolkits.scalar.pre
Constructors in soot.jimple.toolkits.scalar.pre with parameters of type DirectedGraph Constructor Description DelayabilityAnalysis(DirectedGraph<Unit> dg)Deprecated.DelayabilityAnalysis(DirectedGraph<Unit> dg, EarliestnessComputation earliest, Map<Unit,EquivalentValue> equivRhsMap)Automatically performs the Delayability-analysis on the graphdgand the Earliest-computationearliest.
theequivRhsMapis only here to avoid doing these things again...DelayabilityAnalysis(DirectedGraph<Unit> dg, EarliestnessComputation earliest, Map<Unit,EquivalentValue> equivRhsMap, BoundedFlowSet<EquivalentValue> set)Automatically performs the Delayability-analysis on the graphdgand the Earliest-computationearliest.
theequivRhsMapis only here to avoid doing these things again...
as set-operations are usually more efficient, if the sets come from one source, sets should be shared around analyses, if the analyses are to be combined.DownSafetyAnalysis(DirectedGraph<Unit> dg)Deprecated.DownSafetyAnalysis(DirectedGraph<Unit> dg, Map<Unit,EquivalentValue> unitToGen, SideEffectTester sideEffect)This constructor automatically performs the DownSafety-analysis.
the result of the analysis is as usual in FlowBefore (getFlowBefore()) and FlowAfter (getFlowAfter()).DownSafetyAnalysis(DirectedGraph<Unit> dg, Map<Unit,EquivalentValue> unitToGen, SideEffectTester sideEffect, BoundedFlowSet<EquivalentValue> set)This constructor automatically performs the DownSafety-analysis.
the result of the analysis is as usual in FlowBefore (getFlowBefore()) and FlowAfter (getFlowAfter()).
as sets-operations are usually more efficient, if the original set comes from the same source, this allows to share sets.NotIsolatedAnalysis(DirectedGraph<Unit> dg, LatestComputation latest, Map<Unit,EquivalentValue> equivRhsMap)Automatically performs the Isolation-analysis on the graphdgusing the Latest-computationlatest.
theequivRhsMapis only here to avoid doing these things again...NotIsolatedAnalysis(DirectedGraph<Unit> dg, LatestComputation latest, Map<Unit,EquivalentValue> equivRhsMap, BoundedFlowSet<EquivalentValue> set)Automatically performs the Isolation-analysis on the graphdgusing the Latest-computationlatest.
theequivRhsMapis only here to avoid doing these things again...
the shared set allows more efficient set-operations, when this analysis is joined with other analyses/computations.UpSafetyAnalysis(DirectedGraph<Unit> dg)Deprecated.UpSafetyAnalysis(DirectedGraph<Unit> dg, Map<Unit,EquivalentValue> unitToGen, SideEffectTester sideEffect)This constructor automatically performs the UpSafety-analysis.
the result of the analysis is as usual in FlowBefore (getFlowBefore()) and FlowAfter (getFlowAfter()).UpSafetyAnalysis(DirectedGraph<Unit> dg, Map<Unit,EquivalentValue> unitToGen, SideEffectTester sideEffect, BoundedFlowSet<EquivalentValue> set)This constructor automatically performs the UpSafety-analysis.
the result of the analysis is as usual in FlowBefore (getFlowBefore()) and FlowAfter (getFlowAfter()).
As usually flowset-operations are more efficient if shared, this allows to share sets over several analyses. -
Uses of DirectedGraph in soot.jimple.toolkits.thread.mhp
Classes in soot.jimple.toolkits.thread.mhp that implement DirectedGraph Modifier and Type Class Description classPegGraphOct.Methods in soot.jimple.toolkits.thread.mhp with parameters of type DirectedGraph Modifier and Type Method Description static voidPegCallGraphToDot. toDotFile(String methodname, DirectedGraph graph, String graphname)Generates a dot format file for a DirectedGraphConstructors in soot.jimple.toolkits.thread.mhp with parameters of type DirectedGraph Constructor Description PegCallGraphToDot(DirectedGraph graph, boolean onepage, String name)SCC(Iterator<T> it, DirectedGraph<T> g) -
Uses of DirectedGraph in soot.jimple.toolkits.thread.mhp.pegcallgraph
Classes in soot.jimple.toolkits.thread.mhp.pegcallgraph that implement DirectedGraph Modifier and Type Class Description classPegCallGraph -
Uses of DirectedGraph in soot.jimple.toolkits.thread.synchronization
Methods in soot.jimple.toolkits.thread.synchronization that return DirectedGraph Modifier and Type Method Description DirectedGraphLockAllocator. getDeadlockGraph() -
Uses of DirectedGraph in soot.toolkits.graph
Subinterfaces of DirectedGraph in soot.toolkits.graph Modifier and Type Interface Description interfaceDirectedBodyGraph<N>interfaceEdgeLabelledDirectedGraph<N,L>ADirectedGraphwith labels on the edges.interfaceExceptionalGraph<N>Defines the interface for navigating a control flow graph which distinguishes exceptional control flow.interfaceMutableDirectedGraph<N>Defines a DirectedGraph which is modifiable.interfaceMutableEdgeLabelledDirectedGraph<N,L>Defines a DirectedGraph which is modifiable and associates a label object with every edge.interfaceReversibleGraph<N>DirectedGraph which can be reversed and re-reversed.Classes in soot.toolkits.graph that implement DirectedGraph Modifier and Type Class Description classArrayRefBlockGraphclassBlockGraphRepresents the control flow graph of aBodyat the basic block level.classBriefBlockGraphclassBriefUnitGraphRepresents a CFG where the nodes are Unit instances, and where no edges are included to account for control flow associated with exceptions.classClassicCompleteBlockGraphRepresents a CFG where the nodes areBlocks and the edges are derived from control flow.classClassicCompleteUnitGraphRepresents a CFG for a Body instance where the nodes areUnitinstances, and where edges are a conservative indication of unexceptional and exceptional control flow.classCompleteBlockGraphclassCompleteUnitGraphclassDominatorTreeAdapter<N>This adapter provides a DirectedGraph interface to DominatorTree.classExceptionalBlockGraphRepresents a CFG where the nodes areBlocks and the edges are derived from control flow.classExceptionalUnitGraphclassHashMutableDirectedGraph<N>HashMap based implementation of a MutableBlockGraph.classHashMutableEdgeLabelledDirectedGraph<N,L>HashMap based implementation of a MutableEdgeLabelledDirectedGraph.classHashReversibleGraph<N>A reversible version of HashMutableDirectedGraphclassInverseGraph<N>An inverted graph of a directed graph.classMemoryEfficientGraph<N>A memory efficient version of HashMutableDirectedGraph, in the sense that throw-away objects passed as arguments will not be kept in the process of adding edges.classTrapUnitGraphclassUnitGraphRepresents a CFG where the nodes areUnitinstances and edges represent unexceptional and (possibly) exceptional control flow between Units.classZonedBlockGraphA CFG where the nodes areBlockinstances, and where exception boundaries are taken into account when finding the Blocks for the provided Body.Fields in soot.toolkits.graph declared as DirectedGraph Modifier and Type Field Description protected DirectedGraph<N>InverseGraph. gprotected DirectedGraph<N>StronglyConnectedComponentsFast. gprotected DirectedGraph<N>DominatorTree. graphprotected DirectedGraph<N>MHGDominatorsFinder. graphprotected DirectedGraph<N>SimpleDominatorsFinder. graphMethods in soot.toolkits.graph that return DirectedGraph Modifier and Type Method Description DirectedGraph<N>EdgeLabelledDirectedGraph. getEdgesForLabel(L label)Returns a DirectedGraph consisting of all edges with the given label and their nodes.DirectedGraph<N>DominatorsFinder. getGraph()Returns the graph to which the analysis pertains.DirectedGraph<N>DominatorTree. getGraph()DirectedGraph<N>MHGDominatorsFinder. getGraph()DirectedGraph<N>SimpleDominatorsFinder. getGraph()DirectedGraphStronglyConnectedComponents. getSuperGraph()Deprecated.Methods in soot.toolkits.graph with parameters of type DirectedGraph Modifier and Type Method Description List<N>Orderer. newList(DirectedGraph<N> g, boolean reverse)Builds an order for a directed graph.List<N>PseudoTopologicalOrderer. newList(DirectedGraph<N> g)Deprecated.use {@link #newList(DirectedGraph, boolean))} insteadList<N>PseudoTopologicalOrderer. newList(DirectedGraph<N> g, boolean reverse)Builds an order for a directed graph.List<N>SlowPseudoTopologicalOrderer. newList(DirectedGraph<N> g)Deprecated.use {@link #newList(DirectedGraph, boolean))} insteadList<N>SlowPseudoTopologicalOrderer. newList(DirectedGraph<N> g, boolean reverse)Builds an order for a directed graph.Constructors in soot.toolkits.graph with parameters of type DirectedGraph Constructor Description HashReversibleGraph(DirectedGraph<N> dg)InverseGraph(DirectedGraph<N> g)MHGDominatorsFinder(DirectedGraph<N> graph)MHGPostDominatorsFinder(DirectedGraph<N> graph)SimpleDominatorsFinder(DirectedGraph<N> graph)Compute dominators for provided singled-headed directed graph.StronglyConnectedComponents(DirectedGraph g)Deprecated.StronglyConnectedComponentsFast(DirectedGraph<N> g) -
Uses of DirectedGraph in soot.toolkits.graph.interaction
Methods in soot.toolkits.graph.interaction with parameters of type DirectedGraph Modifier and Type Method Description voidInteractionHandler. handleCfgEvent(DirectedGraph<?> g) -
Uses of DirectedGraph in soot.toolkits.graph.pdg
Subinterfaces of DirectedGraph in soot.toolkits.graph.pdg Modifier and Type Interface Description interfaceProgramDependenceGraphThis defines the interface to a Program Dependence Graph as defined in Ferrante, J., Ottenstein, K.Classes in soot.toolkits.graph.pdg that implement DirectedGraph Modifier and Type Class Description classEnhancedBlockGraphclassEnhancedUnitGraphThis class represents a control flow graph which behaves like an ExceptionalUnitGraph and BriefUnitGraph when there are no exception handling construct in the method; at the presence of such constructs, the CFG is constructed from a brief graph by adding a concise representation of the exceptional flow as well as START/STOP auxiliary nodes.classHashMutablePDGThis class implements a Program Dependence Graph as defined in Ferrante, J., Ottenstein, K.Methods in soot.toolkits.graph.pdg with parameters of type DirectedGraph Modifier and Type Method Description static StringRegionAnalysis. CFGtoString(DirectedGraph<Block> cfg, boolean blockDetail) -
Uses of DirectedGraph in soot.toolkits.scalar
Fields in soot.toolkits.scalar declared as DirectedGraph Modifier and Type Field Description protected DirectedGraph<N>AbstractFlowAnalysis. graphThe graph being analysed.protected DirectedGraph<N>ForwardFlowAnalysisExtended. graphThe graph being analysed.Methods in soot.toolkits.scalar with parameters of type DirectedGraph Modifier and Type Method Description protected LocalDefsSimpleLocalDefs. init(DirectedGraph<Unit> graph, Local[] locals, SimpleLocalDefs.FlowAnalysisMode mode)Constructors in soot.toolkits.scalar with parameters of type DirectedGraph Constructor Description AbstractFlowAnalysis(DirectedGraph<N> graph)Constructs a flow analysis on the givenDirectedGraph.BackwardFlowAnalysis(DirectedGraph<N> graph)Construct the analysis from a DirectedGraph representation of a Body.BetterConstantPropagator(DirectedGraph<Unit> graph)BranchedFlowAnalysis(DirectedGraph<N> graph)FlowAnalysis(DirectedGraph<N> graph)Constructs a flow analysis on the givenDirectedGraph.FlowAssignment(DirectedGraph<Unit> graph, Local[] locals, List<Unit>[] unitList, int units, boolean omitSSA)ForwardFlowAnalysis(DirectedGraph<N> graph)Construct the analysis from a DirectedGraph representation of a Body.ForwardFlowAnalysisExtended(DirectedGraph<N> graph)Construct the analysis from a DirectedGraph representation of a Body. -
Uses of DirectedGraph in soot.util
Methods in soot.util with parameters of type DirectedGraph Modifier and Type Method Description <N> voidPhaseDumper. dumpGraph(DirectedGraph<N> g, Body b)Asks thePhaseDumperto dump the passedDirectedGraphif the current phase is being dumped.<N> voidPhaseDumper. dumpGraph(DirectedGraph<N> g, Body b, boolean skipPhaseCheck)Asks thePhaseDumperto dump the passedDirectedGraphif the current phase is being dumped orskipPhaseCheck == true. -
Uses of DirectedGraph in soot.util.cfgcmd
Methods in soot.util.cfgcmd that return DirectedGraph Modifier and Type Method Description abstract DirectedGraph<?>CFGGraphType. buildGraph(Body b)Method that will build a graph of this type.Methods in soot.util.cfgcmd with parameters of type DirectedGraph Modifier and Type Method Description <N> DotGraphCFGToDotGraph. drawCFG(DirectedGraph<N> graph, Body body)Create aDotGraphwhose nodes and edges depict a control flow graph without distinguished exceptional edges.abstract DotGraphCFGGraphType. drawGraph(CFGToDotGraph drawer, DirectedGraph<?> g, Body b)Method that will draw aDotGraphrepresentation of the control flow in this type of graph.
-