public final class ExpandRuntimeServices extends CompilerPhase
| Modifier and Type | Field and Description |
|---|---|
private Simple |
_os
Cache of simple optimizations if used to tidy up
|
private BranchOptimizations |
branchOpts
Cache of branch optimizations if used to tidy up
|
private static Constructor<CompilerPhase> |
constructor
Constructor for this compiler phase
|
private boolean |
didSomething
Did we expand something?
|
private Instruction |
next
Pointer for next instruction during perform()
|
container| Constructor and Description |
|---|
ExpandRuntimeServices() |
| Modifier and Type | Method and Description |
|---|---|
Constructor<CompilerPhase> |
getClassConstructor()
Get a constructor object for this compiler phase
|
String |
getName() |
private void |
inline(Instruction inst,
IR ir) |
private void |
inline(Instruction inst,
IR ir,
boolean noCalleeExceptions) |
void |
perform(IR ir)
Given an HIR, expand operators that are implemented as calls to
runtime service methods.
|
private void |
primitiveArrayStoreHelper(RVMMethod target,
Instruction inst,
IR ir)
Helper method to generate call to primitive arrayStore write barrier
|
private void |
primitiveObjectFieldStoreHelper(RVMMethod target,
Instruction inst,
IR ir,
FieldReference fieldRef)
Helper method to generate call to primitive putfield write barrier
|
void |
reportAdditionalStats()
Called when printing a measure compilation report to enable a phase
to report additional phase-specific statistics.
|
boolean |
shouldPerform(OptOptions options)
This method determines if the phase should be run, based on the
Options object it is passed.
|
dumpIR, dumpIR, getCompilerPhaseConstructor, getCompilerPhaseConstructor, newExecution, performPhase, printingEnabled, setContainer, verifyprivate BranchOptimizations branchOpts
private boolean didSomething
private Instruction next
private static final Constructor<CompilerPhase> constructor
public ExpandRuntimeServices()
public Constructor<CompilerPhase> getClassConstructor()
getClassConstructor in class CompilerPhasepublic boolean shouldPerform(OptOptions options)
CompilerPhaseshouldPerform in class CompilerPhaseoptions - the compiler options for the compilationpublic String getName()
getName in class CompilerPhasepublic void reportAdditionalStats()
CompilerPhasereportAdditionalStats in class CompilerPhasepublic void perform(IR ir)
perform in class CompilerPhaseir - The HIR to expandprivate void inline(Instruction inst, IR ir)
private void inline(Instruction inst, IR ir, boolean noCalleeExceptions)
private void primitiveArrayStoreHelper(RVMMethod target, Instruction inst, IR ir)
target - entry point for write barrier methodinst - the current instructionir - the IRprivate void primitiveObjectFieldStoreHelper(RVMMethod target, Instruction inst, IR ir, FieldReference fieldRef)
target - entry point for write barrier methodinst - the current instructionir - the IRfieldRef - the field that needs the barrier