Uses of Class
soot.toolkits.graph.Block

Packages that use Block
soot Base Soot classes, shared by different intermediate representations. 
soot.shimple Public classes for the SSA Shimple intermediate representation. 
soot.shimple.internal Shimple internal messy stuff. 
soot.toolkits.graph Toolkit to produce and manipulate various types of control flow graphs. 
soot.toolkits.graph.pdg   
 

Uses of Block in soot
 

Fields in soot with type parameters of type Block
protected  Map<Block,Integer> AbstractJasminClass.blockToLogicalStackHeight
           
protected  Map<Block,Integer> AbstractJasminClass.blockToLogicalStackHeight
           
protected  Map<Block,Integer> AbstractJasminClass.blockToStackHeight
           
protected  Map<Block,Integer> AbstractJasminClass.blockToStackHeight
           
 

Uses of Block in soot.shimple
 

Methods in soot.shimple with parameters of type Block
 boolean PhiExpr.addArg(Value arg, Block pred)
          Add the given argument associated with the given CFG predecessor.
 boolean PhiExpr.addArg(Value arg, Block pred)
          Add the given argument associated with the given CFG predecessor.
 ValueUnitPair PhiExpr.getArgBox(Block pred)
          Returns the argument pair corresponding to the given CFG predecessor.
 ValueUnitPair PhiExpr.getArgBox(Block pred)
          Returns the argument pair corresponding to the given CFG predecessor.
 int PhiExpr.getArgIndex(Block pred)
          Returns the index of the argument associated with the given control flow predecessor.
 int PhiExpr.getArgIndex(Block pred)
          Returns the index of the argument associated with the given control flow predecessor.
 Value PhiExpr.getValue(Block pred)
          Get the PhiExpr argument corresponding to the given control flow predecessor, returns null if not available.
 Value PhiExpr.getValue(Block pred)
          Get the PhiExpr argument corresponding to the given control flow predecessor, returns null if not available.
 boolean PhiExpr.removeArg(Block pred)
          Remove the argument corresponding to the given CFG predecessor.
 boolean PhiExpr.removeArg(Block pred)
          Remove the argument corresponding to the given CFG predecessor.
 boolean PhiExpr.setArg(int index, Value arg, Block pred)
          Modify the PhiExpr argument at the given index with the given information.
 boolean PhiExpr.setArg(int index, Value arg, Block pred)
          Modify the PhiExpr argument at the given index with the given information.
 boolean PhiExpr.setPred(int index, Block pred)
          Update the CFG predecessor associated with the PhiExpr argument at the given index.
 boolean PhiExpr.setPred(int index, Block pred)
          Update the CFG predecessor associated with the PhiExpr argument at the given index.
 boolean PhiExpr.setValue(Block pred, Value arg)
          Locate the argument assocatiated with the given CFG predecessor and set the value.
 boolean PhiExpr.setValue(Block pred, Value arg)
          Locate the argument assocatiated with the given CFG predecessor and set the value.
 

Uses of Block in soot.shimple.internal
 

Fields in soot.shimple.internal with type parameters of type Block
protected  Map<Unit,Block> PhiNodeManager.unitToBlock
           
protected  Map<Unit,Block> PhiNodeManager.unitToBlock
           
 

Methods in soot.shimple.internal that return types with arguments of type Block
 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.
 

Methods in soot.shimple.internal with parameters of type Block
 boolean SPhiExpr.addArg(Value arg, Block pred)
           
 boolean SPhiExpr.addArg(Value arg, Block pred)
           
 ValueUnitPair SPhiExpr.getArgBox(Block pred)
           
 ValueUnitPair SPhiExpr.getArgBox(Block pred)
           
 int SPhiExpr.getArgIndex(Block pred)
           
 int SPhiExpr.getArgIndex(Block pred)
           
static List PiNodeManager.getUseBoxesFromBlock(Block block)
           
static List PiNodeManager.getUseBoxesFromBlock(Block block)
           
 Value SPhiExpr.getValue(Block pred)
           
 Value SPhiExpr.getValue(Block pred)
           
 void PiNodeManager.insertPiNodes(Local local, Block frontierBlock)
           
 void PiNodeManager.insertPiNodes(Local local, Block frontierBlock)
           
protected  boolean PhiNodeManager.needsPhiNode(Local local, Block block)
          Function that allows us to weed out special cases where we do not require Phi nodes.
