|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Objectorg.jikesrvm.compilers.baseline.TemplateCompilerFramework
org.jikesrvm.compilers.baseline.BaselineCompiler
public abstract class BaselineCompiler
Baseline compiler - platform independent code. Platform dependent versions extend this class and define the host of abstract methods defined by TemplateCompilerFramework to complete the implementation of a baseline compiler for a particular target,
| Field Summary | |
|---|---|
private static long |
codeGenNanos
|
protected int |
edgeCounterIdx
Next edge counter entry to allocate |
private static long |
encodingNanos
|
private static long |
gcMapNanos
|
protected byte[] |
localTypes
The types that locals can take. |
static BaselineOptions |
options
Options used during base compiler execution |
private static long |
osrSetupNanos
|
| Fields inherited from class org.jikesrvm.compilers.baseline.TemplateCompilerFramework |
|---|
asm, bcodes, biStart, bytecodeMap, compiledMethod, doesCheckStore, fullyBootedVM, isInterruptible, isUninterruptible, isUnpreemptible, klass, lockOffset, method, shouldPrint, stackHeights |
| Constructor Summary | |
|---|---|
protected |
BaselineCompiler(BaselineCompiledMethod cm)
Construct a BaselineCompilerImpl |
| Method Summary | |
|---|---|
protected void |
compile()
Top level driver for baseline compilation of a method. |
static CompiledMethod |
compile(NormalMethod method)
Compile the given method with the baseline compiler. |
static void |
fullyBootedVM()
Now that VM is fully booted, enable options such as PRINT_MACHINE_CODE that require a fully booted VM. |
static void |
generateBaselineCompilerSubsystemReport(boolean explain)
Generate a report of time spent in various phases of the baseline compiler. |
protected String |
getCompilerName()
|
protected int |
getEdgeCounterIndex()
|
protected Offset |
getEdgeCounterOffset()
|
protected abstract void |
initializeCompiler()
|
static void |
initOptions()
Clear out crud from bootimage writing |
static void |
processCommandLineArg(String prefix,
String arg)
Process a command line argument |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
private static long gcMapNanos
private static long osrSetupNanos
private static long codeGenNanos
private static long encodingNanos
public static BaselineOptions options
protected int edgeCounterIdx
protected final byte[] localTypes
| Constructor Detail |
|---|
protected BaselineCompiler(BaselineCompiledMethod cm)
| Method Detail |
|---|
protected final Offset getEdgeCounterOffset()
protected final int getEdgeCounterIndex()
public static void initOptions()
public static void fullyBootedVM()
public static void processCommandLineArg(String prefix,
String arg)
prefix - arg - Command line argument with prefix stripped offpublic static void generateBaselineCompilerSubsystemReport(boolean explain)
NB: This method may be called in a context where classloading and/or GC cannot be allowed. Therefore we must use primitive sysWrites for output and avoid string appends and other allocations.
explain - Should an explanation of the metrics be generated?public static CompiledMethod compile(NormalMethod method)
method - the NormalMethod to compile.
protected abstract void initializeCompiler()
protected void compile()
protected String getCompilerName()
getCompilerName in class TemplateCompilerFramework
|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||