public class SSASwitchInstruction extends SSAInstruction
SSAInstruction.IVisitor, SSAInstruction.Visitor
iindex, NO_INDEX
Constructor and Description |
---|
SSASwitchInstruction(int iindex,
int val,
int defaultLabel,
int[] casesAndLabels)
The labels in casesAndLabels represent instruction indices in the IR that each switch case branches to.
|
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.
|
int[] |
getCasesAndLabels() |
int |
getDefault() |
int |
getNumberOfUses() |
int |
getTarget(int caseValue) |
int |
getUse(int j) |
int |
hashCode() |
boolean |
isFallThrough() |
IntIterator |
iterateLabels() |
String |
toString(SymbolTable symbolTable) |
void |
visit(SSAInstruction.IVisitor v)
Apply an IVisitor to this instruction.
|
equals, getDef, getDef, getExceptionTypes, getNumberOfDefs, getValueString, hasDef, isPEI, toString
public SSASwitchInstruction(int iindex, int val, int defaultLabel, int[] casesAndLabels)
public 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 int getNumberOfUses()
getNumberOfUses
in class SSAInstruction
SSAInstruction.getNumberOfUses()
public int getUse(int j)
getUse
in class SSAInstruction
SSAInstruction.getUse(int)
public int getTarget(int caseValue)
public int getDefault()
public int[] getCasesAndLabels()
public IntIterator iterateLabels()
public int hashCode()
hashCode
in class SSAInstruction
public boolean isFallThrough()
isFallThrough
in class SSAInstruction