com.ibm.wala.ssa
Class SSAInstructionFactory
java.lang.Object
com.ibm.wala.ssa.SSAInstructionFactory
public final class SSAInstructionFactory
- extends java.lang.Object
An instruction factory for SSA.
Note: this class wouldn't be needed if all the package-access constructors
in instruction classes were made public.
|
Method Summary |
static SSAArrayLengthInstruction |
ArrayLengthInstruction(int result,
int arrayref)
|
static SSAArrayLoadInstruction |
ArrayLoadInstruction(int result,
int arrayref,
int index,
TypeReference declaredType)
|
static SSAArrayStoreInstruction |
ArrayStoreInstruction(int arrayref,
int index,
int value,
TypeReference declaredType)
|
static SSABinaryOpInstruction |
BinaryOpInstruction(BinaryOpInstruction.IOperator operator,
int result,
int val1,
int val2,
boolean mayBeInteger)
|
static SSACheckCastInstruction |
CheckCastInstruction(int result,
int val,
TypeReference type)
|
static SSAComparisonInstruction |
ComparisonInstruction(short opcode,
int result,
int val1,
int val2)
|
static SSAConditionalBranchInstruction |
ConditionalBranchInstruction(ConditionalBranchInstruction.IOperator operator,
TypeReference type,
int val1,
int val2)
|
static SSAConversionInstruction |
ConversionInstruction(int result,
int val,
TypeReference fromType,
TypeReference toType)
|
static SSAGetCaughtExceptionInstruction |
GetCaughtExceptionInstruction(int bbNumber,
int exceptionValueNumber)
|
static SSAGetInstruction |
GetInstruction(int result,
FieldReference field)
|
static SSAGetInstruction |
GetInstruction(int result,
int ref,
FieldReference field)
|
static SSAGotoInstruction |
GotoInstruction()
|
static SSAInstanceofInstruction |
InstanceofInstruction(int result,
int ref,
TypeReference checkedType)
|
static SSAInvokeInstruction |
InvokeInstruction(int[] params,
int exception,
CallSiteReference site)
|
static SSAInvokeInstruction |
InvokeInstruction(int result,
int[] params,
int exception,
CallSiteReference site)
|
static SSAMonitorInstruction |
MonitorInstruction(int ref,
boolean isEnter)
|
static SSANewInstruction |
NewInstruction(int result,
NewSiteReference site)
|
static SSAPhiInstruction |
PhiInstruction(int result,
int[] params)
|
static SSAPutInstruction |
PutInstruction(int value,
FieldReference field)
|
static SSAPutInstruction |
PutInstruction(int ref,
int value,
FieldReference field)
|
static SSAReturnInstruction |
ReturnInstruction()
|
static SSAReturnInstruction |
ReturnInstruction(int result,
boolean isPrimitive)
|
static SSASwitchInstruction |
SwitchInstruction(int val,
int defaultLabel,
int[] casesAndLabels)
|
static SSAThrowInstruction |
ThrowInstruction(int exception)
|
static SSAUnaryOpInstruction |
UnaryOpInstruction(UnaryOpInstruction.IOperator operator,
int result,
int val)
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
ArrayLengthInstruction
public static SSAArrayLengthInstruction ArrayLengthInstruction(int result,
int arrayref)
ArrayLoadInstruction
public static SSAArrayLoadInstruction ArrayLoadInstruction(int result,
int arrayref,
int index,
TypeReference declaredType)
ArrayStoreInstruction
public static SSAArrayStoreInstruction ArrayStoreInstruction(int arrayref,
int index,
int value,
TypeReference declaredType)
BinaryOpInstruction
public static SSABinaryOpInstruction BinaryOpInstruction(BinaryOpInstruction.IOperator operator,
int result,
int val1,
int val2,
boolean mayBeInteger)
CheckCastInstruction
public static SSACheckCastInstruction CheckCastInstruction(int result,
int val,
TypeReference type)
ComparisonInstruction
public static SSAComparisonInstruction ComparisonInstruction(short opcode,
int result,
int val1,
int val2)
ConditionalBranchInstruction
public static SSAConditionalBranchInstruction ConditionalBranchInstruction(ConditionalBranchInstruction.IOperator operator,
TypeReference type,
int val1,
int val2)
ConversionInstruction
public static SSAConversionInstruction ConversionInstruction(int result,
int val,
TypeReference fromType,
TypeReference toType)
GetCaughtExceptionInstruction
public static SSAGetCaughtExceptionInstruction GetCaughtExceptionInstruction(int bbNumber,
int exceptionValueNumber)
GetInstruction
public static SSAGetInstruction GetInstruction(int result,
FieldReference field)
GetInstruction
public static SSAGetInstruction GetInstruction(int result,
int ref,
FieldReference field)
GotoInstruction
public static SSAGotoInstruction GotoInstruction()
InstanceofInstruction
public static SSAInstanceofInstruction InstanceofInstruction(int result,
int ref,
TypeReference checkedType)
InvokeInstruction
public static SSAInvokeInstruction InvokeInstruction(int result,
int[] params,
int exception,
CallSiteReference site)
InvokeInstruction
public static SSAInvokeInstruction InvokeInstruction(int[] params,
int exception,
CallSiteReference site)
MonitorInstruction
public static SSAMonitorInstruction MonitorInstruction(int ref,
boolean isEnter)
NewInstruction
public static SSANewInstruction NewInstruction(int result,
NewSiteReference site)
PhiInstruction
public static SSAPhiInstruction PhiInstruction(int result,
int[] params)
throws java.lang.IllegalArgumentException
- Throws:
java.lang.IllegalArgumentException
PutInstruction
public static SSAPutInstruction PutInstruction(int ref,
int value,
FieldReference field)
PutInstruction
public static SSAPutInstruction PutInstruction(int value,
FieldReference field)
ReturnInstruction
public static SSAReturnInstruction ReturnInstruction()
ReturnInstruction
public static SSAReturnInstruction ReturnInstruction(int result,
boolean isPrimitive)
SwitchInstruction
public static SSASwitchInstruction SwitchInstruction(int val,
int defaultLabel,
int[] casesAndLabels)
ThrowInstruction
public static SSAThrowInstruction ThrowInstruction(int exception)
UnaryOpInstruction
public static SSAUnaryOpInstruction UnaryOpInstruction(UnaryOpInstruction.IOperator operator,
int result,
int val)