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, visitprotected Variable result
protected Operand array
protected final int index
public Operand[] getOperands()
getOperands in class Instrpublic Operand getArrayArg()
public Variable getResult()
getResult in interface ResultInstrpublic int getIndex()
public void updateResult(Variable v)
updateResult in interface ResultInstrpublic void simplifyOperands(Map<Operand,Operand> valueMap, boolean force)
InstrsimplifyOperands in class Instrpublic Operand simplifyAndGetResult(IRScope scope, Map<Operand,Operand> valueMap)
InstrsimplifyAndGetResult in class InstrvalueMap - Mapping from operands to their simplified valuesCopyright © 2001-2016 JRuby. All Rights Reserved.