Modifier and Type | Field and Description |
---|---|
protected FullInterpreterContext |
IRScope.fullInterpreterContext
-X-C full interpretation OR JIT depends on this
|
protected FullInterpreterContext |
IRScope.optimizedInterpreterContext
Speculatively optimized code
|
Modifier and Type | Method and Description |
---|---|
FullInterpreterContext |
IRScope.getExecutionContext() |
FullInterpreterContext |
IRScope.getFullInterpreterContext() |
FullInterpreterContext |
IRScope.getOptimizedInterpreterContext() |
FullInterpreterContext |
IRScope.prepareFullBuild()
This initializes a more complete(full) InterpreterContext which if used in mixed mode will be
used by the JIT and if used in pure-interpreted mode it will be used by an interpreter engine.
|
Modifier and Type | Method and Description |
---|---|
java.util.Map<BasicBlock,Label> |
IRScope.buildJVMExceptionTable(FullInterpreterContext fic) |
protected void |
IRManager.optimizeIfSimpleScope(FullInterpreterContext fic)
For scopes that don't require a dynamic scope we can run DCE and some other passes which cannot
be stymied by escaped bindings.
|
Modifier and Type | Field and Description |
---|---|
protected FullInterpreterContext |
DataFlowProblem.fic |
Modifier and Type | Method and Description |
---|---|
FullInterpreterContext |
DataFlowProblem.getFIC() |
Modifier and Type | Method and Description |
---|---|
void |
DataFlowProblem.setup(FullInterpreterContext fic) |
Constructor and Description |
---|
DefinedVariablesProblem(FullInterpreterContext fic) |
LiveVariablesProblem(FullInterpreterContext fic) |
Modifier and Type | Method and Description |
---|---|
boolean |
ToAryInstr.canBeDeletedFromScope(FullInterpreterContext fic) |
boolean |
Instr.canBeDeletedFromScope(FullInterpreterContext fic) |
Modifier and Type | Method and Description |
---|---|
FullInterpreterContext |
FullInterpreterContext.duplicate() |
Modifier and Type | Method and Description |
---|---|
void |
BasicCompilerPassListener.alreadyExecuted(CompilerPass passClass,
FullInterpreterContext fic,
java.lang.Object data,
boolean childScope) |
void |
CompilerPassListener.alreadyExecuted(CompilerPass passClass,
FullInterpreterContext fic,
java.lang.Object data,
boolean childScope)
This dependent pass has been determined to already be satisfied and is
not going to call execute().
|
void |
OptimizeDynScopesPass.eliminateLocalVars(FullInterpreterContext fic) |
void |
BasicCompilerPassListener.endExecute(CompilerPass pass,
FullInterpreterContext fic,
java.lang.Object data,
boolean childScope) |
void |
CompilerPassListener.endExecute(CompilerPass pass,
FullInterpreterContext fic,
java.lang.Object data,
boolean childScope)
This pass has just finished execute'ing.
|
java.lang.Object |
OptimizeDelegationPass.execute(FullInterpreterContext fic,
java.lang.Object... data) |
abstract java.lang.Object |
CompilerPass.execute(FullInterpreterContext fic,
java.lang.Object... dependencyData)
Meat of an individual pass.
|
java.lang.Object |
OptimizeDynScopesPass.execute(FullInterpreterContext fic,
java.lang.Object... data) |
java.lang.Object |
UnboxingPass.execute(FullInterpreterContext fic,
java.lang.Object... data) |
java.lang.Object |
DeadCodeElimination.execute(FullInterpreterContext fic,
java.lang.Object... data) |
java.lang.Object |
EnsureTempsAssigned.execute(FullInterpreterContext fic,
java.lang.Object... data) |
java.lang.Object |
LocalOptimizationPass.execute(FullInterpreterContext fic,
java.lang.Object... data) |
java.lang.Object |
AddLocalVarLoadStoreInstructions.execute(FullInterpreterContext fic,
java.lang.Object... data) |
java.lang.Object |
DominatorTreeBuilder.execute(FullInterpreterContext fic,
java.lang.Object... data) |
java.lang.Object |
AddCallProtocolInstructions.execute(FullInterpreterContext fic,
java.lang.Object... data) |
java.lang.Object |
LiveVariableAnalysis.execute(FullInterpreterContext fic,
java.lang.Object... data) |
java.lang.Object |
AddMissingInitsPass.execute(FullInterpreterContext fic,
java.lang.Object... data) |
boolean |
OptimizeDelegationPass.invalidate(FullInterpreterContext fic) |
boolean |
CompilerPass.invalidate(FullInterpreterContext fic)
The data that this pass is responsible for will get invalidated so that
if this pass is then executed it will generate new pass data.
|
boolean |
OptimizeDynScopesPass.invalidate(FullInterpreterContext fic) |
boolean |
AddLocalVarLoadStoreInstructions.invalidate(FullInterpreterContext fic) |
boolean |
DominatorTreeBuilder.invalidate(FullInterpreterContext fic) |
boolean |
AddCallProtocolInstructions.invalidate(FullInterpreterContext fic) |
boolean |
LiveVariableAnalysis.invalidate(FullInterpreterContext fic) |
static Instr |
LocalOptimizationPass.optInstr(FullInterpreterContext fic,
Instr instr,
java.util.Map<Operand,Operand> valueMap,
java.util.Map<Variable,java.util.List<Variable>> simplificationMap) |
java.lang.Object |
CompilerPass.previouslyRun(FullInterpreterContext fic)
If this pass has been previous run, then return the data from that last run.
|
java.lang.Object |
UnboxingPass.previouslyRun(FullInterpreterContext fic) |
java.lang.Object |
AddLocalVarLoadStoreInstructions.previouslyRun(FullInterpreterContext fic) |
java.lang.Object |
LiveVariableAnalysis.previouslyRun(FullInterpreterContext fic) |
java.lang.Object |
CompilerPass.run(FullInterpreterContext fic) |
java.lang.Object |
CompilerPass.run(FullInterpreterContext fic,
boolean force) |
protected java.lang.Object |
CompilerPass.run(FullInterpreterContext fic,
boolean force,
boolean childScope) |
static void |
LocalOptimizationPass.runLocalOptsOnBasicBlock(FullInterpreterContext fic,
BasicBlock b) |
static void |
LocalOptimizationPass.runLocalOptsOnInstrArray(FullInterpreterContext fic,
Instr[] instrs) |
void |
BasicCompilerPassListener.startExecute(CompilerPass pass,
FullInterpreterContext fic,
boolean childScope) |
void |
CompilerPassListener.startExecute(CompilerPass pass,
FullInterpreterContext fic,
boolean childScope)
This pass is about to begin execute'ing.
|
Constructor and Description |
---|
CFGInliner(FullInterpreterContext fullInterpreterContext) |
Copyright © 2001-2020 JRuby. All Rights Reserved.