protected  boolean PhiNodeManager.needsPhiNode(Local local, Block block)
          Function that allows us to weed out special cases where we do not require Phi nodes.
 void PhiNodeManager.prependTrivialPhiNode(Local local, Block frontierBlock)
          Inserts a trivial Phi node with the appropriate number of arguments.
 void PhiNodeManager.prependTrivialPhiNode(Local local, Block frontierBlock)
          Inserts a trivial Phi node with the appropriate number of arguments.
 boolean SPhiExpr.removeArg(Block pred)
           
 boolean SPhiExpr.removeArg(Block pred)
           
 void ShimpleBodyBuilder.renameLocalsSearch(Block block)
          Driven by renameLocals().
 void ShimpleBodyBuilder.renameLocalsSearch(Block block)
          Driven by renameLocals().
 boolean SPhiExpr.setArg(int index, Value arg, Block pred)
           
 boolean SPhiExpr.setArg(int index, Value arg, Block pred)
           
 boolean SPhiExpr.setPred(int index, Block pred)
           
 boolean SPhiExpr.setPred(int index, Block pred)
           
 boolean SPhiExpr.setValue(Block pred, Value arg)
           
 boolean SPhiExpr.setValue(Block pred, Value arg)
           
 

Uses of Block in soot.toolkits.graph
 

Fields in soot.toolkits.graph with type parameters of type Block
protected  List<Block> BlockGraph.mBlocks
           
protected  List<Block> BlockGraph.mBlocks
           
protected  List<Block> BlockGraph.mHeads
           
protected  List<Block> BlockGraph.mHeads
           
protected  List<Block> BlockGraph.mTails
           
protected  List<Block> BlockGraph.mTails
           
 

Methods in soot.toolkits.graph that return Block
 Block ExceptionalBlockGraph.ExceptionDest.getHandlerNode()
           
 Block ExceptionalBlockGraph.ExceptionDest.getHandlerNode()
           
 

Methods in soot.toolkits.graph that return types with arguments of type Block
protected  Map<Unit,Block> BlockGraph.buildBlocks(Set<Unit> leaders, UnitGraph unitGraph)
          A utility method that does most of the work of constructing basic blocks, once the set of block leaders has been determined, and which designates the heads and tails of the graph.
protected  Map<Unit,Block> ExceptionalBlockGraph.buildBlocks(Set<Unit> leaders, UnitGraph uncastUnitGraph)
          A utility method that does most of the work of constructing basic blocks, once the set of block leaders has been determined, and which designates the heads and tails of the graph.
protected  Map<Unit,Block> ExceptionalBlockGraph.buildBlocks(Set<Unit> leaders, UnitGraph uncastUnitGraph)
          A utility method that does most of the work of constructing basic blocks, once the set of block leaders has been determined, and which designates the heads and tails of the graph.
protected  Map<Unit,Block> BlockGraph.buildBlocks(Set<Unit> leaders, UnitGraph unitGraph)
          A utility method that does most of the work of constructing basic blocks, once the set of block leaders has been determined, and which designates the heads and tails of the graph.
 List<Block> BlockGraph.getBlocks()
          Returns a list of the Blocks composing this graph.
 List<Block> BlockGraph.getBlocks()
          Returns a list of the Blocks composing this graph.
 List<Block> ExceptionalBlockGraph.getExceptionalPredsOf(Block b)
           
 List<Block> ExceptionalBlockGraph.getExceptionalPredsOf(Block b)
           
 List<Block> ExceptionalBlockGraph.getExceptionalSuccsOf(Block b)
           
 List<Block> ExceptionalBlockGraph.getExceptionalSuccsOf(Block b)
           
 List<Block> BlockGraph.getHeads()
           
 List<Block> BlockGraph.getHeads()
           
 List<Block> Block.getPreds()
          Returns the List of Block that are predecessors to this block,
 List<Block> Block.getPreds()
          Returns the List of Block that are predecessors to this block,
 List<Block> BlockGraph.getPredsOf(Block b)
           
 List<Block> BlockGraph.getPredsOf(Block b)
           
 List<Block> Block.getSuccs()
          Returns the List of Blocks that are successors to this block,
 List<Block> Block.getSuccs()
          Returns the List of Blocks that are successors to this block,
 List<Block> BlockGraph.getSuccsOf(Block b)
           
 List<Block> BlockGraph.getSuccsOf(Block b)
           
 List<Block> BlockGraph.getTails()
           
 List<Block> BlockGraph.getTails()
           
 List<Block> ExceptionalBlockGraph.getUnexceptionalPredsOf(Block b)
           
 List<Block> ExceptionalBlockGraph.getUnexceptionalPredsOf(Block b)
           
 List<Block> ExceptionalBlockGraph.getUnexceptionalSuccsOf(Block b)
           
 List<Block> ExceptionalBlockGraph.getUnexceptionalSuccsOf(Block b)
           
 Iterator<Block> BlockGraph.iterator()
           
 Iterator<Block> BlockGraph.iterator()
           
 

