Package com.ibm.wala.ssa

This package provides the WALA SSA IR.

See:
          Description

Interface Summary
IR.SSA2LocalMap A Map that gives the names of the local variables corresponding to SSA value numbers at particular IR instruction indices, if such information is available from source code mapping.
IRFactory<T extends IMethod> This is intended as an internal interface; clients probably shouldn't be using this directly.
ISSABasicBlock Common interface to all SSA BasicBlocks
IVisitorWithAddresses  
SSAIndirectionData<T extends SSAIndirectionData.Name> A mapping that tells, for a given instruction s, what "names" does s def and use indirectly.
SSAIndirectionData.Name A Name is a mock interface introduced just for strong typing.
SSAInstruction.IVisitor This interface is used by Instruction.visit to dispatch based on the instruction type.
SSAInstructionFactory An instruction factory for SSA.
SSAOptions.DefaultValues While SSA form makes the not-unreasonable assumption that values must be defined before they are used, many languages permit using undefined variables and simply give them some default value.
SSAPiNodePolicy The SSABuilder consults this as an oracle to decide how to insert SSAPiInstructions
Value Representation of a particular value which appears in an SSA IR.
 

Class Summary
CompoundPiPolicy A Combination of 2 SSAPiNodePolicys.
ConstantValue The value of a constant which appears in an SSA IR.
DefaultIRFactory Default implementation of IRFactory.
DefUse An object which represent Def-Use information for an SSA IR
InstanceOfPiPolicy A pi node policy with the following rule: If we have the following code:
IR An SSA IR.
NullTestPiPolicy A pi node policy with the following rule: If we have the following code: S1: if (c op null) { ...
ReflectiveMemberAccess TODO: document me.
ShrikeIndirectionData An implementation of SSAIndirectionData specialized for IRs originated from Shrike.
ShrikeIndirectionData.ShrikeLocalName In Shrike, the only "source" level entities which have names relevant to indirect pointer operations are bytecode locals.
SSAAbstractInvokeInstruction A Call instruction.
SSAAbstractThrowInstruction An instruction which unconditionally throws an exception
SSAAbstractUnaryInstruction  
SSAAddressOfInstruction An SSAAddressOfInstruction represents storing the address of some "source" level entity (@see SSAIndirectionData.Name) into an SSA value number.
SSAArrayLengthInstruction SSA instruction representing v_x := arraylength v_y
SSAArrayLoadInstruction SSA instruction representing an array load.
SSAArrayReferenceInstruction Abstract base class for instructions that load or store from array contents.
SSAArrayStoreInstruction SSA instruction representing an array store.
SSABinaryOpInstruction  
SSABuilder This class constructs an SSA IR from a backing ShrikeBT instruction stream.
SSACache A mapping from IMethod -> SSAOptions -> SoftReference -> Something This doesn't work very well ...
SSACFG A control-flow graph for ssa form.
SSACheckCastInstruction A checkcast (dynamic type test) instruction.
SSAComparisonInstruction SSA Instruction for comparisons between floats, longs and doubles
SSAConditionalBranchInstruction A conditional branch instruction, which tests two values according to some IConditionalBranchInstruction.IOperator.
SSAConversionInstruction An instruction which converts a value of one primitive type into another primitive type.
SSAFieldAccessInstruction Abstract base class for SSAGetInstruction and SSAPutInstruction.
SSAGetCaughtExceptionInstruction A "catch" instruction, inserted at the head of a catch block, which assigns a pending exception object to a local variable.
SSAGetInstruction SSA instruction that reads a field (i.e.
SSAGotoInstruction Unconditional branch instruction for SSA form.
SSAInstanceofInstruction A dynamic type test (instanceof) instruction.
SSAInstruction An instruction in SSA form.
SSAInstruction.Visitor A base visitor implementation that does nothing.
SSAInvokeInstruction  
SSALoadIndirectInstruction A load from a pointer.
SSALoadMetadataInstruction An instruction that represents a reflective or meta-programming operation, like loadClass in Java
SSAMonitorInstruction An instruction representing a monitorenter or monitorexit operation.
SSANewInstruction An allocation instruction ("new") for SSA form.
SSAOptions Options that govern SSA construction
SSAPhiInstruction A phi instruction in SSA form.
SSAPiInstruction A Pi instruction is a dummy assignment inserted at the tail of a basic block, in order to get a new variable name to associate with some flow-insensitive dataflow fact.
SSAPutInstruction A putfield or putstatic instruction
SSAReturnInstruction A return instruction.
SSAStoreIndirectInstruction A store from a pointer.
SSASwitchInstruction SSA instruction representing a switch statement.
SSAThrowInstruction An instruction which unconditionally throws an exception
SSAUnaryOpInstruction An SSA instruction for some unary operator.
SymbolTable A symbol table which associates information with each variable (value number) in an SSA IR.
 

Package com.ibm.wala.ssa Description

This package provides the WALA SSA IR.