public class MultipleAsgnBase extends Instr implements ResultInstr
Modifier and Type | Field and Description |
---|---|
protected Operand |
array |
protected int |
index |
protected Variable |
result |
EMPTY_OPERANDS
Constructor and Description |
---|
MultipleAsgnBase(Operation op,
Variable result,
Operand array,
int index) |
Modifier and Type | Method and Description |
---|---|
Operand |
getArrayArg() |
int |
getIndex() |
Operand[] |
getOperands() |
Variable |
getResult() |
Operand |
simplifyAndGetResult(IRScope scope,
Map<Operand,Operand> valueMap)
This method takes as input a map of operands to their values, and outputs
the result of this instruction.
|
void |
simplifyOperands(Map<Operand,Operand> valueMap,
boolean force)
This method takes as input a map of operands to their values, and outputs
If the value map provides a value for any of the instruction's operands
this method is expected to replace the original operands with the simplified values.
|
void |
updateResult(Variable v) |
canBeDeleted, canRaiseException, cloneForBlockCloning, cloneForInlinedClosure, cloneForInlinedScope, cloneForInlining, getOperation, getUsedVariables, hasSideEffects, hasUnusedResult, interpret, interpretAndGetNewIPC, isDead, markDead, markUnusedResult, renameVars, toString, transfersControl, visit
protected Variable result
protected Operand array
protected final int index
public Operand[] getOperands()
getOperands
in class Instr
public Operand getArrayArg()
public Variable getResult()
getResult
in interface ResultInstr
public int getIndex()
public void updateResult(Variable v)
updateResult
in interface ResultInstr
public void simplifyOperands(Map<Operand,Operand> valueMap, boolean force)
Instr
simplifyOperands
in class Instr
public Operand simplifyAndGetResult(IRScope scope, Map<Operand,Operand> valueMap)
Instr
simplifyAndGetResult
in class Instr
valueMap
- Mapping from operands to their simplified valuesCopyright © 2001-2013 JRuby. All Rights Reserved.