Methods in soot.toolkits.graph with parameters of type Block
 List<Block> ExceptionalBlockGraph.getExceptionalPredsOf(Block b)
           
 List<Block> ExceptionalBlockGraph.getExceptionalPredsOf(Block b)
           
 List<Block> ExceptionalBlockGraph.getExceptionalSuccsOf(Block b)
           
 List<Block> ExceptionalBlockGraph.getExceptionalSuccsOf(Block b)
           
 Collection<ExceptionalBlockGraph.ExceptionDest> ExceptionalBlockGraph.getExceptionDests(Block b)
           
 Collection<ExceptionalBlockGraph.ExceptionDest> ExceptionalBlockGraph.getExceptionDests(Block b)
           
 List<Block> BlockGraph.getPredsOf(Block b)
           
 List<Block> BlockGraph.getPredsOf(Block b)
           
 List<Block> BlockGraph.getSuccsOf(Block b)
           
 List<Block> BlockGraph.getSuccsOf(Block b)
           
 List<Block> ExceptionalBlockGraph.getUnexceptionalPredsOf(Block b)
           
 List<Block> ExceptionalBlockGraph.getUnexceptionalPredsOf(Block b)
           
 List<Block> ExceptionalBlockGraph.getUnexceptionalSuccsOf(Block b)
           
 List<Block> ExceptionalBlockGraph.getUnexceptionalSuccsOf(Block b)
           
 

Method parameters in soot.toolkits.graph with type arguments of type Block
 void Block.setPreds(List<Block> preds)
          Sets the list of Blocks that are predecessors of this block in it's enclosing BlockGraph instance.
 void Block.setPreds(List<Block> preds)
          Sets the list of Blocks that are predecessors of this block in it's enclosing BlockGraph instance.
 void Block.setSuccs(List<Block> succs)
          Sets the list of Blocks that are successors of this block in it's enclosing BlockGraph instance.
 void Block.setSuccs(List<Block> succs)
          Sets the list of Blocks that are successors of this block in it's enclosing BlockGraph instance.
 

Constructors in soot.toolkits.graph with parameters of type Block
ExceptionalBlockGraph.ExceptionDest(Trap trap, ThrowableSet throwables, Block handler)
           
ExceptionalBlockGraph.ExceptionDest(Trap trap, ThrowableSet throwables, Block handler)
           
 

Uses of Block in soot.toolkits.graph.pdg
 

Fields in soot.toolkits.graph.pdg with type parameters of type Block
protected  Hashtable<Block,Region> RegionAnalysis.m_block2region
           
protected  Hashtable<Block,Region> RegionAnalysis.m_block2region
           
 

Methods in soot.toolkits.graph.pdg that return types with arguments of type Block
 Hashtable<Block,Region> RegionAnalysis.getBlock2RegionMap()
           
 Hashtable<Block,Region> RegionAnalysis.getBlock2RegionMap()
           
 List<Block> IRegion.getBlocks()
           
 List<Block> PDGRegion.getBlocks()
           
 List<Block> Region.getBlocks()
           
 List<Block> Region.getBlocks()
           
 List<Block> PDGRegion.getBlocks()
           
 List<Block> IRegion.getBlocks()
           
 

Methods in soot.toolkits.graph.pdg with parameters of type Block
 void Region.add(Block b)
           
 void Region.add(Block b)
           
 void Region.add2Back(Block b)
           
 void Region.add2Back(Block b)
           
 void Region.remove(Block b)
           
 void Region.remove(Block b)
           
 

Constructor parameters in soot.toolkits.graph.pdg with type arguments of type Block
Region(int id, List<Block> blocks, SootMethod m, SootClass c, UnitGraph ug)
           
Region(int id, List<Block> blocks, SootMethod m, SootClass c, UnitGraph ug)