Package | Description |
---|---|
org.jikesrvm.adaptive | |
org.jikesrvm.adaptive.controller | |
org.jikesrvm.adaptive.recompilation | |
org.jikesrvm.adaptive.recompilation.instrumentation | |
org.jikesrvm.classloader |
Provides classes that implement the classloading system as well as
data types that represent Java entities like classes, fields, methods
and primitives.
|
org.jikesrvm.compilers.baseline | |
org.jikesrvm.compilers.baseline.ia32 | |
org.jikesrvm.compilers.common | |
org.jikesrvm.compilers.opt.bc2ir |
Provides classes that implement the transformation from bytecode to the
high-level intermediate representation (HIR).
|
org.jikesrvm.compilers.opt.driver | |
org.jikesrvm.compilers.opt.inlining | |
org.jikesrvm.compilers.opt.ir | |
org.jikesrvm.compilers.opt.runtimesupport | |
org.jikesrvm.compilers.opt.specialization | |
org.jikesrvm.jni.ia32 | |
org.jikesrvm.osr | |
org.jikesrvm.runtime | |
org.jikesrvm.tools.oth |
Test harness for the optimizing compiler (see the section "OptTestHarness" in the
user guide).
|
Modifier and Type | Field and Description |
---|---|
static NormalMethod |
AosEntrypoints.invocationCounterTrippedMethod |
static NormalMethod |
AosEntrypoints.osrCleanRefsMethod |
static NormalMethod |
AosEntrypoints.osrGetRefAtMethod |
Modifier and Type | Method and Description |
---|---|
CompilationPlan |
RecompilationStrategy.createCompilationPlan(NormalMethod method,
int optLevel,
InstrumentationPlan instPlan)
Constructs a compilation plan that will compile the given method
with instrumentation.
|
(package private) double |
RecompileOptChoice.getCost(NormalMethod meth) |
(package private) abstract double |
RecompilationChoice.getCost(NormalMethod meth)
What is the cost of selecting this recompilation choice?
|
Modifier and Type | Method and Description |
---|---|
static CompilationPlan |
InvocationCounts.createCompilationPlan(NormalMethod method) |
static CompilationPlan |
InvocationCounts.createCompilationPlan(NormalMethod method,
AOSInstrumentationPlan instPlan) |
static double |
CompilerDNA.estimateCompileTime(int compiler,
NormalMethod meth)
Estimate how long (in milliseconds) it will/did take the
given compiler to compile the given method.
|
Modifier and Type | Method and Description |
---|---|
void |
AOSInstrumentationPlan.finalizeInstrumentation(NormalMethod method) |
void |
AOSInstrumentationPlan.initInstrumentation(NormalMethod method) |
Constructor and Description |
---|
AOSInstrumentationPlan(AOSOptions options,
NormalMethod method) |
AOSInstrumentationPlan(NormalMethod method) |
Modifier and Type | Field and Description |
---|---|
private NormalMethod |
BytecodeStream.method |
Modifier and Type | Field and Description |
---|---|
private static HashMapRVM<NormalMethod,LocalVariableTable> |
NormalMethod.localVariableTables
the local variable table
|
private static HashMapRVM<NormalMethod,byte[]> |
NormalMethod.osrPrologues
Possible OSR record of osr prologue
|
private static HashMapRVM<NormalMethod,Integer> |
NormalMethod.savedOperandWords
Possibly OSR prologue may change the maximum stack height, remember the
original stack height
|
private static HashMapRVM<NormalMethod,byte[]> |
NormalMethod.synthesizedBytecodes
Possible OSR bytecode array consisting of prologue and original bytecodes
|
Modifier and Type | Method and Description |
---|---|
NormalMethod |
BytecodeStream.getMethod()
Returns the method that this bytecode stream is from
|
Constructor and Description |
---|
BytecodeStream(NormalMethod m,
byte[] bc) |
Modifier and Type | Field and Description |
---|---|
protected NormalMethod |
TemplateCompilerFramework.method
The method being compiled
|
private NormalMethod |
BranchProfiles.method
Method containing counters
|
Modifier and Type | Method and Description |
---|---|
static void |
EdgeCounts.allocateCounters(NormalMethod m,
int numEntries) |
void |
BuildReferenceMaps.buildReferenceMaps(NormalMethod method,
int[] stackHeights,
byte[] localTypes,
ReferenceMaps referenceMaps,
BuildBB buildBB)
After the analysis of the blocks of a method, examine the byte codes again, to
determine the reference maps for the gc points.
|
static CompiledMethod |
BaselineCompiler.compile(NormalMethod method)
Compile the given method with the baseline compiler.
|
protected CompiledMethod |
BaselineBootImageCompiler.compileMethod(NormalMethod method,
TypeReference[] params) |
static BranchProfiles |
EdgeCounts.getBranchProfiles(NormalMethod m) |
(package private) static short |
BaselineCompiler.getEmptyStackOffset(NormalMethod m) |
(package private) static short |
BaselineCompiler.getFloatLocalLocation(int localIndex,
short[] localFixedLocations,
NormalMethod method) |
(package private) static short |
BaselineCompiler.getGeneralLocalLocation(int localIndex,
short[] localFixedLocations,
NormalMethod method) |
int |
ReferenceMaps.getNextJSRAddressIndex(Offset nextMachineCodeOffset,
NormalMethod m) |
static int |
TemplateCompilerFramework.stackHeightForEmptyBasicBlock(NormalMethod method) |
Constructor and Description |
---|
BranchProfiles(NormalMethod m,
int[] cs) |
BuildBB(NormalMethod method)
Analyzes the bytecodes and builds the basic blocks with their predecessors.
|
Modifier and Type | Field and Description |
---|---|
private NormalMethod |
BaselineGCMapIterator.currentMethod
Compiled method for the frame
|
Modifier and Type | Method and Description |
---|---|
private static void |
Barriers.arrayStoreBarrierHelper(Assembler asm,
BaselineCompilerImpl compiler,
NormalMethod barrier)
Helper function for primitive array stores
|
static short |
BaselineCompilerImpl.getEmptyStackOffset(NormalMethod m) |
private static Offset |
BaselineCompilerImpl.getFirstLocalOffset(NormalMethod method)
This is misnamed.
|
static short |
BaselineCompilerImpl.getFloatLocalLocation(int index,
short[] localloc,
NormalMethod m) |
static short |
BaselineCompilerImpl.getGeneralLocalLocation(int index,
short[] localloc,
NormalMethod m) |
private static Offset |
BaselineCompilerImpl.getStartLocalOffset(NormalMethod method) |
private static void |
Barriers.putfieldStoreBarrierHelper(Assembler asm,
BaselineCompilerImpl compiler,
Offset fieldOffset,
int locationMetadata,
NormalMethod barrier)
Private helper method for primitive putfields
|
private static void |
Barriers.putfieldStoreBarrierHelper(Assembler asm,
BaselineCompilerImpl compiler,
RegisterConstants.GPR offset,
int locationMetadata,
NormalMethod barrier)
Private helper method for primitive putfields
|
Modifier and Type | Method and Description |
---|---|
static CompiledMethod |
RuntimeCompiler.baselineCompile(NormalMethod method)
This method will compile the passed method using the baseline compiler.
|
static CompiledMethod |
RuntimeCompiler.compile(NormalMethod method)
Compile a Java method when it is first invoked.
|
static CompiledMethod |
BootImageCompiler.compile(NormalMethod method) |
static CompiledMethod |
BootImageCompiler.compile(NormalMethod method,
TypeReference[] params) |
protected abstract CompiledMethod |
BootImageCompiler.compileMethod(NormalMethod method,
TypeReference[] params)
Compiles a method with bytecodes.
|
protected static CompiledMethod |
RuntimeCompiler.fallback(NormalMethod method)
This method uses the default compiler (baseline) to compile a method
It is typically called when a more aggressive compilation fails.
|
private static CompiledMethod |
RuntimeCompiler.optCompile(NormalMethod method,
CompilationPlan plan)
Attempt to compile the passed method with the Compiler.
|
static CompiledMethod |
RuntimeCompiler.optCompileWithFallBack(NormalMethod method)
This method tries to compile the passed method with the Compiler,
using the default compilation plan.
|
static CompiledMethod |
RuntimeCompiler.optCompileWithFallBack(NormalMethod method,
CompilationPlan plan)
This method tries to compile the passed method with the Compiler
with the passed compilation plan.
|
private static CompiledMethod |
RuntimeCompiler.optCompileWithFallBackInternal(NormalMethod method,
CompilationPlan plan)
This real method that performs the opt compilation.
|
static void |
RecompilationManager.recompile(NormalMethod meth)
recompile and replace the argument method by invoking the runtime compiler.
|
static int |
RuntimeCompiler.recompileWithOpt(NormalMethod method)
A wrapper method for those callers who don't want to make
optimization plans
|
static void |
RuntimeCompiler.record(byte compiler,
NormalMethod method,
CompiledMethod compiledMethod)
This method records the time and sizes (bytecode and machine code) for
a compilation.
|
Modifier and Type | Field and Description |
---|---|
private NormalMethod |
GenerationContext.method
The method to be generated
|
Modifier and Type | Method and Description |
---|---|
NormalMethod |
GenerationContext.getMethod() |
(package private) NormalMethod |
GenerationContext.getOriginalMethod() |
Modifier and Type | Method and Description |
---|---|
GenerationContext |
GenerationContext.createChildContext(ExceptionHandlerBasicBlockBag ebag,
NormalMethod callee,
Instruction callSite)
Creates a child generation context from this context
and callerBB to generate IR for callsite.
|
Constructor and Description |
---|
GenerationContext(NormalMethod meth,
TypeReference[] params,
CompiledMethod cm,
OptOptions opts,
InlineOracle ip)
Use this constructor to create an outermost (non-inlined)
GenerationContext.
|
Modifier and Type | Field and Description |
---|---|
NormalMethod |
CompilationPlan.method
The method to be compiled.
|
Modifier and Type | Method and Description |
---|---|
NormalMethod |
CompilationPlan.getMethod() |
Modifier and Type | Method and Description |
---|---|
private CompiledMethod |
OptimizingBootImageCompiler.baselineCompile(NormalMethod method) |
static void |
OptimizingCompiler.bottom(String what,
NormalMethod method)
Debugging aid to be called after printing the IR
|
private static void |
OptimizingCompiler.checkSupported(NormalMethod method,
OptOptions options)
Checks whether opt compilation of a particular method is supported.
|
protected CompiledMethod |
OptimizingBootImageCompiler.compileMethod(NormalMethod method,
TypeReference[] params) |
private static void |
OptimizingCompiler.fail(Throwable e,
NormalMethod method)
Abort a compilation with an error.
|
abstract void |
InstrumentationPlan.finalizeInstrumentation(NormalMethod method)
Called after compilation completes, but before the method is executed.
|
static void |
OptimizingCompiler.header(String what,
NormalMethod method)
Debugging aid to be called before printing the IR
|
abstract void |
InstrumentationPlan.initInstrumentation(NormalMethod method)
Called the beginning of compilation, before the optimization plan
is executed.
|
private static void |
OptimizingCompiler.printMethodMessage(NormalMethod method,
OptOptions options)
Prints a message of a method name.
|
Constructor and Description |
---|
CompilationPlan(NormalMethod m,
OptimizationPlanElement[] op,
InstrumentationPlan mp,
OptOptions opts)
Construct a compilation plan
|
CompilationPlan(NormalMethod m,
OptimizationPlanElement op,
InstrumentationPlan mp,
OptOptions opts)
Construct a compilation plan
|
CompilationPlan(NormalMethod m,
TypeReference[] pms,
OptimizationPlanElement[] op,
InstrumentationPlan mp,
OptOptions opts)
Construct a compilation plan
|
Modifier and Type | Field and Description |
---|---|
NormalMethod |
InlineSequence.method
Current method.
|
Modifier and Type | Method and Description |
---|---|
NormalMethod |
InlineSequence.getMethod() |
NormalMethod |
CompilationState.getMethod() |
NormalMethod |
InlineSequence.getRootMethod() |
NormalMethod |
CompilationState.getRootMethod() |
Modifier and Type | Method and Description |
---|---|
static int |
InlineTools.inlinedSizeEstimate(NormalMethod callee,
CompilationState state)
Given the currently available information at the call site,
what's our best guess on the inlined size of the callee?
|
Constructor and Description |
---|
InlineSequence(NormalMethod method)
Constructs a new top-level inline sequence operand.
|
InlineSequence(NormalMethod method,
InlineSequence caller,
Instruction callsite)
Constructs a new inline sequence operand.
|
InlineSequence(NormalMethod method,
InlineSequence caller,
int bcIndex)
Constructs a new inline sequence operand.
|
Modifier and Type | Field and Description |
---|---|
NormalMethod |
IR.method
The
NormalMethod object corresponding to the
method being compiled. |
Modifier and Type | Method and Description |
---|---|
NormalMethod |
IR.getMethod() |
Constructor and Description |
---|
IR(NormalMethod m,
CompilationPlan cp) |
IR(NormalMethod m,
InlineOracle ip,
OptOptions opts) |
Modifier and Type | Method and Description |
---|---|
NormalMethod |
OptMachineCodeMap.getMethodForMCOffset(Offset MCOffset)
Get the RVMMethod for a machine instruction offset.
|
Modifier and Type | Field and Description |
---|---|
(package private) NormalMethod |
SpecializedMethod.method
The method that was specialized
|
Modifier and Type | Method and Description |
---|---|
NormalMethod |
SpecializedMethod.getMethod() |
Modifier and Type | Method and Description |
---|---|
private SpecializedMethod |
InvokeeThreadLocalContext.createSpecializedMethod(NormalMethod method) |
SpecializedMethod |
SpecializationContext.findOrCreateSpecializedVersion(NormalMethod source)
Finds or creates a specialized version of source for this
context.
|
SpecializedMethod |
InvokeeThreadLocalContext.findOrCreateSpecializedVersion(NormalMethod source) |
CompiledMethod |
SpecializationContext.specialCompile(NormalMethod source)
Generates code for a specialized version of source in this
context.
|
CompiledMethod |
InvokeeThreadLocalContext.specialCompile(NormalMethod source)
Generate code to specialize a method in this context.
|
Constructor and Description |
---|
SpecializedMethod(NormalMethod source,
SpecializationContext context) |
Modifier and Type | Method and Description |
---|---|
static void |
JNICompiler.generateGlueCodeForJNIMethod(Assembler asm,
NormalMethod method,
int methodID)
Handles the C to Java transition: JNI methods in JNIFunctions.java.
|
Modifier and Type | Field and Description |
---|---|
NormalMethod |
ExecutionState.meth
the method of which the execution state belongs to
|
Modifier and Type | Method and Description |
---|---|
NormalMethod |
ExecutionState.getMethod() |
Modifier and Type | Method and Description |
---|---|
boolean |
BytecodeTraverser.computeLocalStackTypes(NormalMethod method,
int bcpoint)
Computes types of local variable and stack slots at an interesting point
for future querying.
|
void |
BytecodeTraverser.computeStackHeights(NormalMethod method,
BytecodeStream bcodes,
int[] stackHeights,
boolean adjustExptable) |
void |
BytecodeTraverser.prologueStackHeights(NormalMethod method,
BytecodeStream bcodes,
int[] stackHeights)
Compute stack heights of bytecode stream (used for osr prologue)
|
private boolean |
BytecodeTraverser.scanBlocks(NormalMethod method,
BytecodeStream bytecodes,
boolean doDFS,
int pcs,
byte[] ltypes,
byte[] stypes,
int startpc,
TypeStack S,
int[] stackHeights) |
void |
ExecutionState.setMethod(NormalMethod m) |
Modifier and Type | Method and Description |
---|---|
static NormalMethod |
EntrypointHelper.getMethod(Class<?> klass,
String member,
String descriptor)
Get description of virtual machine method.
|
static NormalMethod |
EntrypointHelper.getMethod(String klass,
String member,
String descriptor) |
static NormalMethod |
EntrypointHelper.getMethod(String klass,
String member,
String descriptor,
boolean runtimeServiceMethod) |
Modifier and Type | Method and Description |
---|---|
(package private) static String |
OptTestHarness.compiledMethodMessage(NormalMethod method) |