public final class CompilationState extends Object
Modifier and Type | Field and Description |
---|---|
private Instruction |
call |
private CompiledMethod |
cm |
private boolean |
isExtant |
private OptOptions |
options |
private int |
realBCI |
Constructor and Description |
---|
CompilationState(Instruction call,
boolean isExtant,
OptOptions options,
CompiledMethod cm,
int realBCI) |
Modifier and Type | Method and Description |
---|---|
Instruction |
getCallInstruction() |
CompiledMethod |
getCompiledMethod() |
boolean |
getHasPreciseTarget() |
int |
getInlineDepth() |
boolean |
getIsExtant() |
NormalMethod |
getMethod() |
OptOptions |
getOptions() |
int |
getRealBytecodeIndex() |
NormalMethod |
getRootMethod() |
InlineSequence |
getSequence() |
boolean |
isInvokeInterface()
Does this state represent an invokeinterface call?
|
RVMMethod |
obtainTarget()
Obtains the target method from the compilation state.
|
private final Instruction call
private final boolean isExtant
private final OptOptions options
private final CompiledMethod cm
private final int realBCI
public CompilationState(Instruction call, boolean isExtant, OptOptions options, CompiledMethod cm, int realBCI)
call
- the call instruction being considered for inlining.isExtant
- is the receiver of a virtual call an extant object?options
- controlling compiler optionscm
- compiled method of the IR object being compiledrealBCI
- the real bytecode index of the call instruction, not adjusted because of OSRpublic boolean isInvokeInterface()
true
if it is an interface call
or false
if it is not.public int getInlineDepth()
public Instruction getCallInstruction()
public RVMMethod obtainTarget()
public OptOptions getOptions()
public boolean getIsExtant()
public boolean getHasPreciseTarget()
public NormalMethod getRootMethod()
public NormalMethod getMethod()
public int getRealBytecodeIndex()
public InlineSequence getSequence()
public CompiledMethod getCompiledMethod()