public abstract class SSANewInstruction extends SSAInstruction
SSAInstruction.IVisitor, SSAInstruction.Visitor
iindex, NO_INDEX
Modifier | Constructor and Description |
---|---|
protected |
SSANewInstruction(int iindex,
int result,
NewSiteReference site)
Create a new instruction to allocate a scalar.
|
protected |
SSANewInstruction(int iindex,
int result,
NewSiteReference site,
int[] params)
Create a new instruction to allocate an array.
|
Modifier and Type | Method and Description |
---|---|
SSAInstruction |
copyForSSA(SSAInstructionFactory insts,
int[] defs,
int[] uses)
This method is meant to be used during SSA conversion for an IR that is not in SSA form.
|
TypeReference |
getConcreteType() |
int |
getDef() |
int |
getDef(int i)
Return the ith def
|
NewSiteReference |
getNewSite() |
int |
getNumberOfDefs() |
int |
getNumberOfUses() |
int |
getUse(int j) |
boolean |
hasDef()
Does this instruction define a normal value, as distinct from a set of exceptions possibly thrown by it (e.g.
|
int |
hashCode() |
boolean |
isFallThrough() |
boolean |
isPEI() |
String |
toString(SymbolTable symbolTable) |
void |
visit(SSAInstruction.IVisitor v)
Apply an IVisitor to this instruction.
|
equals, getExceptionTypes, getValueString, toString
protected SSANewInstruction(int iindex, int result, NewSiteReference site) throws IllegalArgumentException
IllegalArgumentException
protected SSANewInstruction(int iindex, int result, NewSiteReference site, int[] params)
IllegalArgumentException
- if site is nullIllegalArgumentException
- if params is nullpublic SSAInstruction copyForSSA(SSAInstructionFactory insts, int[] defs, int[] uses)
SSAInstruction
copyForSSA
in class SSAInstruction
public String toString(SymbolTable symbolTable)
toString
in class SSAInstruction
public void visit(SSAInstruction.IVisitor v)
SSAInstruction
visit
in class SSAInstruction
IllegalArgumentException
- if v is nullSSAInstruction.visit(IVisitor)
public boolean hasDef()
SSAInstruction
hasDef
in class SSAInstruction
SSAInstruction.getDef()
public int getDef()
getDef
in class SSAInstruction
public int getDef(int i)
SSAInstruction
getDef
in class SSAInstruction
i
- number of the def, starting at 0.public int getNumberOfDefs()
getNumberOfDefs
in class SSAInstruction
public TypeReference getConcreteType()
public NewSiteReference getNewSite()
public int hashCode()
hashCode
in class SSAInstruction
public int getNumberOfUses()
getNumberOfUses
in class SSAInstruction
public int getUse(int j)
getUse
in class SSAInstruction
public boolean isPEI()
isPEI
in class SSAInstruction
public boolean isFallThrough()
isFallThrough
in class SSAInstruction