public abstract class NativeImageCodeCache extends Object
Modifier and Type | Class and Description |
---|---|
static class |
NativeImageCodeCache.Options |
Modifier and Type | Field and Description |
---|---|
protected Map<HostedMethod,org.graalvm.compiler.code.CompilationResult> |
compilations |
protected NavigableMap<Integer,org.graalvm.compiler.code.CompilationResult> |
compilationsByStart |
protected org.graalvm.nativeimage.Platform |
targetPlatform |
Constructor and Description |
---|
NativeImageCodeCache(Map<HostedMethod,org.graalvm.compiler.code.CompilationResult> compilations,
NativeImageHeap imageHeap) |
NativeImageCodeCache(Map<HostedMethod,org.graalvm.compiler.code.CompilationResult> compilations,
NativeImageHeap imageHeap,
org.graalvm.nativeimage.Platform targetPlatform) |
Modifier and Type | Method and Description |
---|---|
void |
addConstantsToHeap() |
void |
buildRuntimeMetadata(org.graalvm.nativeimage.c.function.CFunctionPointer firstMethod,
org.graalvm.word.UnsignedWord codeSize) |
int |
getAlignedConstantsSize() |
Path[] |
getCCInputFiles(Path tempDirectory,
String imageName) |
abstract int |
getCodeCacheSize() |
org.graalvm.compiler.code.CompilationResult |
getCompilationAtOffset(int offset) |
Map<HostedMethod,org.graalvm.compiler.code.CompilationResult> |
getCompilations() |
protected int |
getConstantsSize() |
org.graalvm.compiler.code.CompilationResult |
getFirstCompilation() |
abstract List<com.oracle.objectfile.ObjectFile.Symbol> |
getSymbols(com.oracle.objectfile.ObjectFile objectFile,
boolean onlyGlobal) |
abstract NativeBootImage.NativeTextSectionImpl |
getTextSectionImpl(RelocatableBuffer buffer,
com.oracle.objectfile.ObjectFile objectFile,
NativeImageCodeCache codeCache) |
void |
layoutConstants() |
abstract void |
layoutMethods(org.graalvm.compiler.debug.DebugContext debug,
String imageName,
com.oracle.graal.pointsto.BigBang bb,
ForkJoinPool threadPool) |
abstract void |
patchMethods(org.graalvm.compiler.debug.DebugContext debug,
RelocatableBuffer relocs,
com.oracle.objectfile.ObjectFile objectFile) |
void |
printCompilationResults() |
abstract void |
writeCode(RelocatableBuffer buffer) |
void |
writeConstants(NativeImageHeapWriter writer,
RelocatableBuffer buffer) |
protected final Map<HostedMethod,org.graalvm.compiler.code.CompilationResult> compilations
protected final NavigableMap<Integer,org.graalvm.compiler.code.CompilationResult> compilationsByStart
protected final org.graalvm.nativeimage.Platform targetPlatform
public NativeImageCodeCache(Map<HostedMethod,org.graalvm.compiler.code.CompilationResult> compilations, NativeImageHeap imageHeap)
public NativeImageCodeCache(Map<HostedMethod,org.graalvm.compiler.code.CompilationResult> compilations, NativeImageHeap imageHeap, org.graalvm.nativeimage.Platform targetPlatform)
public abstract int getCodeCacheSize()
public org.graalvm.compiler.code.CompilationResult getCompilationAtOffset(int offset)
public org.graalvm.compiler.code.CompilationResult getFirstCompilation()
public abstract void layoutMethods(org.graalvm.compiler.debug.DebugContext debug, String imageName, com.oracle.graal.pointsto.BigBang bb, ForkJoinPool threadPool)
public void layoutConstants()
public void addConstantsToHeap()
protected int getConstantsSize()
public int getAlignedConstantsSize()
public void buildRuntimeMetadata(org.graalvm.nativeimage.c.function.CFunctionPointer firstMethod, org.graalvm.word.UnsignedWord codeSize)
public abstract void patchMethods(org.graalvm.compiler.debug.DebugContext debug, RelocatableBuffer relocs, com.oracle.objectfile.ObjectFile objectFile)
public abstract void writeCode(RelocatableBuffer buffer)
public void writeConstants(NativeImageHeapWriter writer, RelocatableBuffer buffer)
public abstract NativeBootImage.NativeTextSectionImpl getTextSectionImpl(RelocatableBuffer buffer, com.oracle.objectfile.ObjectFile objectFile, NativeImageCodeCache codeCache)
public abstract List<com.oracle.objectfile.ObjectFile.Symbol> getSymbols(com.oracle.objectfile.ObjectFile objectFile, boolean onlyGlobal)
public Map<HostedMethod,org.graalvm.compiler.code.CompilationResult> getCompilations()
public void printCompilationResults()