public class IRMethod extends IRScope
Modifier and Type | Field and Description |
---|---|
boolean |
isInstanceMethod |
argDesc, booleanVariableIndex, fixnumVariableIndex, floatVariableIndex, fullInterpreterContext, interpreterContext, LOG, temporaryVariableIndex, threadPollInstrsCount
Constructor and Description |
---|
IRMethod(IRManager manager,
IRScope lexicalParent,
MethodDefNode defn,
String name,
boolean isInstanceMethod,
int lineNumber,
StaticScope staticScope) |
Modifier and Type | Method and Description |
---|---|
void |
addNativeSignature(int arity,
java.lang.invoke.MethodType signature) |
protected LocalVariable |
findExistingLocalVariable(String name,
int scopeDepth) |
String |
getJittedName() |
LocalVariable |
getLocalVariable(String name,
int scopeDepth)
Find or create a local variable.
|
Map<Integer,java.lang.invoke.MethodType> |
getNativeSignatures() |
IRScopeType |
getScopeType() |
boolean |
hasBeenBuilt()
For lazy scopes which IRBuild on demand we can ask this method whether it has been built yet...
|
InterpreterContext |
lazilyAcquireInterpreterContext() |
BasicBlock[] |
prepareForInitialCompilation()
Run any necessary passes to get the IR ready for compilation
|
void |
setJittedName(String jittedName) |
addChildScope, addClosure, allocateInterpreterContext, allocateNextPrefixedName, bindingHasEscaped, buildJVMExceptionTable, canReceiveNonlocalReturns, computeScopeFlags, computeScopeFlagsEarly, createTemporaryVariable, debugOutput, definesLocalVariable, depends, equals, getArgumentDescriptors, getBeginBlocks, getBooleanVariablesCount, getCFG, getClosures, getCurrentModuleVariable, getCurrentScopeVariable, getEndBlocks, getExecutedPasses, getFileName, getFixnumVariablesCount, getFlags, getFloatVariablesCount, getFullInterpreterContext, getInterpreterContext, getLexicalParent, getLexicalScopes, getLineNumber, getLiveVariablesProblem, getLocalVariables, getLocalVariablesCount, getManager, getName, getNearestFlipVariableScope, getNearestMethod, getNearestModuleReferencingScopeDepth, getNearestTopLocalVariableScope, getNewFlipStateVariable, getNewInlineVariable, getNewLabel, getNewLabel, getNewLocalVariable, getNewTemporaryVariable, getNewTemporaryVariableFor, getNewUnboxedVariable, getNextClosureId, getPrefixCountSize, getScopeId, getSelf, getStaticScope, getStoreLocalVarPlacementProblem, getTemporaryVariablesCount, getThreadPollInstrsCount, getTopLevelScope, getUnboxableOpsAnalysisProblem, getUsedVariablesCount, getVarIndices, getYieldClosureVariable, hasExplicitCallProtocol, hashCode, hasLoops, inlineMethod, isBeginEndBlock, isFlipScope, isModuleBody, isNestedInClosure, isNonSingletonClassBody, isScriptScope, isTopLocalVariableScope, isUnsafeScope, lookupExistingLVar, maybeUsingRefinements, parentMaybeUsingRefinements, prepareFullBuild, prepareFullBuildCommon, putLiveVariablesProblem, putStoreLocalVarPlacementProblem, putUnboxableOpsAnalysisProblem, receivesKeywordArgs, recordBeginBlock, removeClosure, resetState, resetTemporaryVariables, resetVariableCounter, setArgumentDescriptors, setExplicitCallProtocolFlag, setHasLoopsFlag, setInterpreterContext, setIsMaybeUsingRefinements, setLabelIndices, setLocalVariables, setName, setTemporaryVariableCount, setUpUseDefLocalVarMaps, toString, toStringInstrs, usesBackrefOrLastline, usesEval, usesLocalVariable, usesZSuper
public IRMethod(IRManager manager, IRScope lexicalParent, MethodDefNode defn, String name, boolean isInstanceMethod, int lineNumber, StaticScope staticScope)
public boolean hasBeenBuilt()
IRScope
hasBeenBuilt
in class IRScope
public InterpreterContext lazilyAcquireInterpreterContext()
public BasicBlock[] prepareForInitialCompilation()
IRScope
prepareForInitialCompilation
in class IRScope
public IRScopeType getScopeType()
getScopeType
in class IRScope
protected LocalVariable findExistingLocalVariable(String name, int scopeDepth)
findExistingLocalVariable
in class IRScope
public LocalVariable getLocalVariable(String name, int scopeDepth)
IRScope
getLocalVariable
in class IRScope
public void addNativeSignature(int arity, java.lang.invoke.MethodType signature)
public Map<Integer,java.lang.invoke.MethodType> getNativeSignatures()
public String getJittedName()
public void setJittedName(String jittedName)
Copyright © 2001-2015 JRuby. All Rights Reserved.