|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectcom.ibm.wala.ssa.SSAInstruction
com.ibm.wala.ssa.SSAAbstractInvokeInstruction
public abstract class SSAAbstractInvokeInstruction
A Call instruction. Note that different languages have different notions of what a call is. This is an abstract superclass which encapsulates the common functionality that all languages share, so far.
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from class com.ibm.wala.ssa.SSAInstruction |
|---|
SSAInstruction.IVisitor, SSAInstruction.Visitor |
| Field Summary | |
|---|---|
protected int |
exception
The value number which represents the exception object which the call may throw. |
protected CallSiteReference |
site
The call site, containing the program counter location and the method being called. |
| Constructor Summary | |
|---|---|
protected |
SSAAbstractInvokeInstruction(int exception,
CallSiteReference site)
|
| Method Summary | |
|---|---|
CallSiteReference |
getCallSite()
|
TypeReference |
getDeclaredResultType()
What is the declared return type of the called method |
MethodReference |
getDeclaredTarget()
What method is the declared callee? |
int |
getDef()
|
int |
getDef(int i)
Return the ith def |
int |
getException()
Return the value number which is def'fed by this call instruction if the call returns exceptionally. |
IInvokeInstruction.IDispatch |
getInvocationCode()
|
int |
getNumberOfDefs()
|
abstract int |
getNumberOfParameters()
How many parameters does this call specify? |
abstract int |
getNumberOfReturnValues()
How many distinct values does this call return? |
int |
getProgramCounter()
|
int |
getReceiver()
|
abstract int |
getReturnValue(int i)
What is the the value number of the ith value returned by this call |
boolean |
hasDef()
Does this instruction define a normal value, as distinct from a set of exceptions possibly thrown by it (e.g. |
boolean |
isDispatch()
Might this call dispatch to one of several possible methods? i.e., in Java, is it an invokeinterface or invokevirtual |
boolean |
isFallThrough()
|
boolean |
isPEI()
|
boolean |
isSpecial()
Is this a 'special' call? (invokespecial in Java) |
boolean |
isStatic()
Is this a 'static' call? (invokestatic in Java) |
java.lang.String |
toString(SymbolTable symbolTable)
|
| Methods inherited from class com.ibm.wala.ssa.SSAInstruction |
|---|
copyForSSA, equals, getExceptionTypes, getNumberOfUses, getUse, getValueString, hashCode, toString, visit |
| Methods inherited from class java.lang.Object |
|---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
protected final int exception
protected final CallSiteReference site
| Constructor Detail |
|---|
protected SSAAbstractInvokeInstruction(int exception,
CallSiteReference site)
exception - The value number which represents the exception object which the call may throw.site - The call site, containing the program counter location and the method being called.| Method Detail |
|---|
public CallSiteReference getCallSite()
public boolean isStatic()
public boolean isDispatch()
public boolean isSpecial()
public int getReceiver()
public int getProgramCounter()
public int getNumberOfDefs()
getNumberOfDefs in class SSAInstructionpublic int getDef(int i)
SSAInstruction
getDef in class SSAInstructioni - number of the def, starting at 0.public int getException()
public boolean hasDef()
SSAInstruction
hasDef in class SSAInstructionpublic int getDef()
getDef in class SSAInstructionpublic abstract int getNumberOfParameters()
public abstract int getNumberOfReturnValues()
public abstract int getReturnValue(int i)
public TypeReference getDeclaredResultType()
public MethodReference getDeclaredTarget()
public IInvokeInstruction.IDispatch getInvocationCode()
CallSiteReference.getInvocationCode()public boolean isPEI()
isPEI in class SSAInstructionpublic boolean isFallThrough()
isFallThrough in class SSAInstructionpublic java.lang.String toString(SymbolTable symbolTable)
toString in class SSAInstruction
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||