Uses of Class
soot.BodyTransformer

Packages that use BodyTransformer
soot.baf.toolkits.base A toolkit to optimize the Baf IR. 
soot.grimp.toolkits.base A toolkit to optimize the Grimp IR. 
soot.javaToJimple.toolkits   
soot.jbco.bafTransformations   
soot.jbco.jimpleTransformations   
soot.jimple.spark.fieldrw   
soot.jimple.toolkits.annotation A toolkit to annotate classfiles with array and null bounds check information. 
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.callgraph   
soot.jimple.toolkits.annotation.defs   
soot.jimple.toolkits.annotation.liveness   
soot.jimple.toolkits.annotation.logic   
soot.jimple.toolkits.annotation.nullcheck Classes that carry out an analysis to determine whether or not null pointer checks are necessary. 
soot.jimple.toolkits.annotation.parity   
soot.jimple.toolkits.annotation.profiling   
soot.jimple.toolkits.annotation.tags Tags and aggregators to store and combine information about array bounds and null pointer checks. 
soot.jimple.toolkits.base A toolkit to optimize the Jimple IR. 
soot.jimple.toolkits.callgraph   
soot.jimple.toolkits.graph A set of utility classes for program transformation and optimizations. 
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.synchronization   
soot.jimple.toolkits.typing Implements a typing algorithm for Jimple. 
soot.shimple.toolkits.scalar Some analyses based on Shimple. 
soot.tagkit Classes supporting classfile annotation in Soot. 
soot.toolkits.exceptions   
soot.toolkits.scalar A number of scalar optimizations, and the flow analysis framework. 
soot.tools Various extensions to Soot that can be executed instead of soot.Main. 
 

Uses of BodyTransformer in soot.baf.toolkits.base
 

Subclasses of BodyTransformer in soot.baf.toolkits.base
 class LoadStoreOptimizer
           
 class PeepholeOptimizer
          Driver class to run peepholes on the Baf IR.
 

Uses of BodyTransformer in soot.grimp.toolkits.base
 

Subclasses of BodyTransformer in soot.grimp.toolkits.base
 class ConstructorFolder
           
 

Uses of BodyTransformer in soot.javaToJimple.toolkits
 

Subclasses of BodyTransformer in soot.javaToJimple.toolkits
 class CondTransformer
           
 

Uses of BodyTransformer in soot.jbco.bafTransformations
 

Subclasses of BodyTransformer in soot.jbco.bafTransformations
 class AddJSRs
           
 class BAFCounter
           
 class BafLineNumberer
           
 class BAFPrintout
           
 class ConstructorConfuser
           
 class Counter
           
 class FindDuplicateSequences
           
 class FixUndefinedLocals
           
 class IfNullToTryCatch
           
 class IndirectIfJumpsToCaughtGotos
           
 class Jimple2BafLocalBuilder
           
 class LocalsToBitField
           
 class MoveLoadsAboveIfs
           
 class RemoveRedundantPushStores
           
 class TryCatchCombiner
           
 class UpdateConstantsToFields
           
 class WrapSwitchesInTrys
           
 

Uses of BodyTransformer in soot.jbco.jimpleTransformations
 

Subclasses of BodyTransformer in soot.jbco.jimpleTransformations
 class AddSwitches
           
 class ArithmeticTransformer
           
 class CollectJimpleLocals
           
 class GotoInstrumenter
           
 

Uses of BodyTransformer in soot.jimple.spark.fieldrw
 

Subclasses of BodyTransformer in soot.jimple.spark.fieldrw
 class FieldReadTagAggregator
           
 class FieldTagAggregator
           
 class FieldTagger
           
 class FieldWriteTagAggregator
           
 

Uses of BodyTransformer in soot.jimple.toolkits.annotation
 

Subclasses of BodyTransformer in soot.jimple.toolkits.annotation
 class AvailExprTagger
          A body transformer that records avail expression information in tags.
 class DominatorsTagger
          A body transformer that records avail expression information in tags.
 

Uses of BodyTransformer in soot.jimple.toolkits.annotation.arraycheck
 

Subclasses of BodyTransformer in soot.jimple.toolkits.annotation.arraycheck
 class ArrayBoundsChecker
           
 

Uses of BodyTransformer in soot.jimple.toolkits.annotation.callgraph
 

Subclasses of BodyTransformer in soot.jimple.toolkits.annotation.callgraph
 class CallGraphTagger
           
 

Uses of BodyTransformer in soot.jimple.toolkits.annotation.defs
 

Subclasses of BodyTransformer in soot.jimple.toolkits.annotation.defs
 class ReachingDefsTagger
           
 

Uses of BodyTransformer in soot.jimple.toolkits.annotation.liveness
 

Subclasses of BodyTransformer in soot.jimple.toolkits.annotation.liveness
 class LiveVarsTagger
           
 

Uses of BodyTransformer in soot.jimple.toolkits.annotation.logic
 

Subclasses of BodyTransformer in soot.jimple.toolkits.annotation.logic
 class LoopFinder
           
 class LoopInvariantFinder
           
 

Uses of BodyTransformer in soot.jimple.toolkits.annotation.nullcheck
 

Subclasses of BodyTransformer in soot.jimple.toolkits.annotation.nullcheck
 class NullCheckEliminator
           
 class NullPointerChecker
           
 class NullPointerColorer
           
 

Uses of BodyTransformer in soot.jimple.toolkits.annotation.parity
 

