Package soot.shimple

Public classes for the SSA Shimple intermediate representation.

See:
          Description

Interface Summary
PhiExpr A fully defined PhiExpr usually consists of a list of Values for the arguments alongst with the corresponding control flow predecessor for each argument.
PiExpr  
ShimpleExpr  
ShimpleExprSwitch  
ShimpleFactory  
ShimpleValueSwitch  
 

Class Summary
AbstractShimpleExprSwitch  
AbstractShimpleValueSwitch  
DefaultShimpleFactory  
Shimple Contains the constructors for the components of the SSA Shimple grammar.
ShimpleBody Implementation of the Body class for the SSA Shimple IR.
ShimpleMethodSource  
ShimpleTransformer Traverses all methods, in all classes from the Scene, and transforms them to Shimple.
 

Package soot.shimple Description

Public classes for the SSA Shimple intermediate representation.

Basic support for an SSA version of Jimple, dubbed Shimple. The idea is that Shimple can be treated almost identically to Jimple with the added benefit of SSA form.

The public API is described in soot.shimple.Shimple, soot.shimple.ShimpleBody and soot.shimple.PhiExpr.

Use/Definition and Definition/Use chains for Shimple can be obtained with ShimpleLocalDefs and ShimpleLocalUses in soot.shimple.toolkits.scalar.

Available example analyses for Shimple currently include: soot.shimple.toolkits.scalar.{ShimpleLocalDefs,SEvaluator,SConstantPropagatorAndFolder}