SandMark version 2.0


Package sandmark.obfuscate.boolsplitter.dtree

Interface Summary
Assign Classes that implement Assign involve an assignment (definition).
LeafExpr An expression that can appear as a leaf node in a Tree.
 

Class Summary
AddressStoreStmt Associated with an AddressStoreStmt is a Subroutine whose address (offset in the instruction sequence) is to be stored.
ArithExpr ArithExpr represents a binary arithmetic expression.
ArrayLengthExpr ArrayLengthExpr represents the arraylength opcode which gets length of an array.
ArrayRefExpr ArrayRefExpr represents an expression that references an element in an array.
AscendVisitor AscendVisitor is the superclass of Type0Visitor and Type1Visitor, conveniently containing the common code.
CallExpr CallExpr is a superclass of expressions that represent the invocation of a method.
CallMethodExpr CallMethodExpr represents the invocation of an object's method.
CallStaticExpr CallStaticExpr represents the invokestatic opcode which invokes a class (static) method.
CastExpr CastExpr represents an expression that casts an object to a given type.
CatchExpr CatchExpr represents an expression that catches an exception.
CheckExpr CheckExpr is a superclass for classes representing a check on an expression.
CondExpr CondExpr is a superclass for conditional expressions.
ConstantExpr ConstantExpr represents a constant expression.
DefExpr An expression in which a definition occurs.
DefInformation DefInformation contains information about the definition of a local variable
DescendVisitor DecsendVisitor is the superclass of a few private classes of Type0Visitor and Type1Visitor.
EliminationInformation  
Expr Expr is the superclass for a number of other classes representing expressions in byte code.
ExprStmt ExprStmt is a statement consisting of an expression.
FieldExpr FieldExpr represents the getfield opcode which fetches a field from an object.
GotoStmt Represents an unconditional branch to a basic block.
IfCmpStmt IfCmpStmt consists of a comparison expression (a left-hand expression, a comparison operator, and a right-hand expression) that is to be evaluated.
IfStmt IfStmt is a super class of statements in which some expression is evaluated and one of two branches is taken.
IfZeroStmt IfZeroStmt evaluates an expression and executes one of its two branches depending on whether or not the expression evaluated to zero.
InitStmt InitStmt groups together the initialization of local variables (LocalExpr).
InstanceOfExpr InstanceOfExpr represnts the instanceof opcode which determine if an object is of a given type.
JsrStmt JsrStmt represents a jsr instruction that jumps to a subroutine.
JumpStmt JumpStmt is the super class for several classes that represent statements that chang the flow of control in a program.
LabelStmt LabelStmt is a placeholder in a Tree for a Label (the target of a jump).
LEGatherer LEGatherer visits a basic block and returns all the LocalExprs in a vector
LocalExpr LocalExpr represents an expression that accesses a variable in a method's local variable table.
MemExpr An expression that accesses a memory location.
MemRefExpr MemRefExpr represents an expression that references a memory location as opposed to a local variable or a variable on the stack.
MonitorStmt MonitorStmt represents the monitorenter and monitorexit opcodes, which gain and release ownership of the monitor associated with a given object.
NegExpr NegExpr represents the arithmetic negation of an expression.
NewArrayExpr NewArrayExpr represents the newarray opcode which creates a new array of a specified length and element type.
NewExpr NewExpr represents the new opcode that creates a new object of a specified type.
NewMultiArrayExpr NewMultiArrayExpr represents the multianewarray opcode which creates a new multidimensional array.
Node Node represents a node in an expression tree.
OperandStack OperandStack is used to simulate the JVM stack.
PhiCatchStmt A PhiCatchStmt is used to handle variables that are used inside an exception handler.
PhiJoinStmt PhiJoinStmt represents a phi-function inserted into a control flow graph during conversion of variables to static single-assignment form.
PhiStmt A PhiStmt is inserted into a CFG in Single Static Assignment for.
PrintVisitor PrintVistor traverses a Tree and prints some information about each visited Node to a stream.
RCExpr RCExpr represents a residency check.
ReplaceVisitor ReplaceVisitor traverses a tree and replaces each occurrence of one Node with another Node.
RetStmt RetStmt represents the ret opcode which returns from a subroutine.
ReturnAddressExpr ReturnAddressExpr represents a return address used with the ret opcode.
ReturnExprStmt ReturnExprStmt represents the areturn opcode which returns a reference from a method.
ReturnStmt ReturnStmt represents the return opcode which returns void from a method.
SCStmt SCStmt represents a swizzle check on an element in an array.
ShiftExpr ShiftExpr represents a bit shift operation.
SRStmt SRStmt represents the swizzle of a range of elements in an array.
StackExpr StackExpr represents an expression that is stored on the stack.
StackManipStmt StackManipStmt represents the opcodes that manipulate the stack such as swap and dup.
StackOptimizer StackOptimizer analyzes the relative distances of various uses of the same definition of a local variable to add dups and swaps to the bytecode and eliminate loads and stores.
StaticFieldExpr StaticFieldExpr represents the getstatic opcode which gets a static (class) field from a class.
Stmt Stmt is a super class used to represent statements in a Java bytecode program.
StoreExpr StoreExpr represents a store of an expression into a memory location.
SwitchStmt SwitchStmt represents a switch statement.
Swizzler Swizzler represents an induction variable that is used as an index into an array.
ThrowStmt ThrowStmt represents the athrow opcode which throws an exception or error.
Tree Tree represents the expression tree of a basic Block.
TreeVisitor TreeVisitor performs a traversal of a tree.
Type0DownVisitor  
Type0Visitor Type0Visitor searches up the tree, starting at a LocalExpr, looking for an earlier instance of the same definition of that LocalExpr in a Type 0 relation.
Type1DownVisitor  
Type1UpVisitor  
Type1Visitor Type1Visitor...
UCExpr UPExpr represents an update check opcode which checks the persistent store to determine if a variable needs to be updated.
UseInformation UseInformation stores information about a use of a local variable.
VarExpr VarExpr represents an expression that accesses a local variable or a variable on the stack.
ZeroCheckExpr ZeroCheckExpr represents a check for a zero value.
 


SandMark version 2.0

Mon Jun 17 12:30:47 MST 2002