Subclasses of BodyTransformer in soot.jimple.toolkits.annotation.parity
 class ParityTagger
          A body transformer that records parity analysis information in tags.
 

Uses of BodyTransformer in soot.jimple.toolkits.annotation.profiling
 

Subclasses of BodyTransformer in soot.jimple.toolkits.annotation.profiling
 class ProfilingGenerator
           
 

Uses of BodyTransformer in soot.jimple.toolkits.annotation.tags
 

Subclasses of BodyTransformer in soot.jimple.toolkits.annotation.tags
 class ArrayNullTagAggregator
          The aggregator for ArrayNullCheckAttribute.
 

Uses of BodyTransformer in soot.jimple.toolkits.base
 

Subclasses of BodyTransformer in soot.jimple.toolkits.base
 class Aggregator
           
 class ExceptionChecker
           
 class JimpleConstructorFolder
           
 class PartialConstructorFolder
           
 class ThisInliner
           
 

Uses of BodyTransformer in soot.jimple.toolkits.callgraph
 

Subclasses of BodyTransformer in soot.jimple.toolkits.callgraph
 class ClinitElimTransformer
           
 class UnreachableMethodTransformer
           
 

Uses of BodyTransformer in soot.jimple.toolkits.graph
 

Subclasses of BodyTransformer in soot.jimple.toolkits.graph
 class CriticalEdgeRemover
          removes all critical edges.
A critical edge is an edge from Block A to block B, if B has more than one predecessor and A has more the one successor.
As an example: If we wanted a computation to be only on the path A->B this computation must be directly on the edge.
 class LoopConditionUnroller
          "unrolls" the condition of while/for loops.
before the first test of a while-loop, we can't be sure, if the body will be taken or not, and several optimizations (especially LCM) can't be done.
 

Uses of BodyTransformer in soot.jimple.toolkits.pointer
 

Subclasses of BodyTransformer in soot.jimple.toolkits.pointer
 class CastCheckEliminatorDumper
          A body transformer that simply calls the CastCheckEliminator analysis.
 class DependenceTagAggregator
           
 class FieldRWTagger
           
 class ParameterAliasTagger
          Adds colour tags to indicate potential aliasing between method parameters.
 class SideEffectTagger
           
 

Uses of BodyTransformer in soot.jimple.toolkits.scalar
 

Subclasses of BodyTransformer in soot.jimple.toolkits.scalar
 class CommonSubexpressionEliminator
          Runs an available expressions analysis on a body, then eliminates common subexpressions.
 class ConditionalBranchFolder
           
 class ConstantPropagatorAndFolder
          Does constant propagation and folding.
 class CopyPropagator
           
 class DeadAssignmentEliminator
           
 class LocalNameStandardizer
           
 class NopEliminator
           
 class UnconditionalBranchFolder
           
 class UnreachableCodeEliminator
           
 

Uses of BodyTransformer in soot.jimple.toolkits.scalar.pre
 

Subclasses of BodyTransformer in soot.jimple.toolkits.scalar.pre
 class BusyCodeMotion
          Performs a partial redundancy elimination (= code motion).
 class LazyCodeMotion
          Performs a partial redundancy elimination (= code motion).
 

Uses of BodyTransformer in soot.jimple.toolkits.thread.synchronization
 

Subclasses of BodyTransformer in soot.jimple.toolkits.thread.synchronization
 class LockAllocationBodyTransformer
           
 

Uses of BodyTransformer in soot.jimple.toolkits.typing
 

Subclasses of BodyTransformer in soot.jimple.toolkits.typing
 class TypeAssigner
          This transformer assigns types to local variables.
 

Uses of BodyTransformer in soot.shimple.toolkits.scalar
 

Subclasses of BodyTransformer in soot.shimple.toolkits.scalar
 class SConstantPropagatorAndFolder
          A powerful constant propagator and folder based on an algorithm sketched by Cytron et al that takes conditional control flow into account.
 

Uses of BodyTransformer in soot.tagkit
 

Subclasses of BodyTransformer in soot.tagkit
 class FirstTagAggregator
          A tag aggregator that associates a tag with the first instruction that is tagged with it.
 class ImportantTagAggregator
          A tag aggregator that associates a tag with the most important instruction that is tagged with it.
 class LineNumberTagAggregator
          The aggregator for LineNumberTable attribute.
 class TagAggregator
          Interface to aggregate tags of units.
 

Uses of BodyTransformer in soot.toolkits.exceptions
 

Subclasses of BodyTransformer in soot.toolkits.exceptions
 class TrapTightener
          A BodyTransformer that shrinks the protected area covered by each Trap in the Body so that it begins at the first of the Body's Units which might throw an exception caught by the Trap and ends just after the last Unit which might throw an exception caught by the Trap.
 

Uses of BodyTransformer in soot.toolkits.scalar
 

Subclasses of BodyTransformer in soot.toolkits.scalar
 class LocalPacker
          A BodyTransformer that attemps to minimize the number of local variables used in Body by 'reusing' them when possible.
 class LocalSplitter
          A BodyTransformer that attemps to indentify and separate uses of a local varible that are independent of each other.
 class UnusedLocalEliminator
          A BodyTransformer that removes all unused local variables from a given Body.
 

Uses of BodyTransformer in soot.tools
 

Subclasses of BodyTransformer in soot.tools
 class CFGViewer
          A utility class for generating dot graph file for a control flow graph