public class CallInstr extends CallBase implements ResultInstr
Modifier and Type | Field and Description |
---|---|
protected Variable |
result |
argsCount, callSite, callSiteId, hasClosure, name
EMPTY_OPERANDS, operands
Modifier | Constructor and Description |
---|---|
|
CallInstr(CallType callType,
Variable result,
String name,
Operand receiver,
Operand[] args,
Operand closure,
boolean potentiallyRefined) |
protected |
CallInstr(Operation op,
CallType callType,
Variable result,
String name,
Operand receiver,
Operand[] args,
Operand closure,
boolean potentiallyRefined) |
Modifier and Type | Method and Description |
---|---|
Instr |
clone(CloneInfo ii)
Clone the instruction for use in an inlining context (either when a scope is inlined into
another scope, or when a block has to be cloned because its associated call belongs to
an inlined scope).
|
static CallInstr |
create(IRScope scope,
CallType callType,
Variable result,
String name,
Operand receiver,
Operand[] args,
Operand closure) |
static CallInstr |
create(IRScope scope,
Variable result,
String name,
Operand receiver,
Operand[] args,
Operand closure) |
static CallInstr |
decode(IRReaderDecoder d) |
Instr |
discardResult() |
void |
encode(IRWriterEncoder e) |
Variable |
getResult() |
void |
updateResult(Variable v) |
void |
visit(IRVisitor visitor) |
blockInlining, canBeEval, cloneCallArgs, computeScopeFlags, containsArgSplat, containsArgSplat, getArg1, getArgsCount, getCallArgs, getCallSite, getCallType, getClosureArg, getClosureArg, getName, getReceiver, hasLiteralClosure, inliningBlocked, interpret, isAllFixnums, isAllFloats, isPotentiallyRefined, prepareArguments, prepareArgumentsComplex, prepareArgumentsSimple, prepareBlock, setProcNew, simplifyOperands, targetRequiresCallersBinding, targetRequiresCallersFrame, toStringNonOperandArgs
canBeDeleted, canRaiseException, cloneOperands, getIPC, getOperands, getOperation, getRPC, getUsedVariables, hasSideEffects, interpretAndGetNewIPC, isDead, markDead, renameVars, setIPC, setRPC, simplifyAndGetResult, toString, transfersControl
protected Variable result
public CallInstr(CallType callType, Variable result, String name, Operand receiver, Operand[] args, Operand closure, boolean potentiallyRefined)
public static CallInstr create(IRScope scope, Variable result, String name, Operand receiver, Operand[] args, Operand closure)
public static CallInstr create(IRScope scope, CallType callType, Variable result, String name, Operand receiver, Operand[] args, Operand closure)
public void encode(IRWriterEncoder e)
public static CallInstr decode(IRReaderDecoder d)
public Variable getResult()
getResult
in interface ResultInstr
public void updateResult(Variable v)
updateResult
in interface ResultInstr
public Instr discardResult()
public Instr clone(CloneInfo ii)
Instr
Copyright © 2001-2015 JRuby. All Rights Reserved.