public abstract class AbstractImage extends Object
| Modifier and Type | Class and Description |
|---|---|
static class |
AbstractImage.NativeImageKind |
| Modifier and Type | Field and Description |
|---|---|
protected NativeImageCodeCache |
codeCache |
protected int |
debugInfoSize |
protected List<HostedMethod> |
entryPoints |
protected NativeImageHeap |
heap |
protected ClassLoader |
imageClassLoader |
protected AbstractImage.NativeImageKind |
imageKind |
protected HostedMetaAccess |
metaAccess |
protected NativeLibraries |
nativeLibs |
protected int |
resultingImageSize |
protected HostedUniverse |
universe |
| Modifier | Constructor and Description |
|---|---|
protected |
AbstractImage(AbstractImage.NativeImageKind k,
HostedUniverse universe,
HostedMetaAccess metaAccess,
NativeLibraries nativeLibs,
NativeImageHeap heap,
NativeImageCodeCache codeCache,
List<HostedMethod> entryPoints,
ClassLoader imageClassLoader) |
| Modifier and Type | Method and Description |
|---|---|
abstract void |
build(String imageName,
org.graalvm.compiler.debug.DebugContext debug)
Build the image.
|
static AbstractImage |
create(AbstractImage.NativeImageKind k,
HostedUniverse universe,
HostedMetaAccess metaAccess,
NativeLibraries nativeLibs,
NativeImageHeap heap,
NativeImageCodeCache codeCache,
List<HostedMethod> entryPoints,
ClassLoader classLoader) |
NativeImageCodeCache |
getCodeCache() |
int |
getDebugInfoSize() |
NativeImageHeap |
getHeap() |
abstract long |
getImageHeapSize() |
AbstractImage.NativeImageKind |
getImageKind() |
int |
getImageSize() |
NativeLibraries |
getNativeLibs() |
abstract com.oracle.objectfile.ObjectFile |
getOrCreateDebugObjectFile() |
abstract com.oracle.objectfile.ObjectFile.Section |
getTextSection()
Returns the ObjectFile.Section within the image, if any, whose vaddr defines the image's base
vaddr.
|
abstract String[] |
makeLaunchCommand(AbstractImage.NativeImageKind k,
String imageName,
Path binPath,
Path workPath,
Method method) |
boolean |
requiresCustomDebugRelocation() |
abstract LinkerInvocation |
write(org.graalvm.compiler.debug.DebugContext debug,
Path outputDirectory,
Path tempDirectory,
String imageName,
FeatureImpl.BeforeImageWriteAccessImpl config)
Write the image to the named file.
|
protected final HostedMetaAccess metaAccess
protected final HostedUniverse universe
protected final NativeLibraries nativeLibs
protected final NativeImageHeap heap
protected final ClassLoader imageClassLoader
protected final NativeImageCodeCache codeCache
protected final List<HostedMethod> entryPoints
protected int resultingImageSize
protected int debugInfoSize
protected final AbstractImage.NativeImageKind imageKind
protected AbstractImage(AbstractImage.NativeImageKind k, HostedUniverse universe, HostedMetaAccess metaAccess, NativeLibraries nativeLibs, NativeImageHeap heap, NativeImageCodeCache codeCache, List<HostedMethod> entryPoints, ClassLoader imageClassLoader)
public AbstractImage.NativeImageKind getImageKind()
public int getImageSize()
public int getDebugInfoSize()
public NativeLibraries getNativeLibs()
public abstract void build(String imageName, org.graalvm.compiler.debug.DebugContext debug)
AbstractImage.write(org.graalvm.compiler.debug.DebugContext, java.nio.file.Path, java.nio.file.Path, java.lang.String, com.oracle.svm.hosted.FeatureImpl.BeforeImageWriteAccessImpl). It
typically finalizes content of the object. It does not build debug information.public abstract LinkerInvocation write(org.graalvm.compiler.debug.DebugContext debug, Path outputDirectory, Path tempDirectory, String imageName, FeatureImpl.BeforeImageWriteAccessImpl config)
AbstractImage.getOrCreateDebugObjectFile().
If AbstractImage.getOrCreateDebugObjectFile() is not called, no debug information is written.public abstract com.oracle.objectfile.ObjectFile.Section getTextSection()
public static AbstractImage create(AbstractImage.NativeImageKind k, HostedUniverse universe, HostedMetaAccess metaAccess, NativeLibraries nativeLibs, NativeImageHeap heap, NativeImageCodeCache codeCache, List<HostedMethod> entryPoints, ClassLoader classLoader)
public abstract String[] makeLaunchCommand(AbstractImage.NativeImageKind k, String imageName, Path binPath, Path workPath, Method method)
public NativeImageCodeCache getCodeCache()
public NativeImageHeap getHeap()
public abstract long getImageHeapSize()
public abstract com.oracle.objectfile.ObjectFile getOrCreateDebugObjectFile()
public boolean requiresCustomDebugRelocation()