Package | Description |
---|---|
soot.shimple |
Public classes for the SSA Shimple intermediate representation.
|
soot.shimple.internal |
Shimple internal messy stuff.
|
soot.shimple.toolkits.graph | |
soot.toolkits.graph |
Toolkit to produce and manipulate various types of control flow
graphs.
|
soot.toolkits.graph.pdg |
Modifier and Type | Field and Description |
---|---|
protected BlockGraph |
DefaultShimpleFactory.bg |
protected BlockGraph |
DefaultShimpleFactory.bg |
Modifier and Type | Method and Description |
---|---|
BlockGraph |
DefaultShimpleFactory.getBlockGraph() |
BlockGraph |
ShimpleFactory.getBlockGraph() |
BlockGraph |
DefaultShimpleFactory.getBlockGraph() |
BlockGraph |
ShimpleFactory.getBlockGraph() |
Modifier and Type | Field and Description |
---|---|
protected BlockGraph |
PhiNodeManager.cfg |
protected BlockGraph |
ShimpleBodyBuilder.cfg |
protected BlockGraph |
ShimpleBodyBuilder.cfg |
protected BlockGraph |
PhiNodeManager.cfg |
Modifier and Type | Method and Description |
---|---|
Map<Unit,Block> |
PhiNodeManager.getUnitToBlockMap(BlockGraph blocks)
Convenience function that maps units to blocks.
|
Map<Unit,Block> |
PhiNodeManager.getUnitToBlockMap(BlockGraph blocks)
Convenience function that maps units to blocks.
|
Modifier and Type | Field and Description |
---|---|
protected BlockGraph |
SimpleGlobalValueNumberer.cfg |
protected BlockGraph |
SimpleGlobalValueNumberer.cfg |
Constructor and Description |
---|
SimpleGlobalValueNumberer(BlockGraph cfg) |
SimpleGlobalValueNumberer(BlockGraph cfg) |
ValueGraph(BlockGraph cfg) |
ValueGraph(BlockGraph cfg) |
Modifier and Type | Class and Description |
---|---|
class |
ArrayRefBlockGraph
|
class |
BriefBlockGraph
|
class |
ClassicCompleteBlockGraph
Represents a CFG where the nodes are
Block s and the
edges are derived from control flow. |
class |
CompleteBlockGraph
|
class |
ExceptionalBlockGraph
Represents a CFG where the nodes are
Block s and the
edges are derived from control flow. |
class |
ZonedBlockGraph
A CFG where the nodes are
Block instances, and where
exception boundaries are taken into account when finding the
Blocks for the provided Body. |
Modifier and Type | Method and Description |
---|---|
static void |
BlockGraphConverter.addStartStopNodesTo(BlockGraph graph)
Transforms a multi-headed and/or multi-tailed BlockGraph to a
single-headed singled-tailed BlockGraph by inserting a dummy
start and stop nodes.
|
static void |
BlockGraphConverter.addStartStopNodesTo(BlockGraph graph)
Transforms a multi-headed and/or multi-tailed BlockGraph to a
single-headed singled-tailed BlockGraph by inserting a dummy
start and stop nodes.
|
static void |
BlockGraphConverter.reverse(BlockGraph graph)
Reverses a BlockGraph by making the heads tails, the tails
heads and reversing the edges.
|
static void |
BlockGraphConverter.reverse(BlockGraph graph)
Reverses a BlockGraph by making the heads tails, the tails
heads and reversing the edges.
|
Constructor and Description |
---|
Block(Unit aHead,
Unit aTail,
Body aBody,
int aIndexInMethod,
int aBlockLength,
BlockGraph aBlockGraph)
Constructs a Block in the context of a BlockGraph, and enclosing Body instances.
|
Block(Unit aHead,
Unit aTail,
Body aBody,
int aIndexInMethod,
int aBlockLength,
BlockGraph aBlockGraph)
Constructs a Block in the context of a BlockGraph, and enclosing Body instances.
|
Modifier and Type | Class and Description |
---|---|
class |
EnhancedBlockGraph |
Modifier and Type | Field and Description |
---|---|
protected BlockGraph |
HashMutablePDG.m_blockCFG |
protected BlockGraph |
RegionAnalysis.m_blockCFG |
protected BlockGraph |
HashMutablePDG.m_blockCFG |
protected BlockGraph |
RegionAnalysis.m_blockCFG |
protected BlockGraph |
RegionAnalysis.m_reverseBlockCFG |
protected BlockGraph |
RegionAnalysis.m_reverseBlockCFG |
Modifier and Type | Method and Description |
---|---|
BlockGraph |
RegionAnalysis.getBlockCFG() |
BlockGraph |
RegionAnalysis.getBlockCFG() |
BlockGraph |
HashMutablePDG.getBlockGraph() |
BlockGraph |
ProgramDependenceGraph.getBlockGraph() |
BlockGraph |
HashMutablePDG.getBlockGraph() |
BlockGraph |
ProgramDependenceGraph.getBlockGraph() |