Modifier and Type | Method and Description |
---|---|
protected Variable |
IRBuilder.buildDefinitionCheck(IRScope s,
ResultInstr definedInstr,
String definedReturnValue) |
protected Variable |
IRBuilder.buildDefnCheckIfThenPaths(IRScope s,
Label undefLabel,
Operand defVal) |
protected Variable |
IRBuilder.copyAndReturnValue(IRScope s,
Operand val) |
Variable |
IRScope.getCurrentModuleVariable() |
Variable |
IRScope.getCurrentScopeVariable() |
Variable |
IRScope.getNewInlineVariable(String inlinePrefix,
Variable v) |
protected Variable |
IRBuilder.getValueInTemporaryVariable(IRScope s,
Operand val) |
Modifier and Type | Method and Description |
---|---|
void |
IRBuilder.buildAssignment(Node node,
IRScope s,
Variable rhsVal) |
void |
IRBuilder.buildVersionSpecificAssignment(Node node,
IRScope s,
Variable v) |
boolean |
IRScope.definesLocalVariable(Variable v) |
Variable |
IRScope.getNewInlineVariable(String inlinePrefix,
Variable v) |
void |
IRScope.initFlipStateVariable(Variable v,
Operand initState) |
protected void |
IRBuilder.receiveBlockArg(IRScope s,
Variable v,
Operand argsArray,
int argIndex,
boolean isSplat) |
boolean |
IRScope.usesLocalVariable(Variable v) |
Modifier and Type | Method and Description |
---|---|
Variable |
LiveVariablesProblem.getVariable(int id) |
Modifier and Type | Method and Description |
---|---|
Set<Variable> |
LiveVariablesProblem.getAllVars() |
List<Variable> |
LiveVariablesProblem.getVarsLiveOnScopeEntry()
Get variables that are live on entry to the cfg.
|
Modifier and Type | Method and Description |
---|---|
void |
LiveVariablesProblem.addDFVar(Variable v) |
void |
UnboxableOpsAnalysisNode.boxVar(org.jruby.ir.dataflow.analyses.UnboxableOpsAnalysisNode.UnboxState state,
Class reqdType,
Map<Variable,TemporaryLocalVariable> unboxMap,
Variable v,
List<Instr> newInstrs) |
boolean |
LiveVariablesProblem.dfVarExists(Variable v) |
Integer |
LiveVariablesProblem.getDFVar(Variable v) |
void |
UnboxableOpsAnalysisNode.unboxVar(org.jruby.ir.dataflow.analyses.UnboxableOpsAnalysisNode.UnboxState state,
Class reqdType,
Map<Variable,TemporaryLocalVariable> unboxMap,
Variable v,
List<Instr> newInstrs) |
Modifier and Type | Method and Description |
---|---|
void |
UnboxableOpsAnalysisNode.boxVar(org.jruby.ir.dataflow.analyses.UnboxableOpsAnalysisNode.UnboxState state,
Class reqdType,
Map<Variable,TemporaryLocalVariable> unboxMap,
Variable v,
List<Instr> newInstrs) |
void |
UnboxableOpsAnalysisNode.unbox(Map<Variable,TemporaryLocalVariable> unboxMap) |
void |
UnboxableOpsAnalysisNode.unboxVar(org.jruby.ir.dataflow.analyses.UnboxableOpsAnalysisNode.UnboxState state,
Class reqdType,
Map<Variable,TemporaryLocalVariable> unboxMap,
Variable v,
List<Instr> newInstrs) |
Modifier and Type | Field and Description |
---|---|
protected Variable |
ResultBaseInstr.result |
protected Variable |
CallInstr.result |
Modifier and Type | Method and Description |
---|---|
Variable |
GetClassVarContainerModuleInstr.getObject() |
Variable |
ResultInstr.getResult() |
Variable |
ResultBaseInstr.getResult() |
Variable |
CallInstr.getResult() |
Variable |
ReifyClosureInstr.getSource() |
Modifier and Type | Method and Description |
---|---|
List<Variable> |
Instr.getUsedVariables() |
Modifier and Type | Method and Description |
---|---|
static CallInstr |
CallInstr.create(CallType callType,
Variable result,
String name,
Operand receiver,
Operand[] args,
Operand closure) |
static CallInstr |
CallInstr.create(Variable result,
String name,
Operand receiver,
Operand[] args,
Operand closure) |
void |
ResultInstr.updateResult(Variable v) |
void |
ResultBaseInstr.updateResult(Variable result) |
void |
CallInstr.updateResult(Variable v) |
Constructor and Description |
---|
AluInstr(Operation op,
Variable result,
Operand a1,
Operand a2) |
BoxBooleanInstr(Variable dst,
Operand val) |
BoxFixnumInstr(Variable dst,
Operand val) |
BoxFloatInstr(Variable dst,
Operand val) |
BoxInstr(Operation op,
Variable result,
Operand val) |
UnboxBooleanInstr(Variable dst,
Operand val) |
UnboxFixnumInstr(Variable dst,
Operand val) |
UnboxFloatInstr(Variable dst,
Operand val) |
UnboxInstr(Operation op,
Variable result,
Operand value) |
Constructor and Description |
---|
GetErrorInfoInstr(Variable result) |
Constructor and Description |
---|
OneFixnumArgNoBlockCallInstr(Variable result,
String name,
Operand receiver,
Operand[] args) |
OneFloatArgNoBlockCallInstr(Variable result,
String name,
Operand receiver,
Operand[] args) |
OneOperandArgBlockCallInstr(Variable result,
String name,
Operand receiver,
Operand[] args,
Operand closure) |
OneOperandArgNoBlockCallInstr(Variable result,
String name,
Operand receiver,
Operand[] args) |
ZeroOperandArgNoBlockCallInstr(Variable result,
String name,
Operand receiver,
Operand[] args) |
Modifier and Type | Class and Description |
---|---|
class |
ClosureLocalVariable
This represents a variable used in a closure that is
local to the closure and is not defined in any ancestor lexical scope
|
class |
LocalVariable |
class |
Self |
class |
TemporaryBooleanVariable
Represents a temporary variable for an unboxed Boolean operand.
|
class |
TemporaryClosureVariable |
class |
TemporaryCurrentModuleVariable |
class |
TemporaryCurrentScopeVariable |
class |
TemporaryFixnumVariable
Represents a temporary variable for an unboxed Float operand.
|
class |
TemporaryFloatVariable
Represents a temporary variable for an unboxed Float operand.
|
class |
TemporaryLocalReplacementVariable
When we optimize full local variables to be temporary ones we like to keep the name
of what we renamed them as.
|
class |
TemporaryLocalVariable
A set of variables which are only used in a particular scope and never
visible to Ruby itself.
|
class |
TemporaryVariable |
Modifier and Type | Method and Description |
---|---|
abstract Variable |
Variable.clone(SimpleCloneInfo ii) |
Variable |
TemporaryLocalVariable.clone(SimpleCloneInfo ii) |
Variable |
TemporaryLocalReplacementVariable.clone(SimpleCloneInfo ii) |
Variable |
TemporaryFloatVariable.clone(SimpleCloneInfo ii) |
Variable |
TemporaryFixnumVariable.clone(SimpleCloneInfo ii) |
Variable |
TemporaryCurrentScopeVariable.clone(SimpleCloneInfo ii) |
Variable |
TemporaryCurrentModuleVariable.clone(SimpleCloneInfo ii) |
Variable |
TemporaryClosureVariable.clone(SimpleCloneInfo ii) |
Variable |
TemporaryBooleanVariable.clone(SimpleCloneInfo ii) |
Variable |
Self.clone(SimpleCloneInfo ii) |
Variable |
LocalVariable.clone(SimpleCloneInfo ii) |
Variable |
ClosureLocalVariable.clone(SimpleCloneInfo ii) |
Variable |
WrappedIRClosure.getSelf() |
Modifier and Type | Method and Description |
---|---|
void |
WrappedIRClosure.addUsedVariables(List<Variable> l) |
void |
Variable.addUsedVariables(List<Variable> l)
Append the list of variables used in this operand to the input list
|
void |
UndefinedValue.addUsedVariables(List<Variable> l) |
void |
SValue.addUsedVariables(List<Variable> l)
Append the list of variables used in this operand to the input list
|
void |
StringLiteral.addUsedVariables(List<Variable> l) |
void |
StandardError.addUsedVariables(List<Variable> l) |
void |
Splat.addUsedVariables(List<Variable> l)
Append the list of variables used in this operand to the input list
|
void |
ScopeModule.addUsedVariables(List<Variable> l) |
void |
Regexp.addUsedVariables(List<Variable> l)
Append the list of variables used in this operand to the input list
|
void |
Reference.addUsedVariables(List<Variable> l) |
abstract void |
Operand.addUsedVariables(List<Variable> l)
Append the list of variables used in this operand to the input list -- force every operand
to implement this because a missing implementation can cause bad failures.
|
void |
ObjectClass.addUsedVariables(List<Variable> l) |
void |
Label.addUsedVariables(List<Variable> l) |
void |
IRException.addUsedVariables(List<Variable> l) |
void |
ImmutableLiteral.addUsedVariables(List<Variable> l) |
void |
Hash.addUsedVariables(List<Variable> l)
Append the list of variables used in this operand to the input list
|
void |
DynamicSymbol.addUsedVariables(List<Variable> l)
Append the list of variables used in this operand to the input list
|
void |
CurrentScope.addUsedVariables(List<Variable> l) |
void |
AsString.addUsedVariables(List<Variable> l) |
void |
Array.addUsedVariables(List<Variable> l)
Append the list of variables used in this operand to the input list
|
Constructor and Description |
---|
WrappedIRClosure(Variable self,
IRClosure closure) |
Modifier and Type | Method and Description |
---|---|
Variable |
IRReaderFile.decodeVariable() |
Variable |
IRReaderDecoder.decodeVariable() |
Modifier and Type | Method and Description |
---|---|
int |
MethodData.local(Variable variable) |
int |
MethodData.local(Variable variable,
org.objectweb.asm.Type type) |
Modifier and Type | Field and Description |
---|---|
protected Map<Variable,Variable> |
CloneInfo.variableRenameMap |
protected Map<Variable,Variable> |
CloneInfo.variableRenameMap |
Modifier and Type | Method and Description |
---|---|
Variable |
InlineCloneInfo.getCallResultVariable() |
protected Variable |
SimpleCloneInfo.getRenamedSelfVariable(Variable self) |
protected Variable |
InlineCloneInfo.getRenamedSelfVariable(Variable self) |
protected abstract Variable |
CloneInfo.getRenamedSelfVariable(Variable self)
How do we rename %self?
|
Variable |
SimpleCloneInfo.getRenamedVariable(Variable variable) |
Variable |
CloneInfo.getRenamedVariable(Variable variable)
Return a new instance of a variable for the newly cloned scope.
|
protected Variable |
SimpleCloneInfo.getRenamedVariableSimple(Variable v) |
protected Variable |
InlineCloneInfo.getRenamedVariableSimple(Variable v) |
protected abstract Variable |
CloneInfo.getRenamedVariableSimple(Variable variable)
How are typical variables renamed if they were not yet found in the variable renaming map?
|
Variable |
InlineCloneInfo.getYieldResult() |
Modifier and Type | Method and Description |
---|---|
protected Variable |
SimpleCloneInfo.getRenamedSelfVariable(Variable self) |
protected Variable |
InlineCloneInfo.getRenamedSelfVariable(Variable self) |
protected abstract Variable |
CloneInfo.getRenamedSelfVariable(Variable self)
How do we rename %self?
|
Variable |
SimpleCloneInfo.getRenamedVariable(Variable variable) |
Variable |
CloneInfo.getRenamedVariable(Variable variable)
Return a new instance of a variable for the newly cloned scope.
|
protected Variable |
SimpleCloneInfo.getRenamedVariableSimple(Variable v) |
protected Variable |
InlineCloneInfo.getRenamedVariableSimple(Variable v) |
protected abstract Variable |
CloneInfo.getRenamedVariableSimple(Variable variable)
How are typical variables renamed if they were not yet found in the variable renaming map?
|
Constructor and Description |
---|
InlineCloneInfo(CallBase call,
CFG c,
Variable callReceiver,
IRScope scopeBeingInlined) |
Copyright © 2001-2015 JRuby. All Rights Reserved.