Package soot.shimple.toolkits.graph
Class SimpleGlobalValueNumberer
- java.lang.Object
-
- soot.shimple.toolkits.graph.SimpleGlobalValueNumberer
-
- All Implemented Interfaces:
GlobalValueNumberer
public class SimpleGlobalValueNumberer extends Object implements GlobalValueNumberer
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected classSimpleGlobalValueNumberer.Partition
-
Field Summary
Fields Modifier and Type Field Description protected BlockGraphcfgprotected intcurrentPartitionNumberprotected List<SimpleGlobalValueNumberer.Partition>newPartitionsprotected Map<ValueGraph.Node,SimpleGlobalValueNumberer.Partition>nodeToPartitionprotected Set<SimpleGlobalValueNumberer.Partition>partitionsprotected ValueGraphvg
-
Constructor Summary
Constructors Constructor Description SimpleGlobalValueNumberer(BlockGraph cfg)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanareEqual(Local local1, Local local2)protected booleanchildrenAreInSamePartition(ValueGraph.Node node1, ValueGraph.Node node2)intgetGlobalValueNumber(Local local)protected voidinitPartition()protected voiditerPartition()static voidmain(String[] args)protected voidprocessPartition(SimpleGlobalValueNumberer.Partition partition)StringtoString()
-
-
-
Field Detail
-
cfg
protected BlockGraph cfg
-
vg
protected ValueGraph vg
-
partitions
protected Set<SimpleGlobalValueNumberer.Partition> partitions
-
nodeToPartition
protected Map<ValueGraph.Node,SimpleGlobalValueNumberer.Partition> nodeToPartition
-
currentPartitionNumber
protected int currentPartitionNumber
-
newPartitions
protected List<SimpleGlobalValueNumberer.Partition> newPartitions
-
-
Constructor Detail
-
SimpleGlobalValueNumberer
public SimpleGlobalValueNumberer(BlockGraph cfg)
-
-
Method Detail
-
main
public static void main(String[] args)
-
getGlobalValueNumber
public int getGlobalValueNumber(Local local)
- Specified by:
getGlobalValueNumberin interfaceGlobalValueNumberer
-
areEqual
public boolean areEqual(Local local1, Local local2)
- Specified by:
areEqualin interfaceGlobalValueNumberer
-
initPartition
protected void initPartition()
-
iterPartition
protected void iterPartition()
-
processPartition
protected void processPartition(SimpleGlobalValueNumberer.Partition partition)
-
childrenAreInSamePartition
protected boolean childrenAreInSamePartition(ValueGraph.Node node1, ValueGraph.Node node2)
-
-