|
||||||||||
PREV NEXT | FRAMES NO FRAMES |
Packages that use edu.cmu.cs.crystal.tac.model | |
---|---|
edu.cmu.cs.crystal.analysis.alias | |
edu.cmu.cs.crystal.analysis.constant | |
edu.cmu.cs.crystal.analysis.live | |
edu.cmu.cs.crystal.simple | This package is for creating very simple flow analyses; if you're new to flow analyses, start here. |
edu.cmu.cs.crystal.tac | This package contains classes and interfaces for writing flow analyses based on three-address code (TAC). |
edu.cmu.cs.crystal.tac.eclipse | An internal package for creating three address code nodes based on the Eclipse AST. |
edu.cmu.cs.crystal.tac.model | The interfaces for the three-address code (TAC) instructions and variables. |
Classes in edu.cmu.cs.crystal.tac.model used by edu.cmu.cs.crystal.analysis.alias | |
---|---|
ArrayInitInstruction
x = { y1, ..., yn }. |
|
BinaryOperation
x = y binop z, representing all binary operations. |
|
CastInstruction
x = (T) y. |
|
CopyInstruction
x = y. |
|
DotClassInstruction
x = T.class. |
|
InstanceofInstruction
x = y instanceof T. |
|
LoadArrayInstruction
x = y[z]. |
|
LoadFieldInstruction
x = y.f, where f is a field. |
|
LoadLiteralInstruction
x = l, an assignment of a literal value to a variable. |
|
MethodCallInstruction
x = y.m(z1, ..., zn), where m is a method and y is possibly a type variable, in the case of a static method call. |
|
NewArrayInstruction
x = new T[y1]...[yn] or x = new T[]...[] = z. |
|
NewObjectInstruction
x = new C(z1, ..., zn), including for anonymous inner classes. |
|
SourceVariableDeclaration
T x. |
|
TACInstruction
Abstract base class for 3-Address-Code instructions built from Eclipse AST nodes. |
|
UnaryOperation
x = unop y; this class represents unary operations. |
|
Variable
This class is the abstract super type of all variables in the three address code representation of a given Java program. |
Classes in edu.cmu.cs.crystal.tac.model used by edu.cmu.cs.crystal.analysis.constant | |
---|---|
ArrayInitInstruction
x = { y1, ..., yn }. |
|
BinaryOperation
x = y binop z, representing all binary operations. |
|
CastInstruction
x = (T) y. |
|
ConstructorCallInstruction
x(y1, ..., yn), where x is "this" or "super". |
|
CopyInstruction
x = y. |
|
DotClassInstruction
x = T.class. |
|
EnhancedForConditionInstruction
Instruction representing the "has next" test at the top of a Java 5 enhanced for loop. |
|
InstanceofInstruction
x = y instanceof T. |
|
LoadArrayInstruction
x = y[z]. |
|
LoadFieldInstruction
x = y.f, where f is a field. |
|
LoadLiteralInstruction
x = l, an assignment of a literal value to a variable. |
|
MethodCallInstruction
x = y.m(z1, ..., zn), where m is a method and y is possibly a type variable, in the case of a static method call. |
|
NewArrayInstruction
x = new T[y1]...[yn] or x = new T[]...[] = z. |
|
NewObjectInstruction
x = new C(z1, ..., zn), including for anonymous inner classes. |
|
ReturnInstruction
return x, the return of a value. |
|
SourceVariableDeclaration
T x. |
|
SourceVariableReadInstruction
This instruction indicates reading a variable that appears in the source program, i.e. |
|
StoreArrayInstruction
x[y] = z. |
|
StoreFieldInstruction
x.f = y, where f is a field. |
|
TACInstruction
Abstract base class for 3-Address-Code instructions built from Eclipse AST nodes. |
|
UnaryOperation
x = unop y; this class represents unary operations. |
|
Variable
This class is the abstract super type of all variables in the three address code representation of a given Java program. |
Classes in edu.cmu.cs.crystal.tac.model used by edu.cmu.cs.crystal.analysis.live | |
---|---|
ArrayInitInstruction
x = { y1, ..., yn }. |
|
BinaryOperation
x = y binop z, representing all binary operations. |
|
CastInstruction
x = (T) y. |
|
ConstructorCallInstruction
x(y1, ..., yn), where x is "this" or "super". |
|
CopyInstruction
x = y. |
|
DotClassInstruction
x = T.class. |
|
EnhancedForConditionInstruction
Instruction representing the "has next" test at the top of a Java 5 enhanced for loop. |
|
InstanceofInstruction
x = y instanceof T. |
|
LoadArrayInstruction
x = y[z]. |
|
LoadFieldInstruction
x = y.f, where f is a field. |
|
LoadLiteralInstruction
x = l, an assignment of a literal value to a variable. |
|
MethodCallInstruction
x = y.m(z1, ..., zn), where m is a method and y is possibly a type variable, in the case of a static method call. |
|
NewArrayInstruction
x = new T[y1]...[yn] or x = new T[]...[] = z. |
|
NewObjectInstruction
x = new C(z1, ..., zn), including for anonymous inner classes. |
|
ReturnInstruction
return x, the return of a value. |
|
SourceVariableDeclaration
T x. |
|
SourceVariableReadInstruction
This instruction indicates reading a variable that appears in the source program, i.e. |
|
StoreArrayInstruction
x[y] = z. |
|
StoreFieldInstruction
x.f = y, where f is a field. |
|
UnaryOperation
x = unop y; this class represents unary operations. |
|
Variable
This class is the abstract super type of all variables in the three address code representation of a given Java program. |
Classes in edu.cmu.cs.crystal.tac.model used by edu.cmu.cs.crystal.simple | |
---|---|
ArrayInitInstruction
x = { y1, ..., yn }. |
|
AssignmentInstruction
Abstract x = ?. |
|
BinaryOperation
x = y binop z, representing all binary operations. |
|
CastInstruction
x = (T) y. |
|
ConstructorCallInstruction
x(y1, ..., yn), where x is "this" or "super". |
|
CopyInstruction
x = y. |
|
DotClassInstruction
x = T.class. |
|
EnhancedForConditionInstruction
Instruction representing the "has next" test at the top of a Java 5 enhanced for loop. |
|
InstanceofInstruction
x = y instanceof T. |
|
InvocationInstruction
Abstract x = call(z1, ..., zn). |
|
LoadArrayInstruction
x = y[z]. |
|
LoadFieldInstruction
x = y.f, where f is a field. |
|
LoadLiteralInstruction
x = l, an assignment of a literal value to a variable. |
|
MethodCallInstruction
x = y.m(z1, ..., zn), where m is a method and y is possibly a type variable, in the case of a static method call. |
|
NewArrayInstruction
x = new T[y1]...[yn] or x = new T[]...[] = z. |
|
NewObjectInstruction
x = new C(z1, ..., zn), including for anonymous inner classes. |
|
OneOperandInstruction
x = f(y), i.e., the result of a one-operand instruction is somehow derived from a single operand. |
|
ReturnInstruction
return x, the return of a value. |
|
SourceVariableDeclaration
T x. |
|
SourceVariableReadInstruction
This instruction indicates reading a variable that appears in the source program, i.e. |
|
StoreArrayInstruction
x[y] = z. |
|
StoreFieldInstruction
x.f = y, where f is a field. |
|
StoreInstruction
This interface represents a store, i.e., a write into memory from a source . |
|
TACInstruction
Abstract base class for 3-Address-Code instructions built from Eclipse AST nodes. |
|
UnaryOperation
x = unop y; this class represents unary operations. |
Classes in edu.cmu.cs.crystal.tac.model used by edu.cmu.cs.crystal.tac | |
---|---|
ArrayInitInstruction
x = { y1, ..., yn }. |
|
BinaryOperation
x = y binop z, representing all binary operations. |
|
CastInstruction
x = (T) y. |
|
ConstructorCallInstruction
x(y1, ..., yn), where x is "this" or "super". |
|
CopyInstruction
x = y. |
|
DotClassInstruction
x = T.class. |
|
EnhancedForConditionInstruction
Instruction representing the "has next" test at the top of a Java 5 enhanced for loop. |
|
InstanceofInstruction
x = y instanceof T. |
|
LoadArrayInstruction
x = y[z]. |
|
LoadFieldInstruction
x = y.f, where f is a field. |
|
LoadLiteralInstruction
x = l, an assignment of a literal value to a variable. |
|
MethodCallInstruction
x = y.m(z1, ..., zn), where m is a method and y is possibly a type variable, in the case of a static method call. |
|
NewArrayInstruction
x = new T[y1]...[yn] or x = new T[]...[] = z. |
|
NewObjectInstruction
x = new C(z1, ..., zn), including for anonymous inner classes. |
|
ReturnInstruction
return x, the return of a value. |
|
SourceVariable
A source variable is a variable in three address code that actually existed in the original Java source code. |
|
SourceVariableDeclaration
T x. |
|
SourceVariableReadInstruction
This instruction indicates reading a variable that appears in the source program, i.e. |
|
StoreArrayInstruction
x[y] = z. |
|
StoreFieldInstruction
x.f = y, where f is a field. |
|
SuperVariable
The Super class represents the super keyword. |
|
TACInstruction
Abstract base class for 3-Address-Code instructions built from Eclipse AST nodes. |
|
ThisVariable
This class represents the this keyword, which is treated much like
any other variable. |
|
UnaryOperation
x = unop y; this class represents unary operations. |
|
Variable
This class is the abstract super type of all variables in the three address code representation of a given Java program. |
Classes in edu.cmu.cs.crystal.tac.model used by edu.cmu.cs.crystal.tac.eclipse | |
---|---|
ReturnInstruction
return x, the return of a value. |
|
SourceVariable
A source variable is a variable in three address code that actually existed in the original Java source code. |
|
SuperVariable
The Super class represents the super keyword. |
|
TACInstruction
Abstract base class for 3-Address-Code instructions built from Eclipse AST nodes. |
|
ThisVariable
This class represents the this keyword, which is treated much like
any other variable. |
|
TypeVariable
In Java you can make calls that look like the following: System.exit(0); Here System is a class, but because out is a static field we access it directly from the class name. |
|
Variable
This class is the abstract super type of all variables in the three address code representation of a given Java program. |
Classes in edu.cmu.cs.crystal.tac.model used by edu.cmu.cs.crystal.tac.model | |
---|---|
AssignmentInstruction
Abstract x = ?. |
|
BinaryOperator
Binary operators including arithmetic, relational, and bitwise operators as well as bit shifts and string concatenation. |
|
InvocationInstruction
Abstract x = call(z1, ..., zn). |
|
IVariableVisitor
|
|
KeywordVariable
Java and our three address code contain two 'special' variables that correspond with Java keywords and must be treated in a different manner than traditional source code variables. |
|
LoadInstruction
Marker interface for loads. |
|
OneOperandInstruction
x = f(y), i.e., the result of a one-operand instruction is somehow derived from a single operand. |
|
SourceVariable
A source variable is a variable in three address code that actually existed in the original Java source code. |
|
StoreInstruction
This interface represents a store, i.e., a write into memory from a source . |
|
SuperVariable
The Super class represents the super keyword. |
|
TACArrayAccess
x[y] |
|
TACFieldAccess
x.f, i.e., an access to a field. |
|
TACInstruction
Abstract base class for 3-Address-Code instructions built from Eclipse AST nodes. |
|
TACInvocation
Interface defining instructions that represent some kind of invocation. |
|
TempVariable
Temporary variables created during the course of translating to three address code are represented by instances of this class. |
|
ThisVariable
This class represents the this keyword, which is treated much like
any other variable. |
|
TypeVariable
In Java you can make calls that look like the following: System.exit(0); Here System is a class, but because out is a static field we access it directly from the class name. |
|
UnaryOperator
Unary operators. |
|
Variable
This class is the abstract super type of all variables in the three address code representation of a given Java program. |
|
||||||||||
PREV NEXT | FRAMES NO FRAMES |