public abstract class com.oracle.svm.hosted.image.AbstractBootImage
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: com.oracle.svm.hosted.image.AbstractBootImage
super_class: java.lang.Object
{
protected final com.oracle.svm.hosted.meta.HostedMetaAccess metaAccess;
descriptor: Lcom/oracle/svm/hosted/meta/HostedMetaAccess;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final com.oracle.svm.hosted.meta.HostedUniverse universe;
descriptor: Lcom/oracle/svm/hosted/meta/HostedUniverse;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final com.oracle.svm.hosted.c.NativeLibraries nativeLibs;
descriptor: Lcom/oracle/svm/hosted/c/NativeLibraries;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final com.oracle.svm.hosted.image.NativeImageHeap heap;
descriptor: Lcom/oracle/svm/hosted/image/NativeImageHeap;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final java.lang.ClassLoader imageClassLoader;
descriptor: Ljava/lang/ClassLoader;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final com.oracle.svm.hosted.image.NativeImageCodeCache codeCache;
descriptor: Lcom/oracle/svm/hosted/image/NativeImageCodeCache;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final java.util.List<com.oracle.svm.hosted.meta.HostedMethod> entryPoints;
descriptor: Ljava/util/List;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Signature: Ljava/util/List<Lcom/oracle/svm/hosted/meta/HostedMethod;>;
protected int resultingImageSize;
descriptor: I
flags: (0x0004) ACC_PROTECTED
protected final com.oracle.svm.hosted.image.AbstractBootImage$NativeImageKind kind;
descriptor: Lcom/oracle/svm/hosted/image/AbstractBootImage$NativeImageKind;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
private static volatile int[] $SWITCH_TABLE$com$oracle$svm$hosted$image$AbstractBootImage$NativeImageKind;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
protected void <init>(com.oracle.svm.hosted.image.AbstractBootImage$NativeImageKind, com.oracle.svm.hosted.meta.HostedUniverse, com.oracle.svm.hosted.meta.HostedMetaAccess, com.oracle.svm.hosted.c.NativeLibraries, com.oracle.svm.hosted.image.NativeImageHeap, com.oracle.svm.hosted.image.NativeImageCodeCache, java.util.List<com.oracle.svm.hosted.meta.HostedMethod>, java.lang.ClassLoader);
descriptor: (Lcom/oracle/svm/hosted/image/AbstractBootImage$NativeImageKind;Lcom/oracle/svm/hosted/meta/HostedUniverse;Lcom/oracle/svm/hosted/meta/HostedMetaAccess;Lcom/oracle/svm/hosted/c/NativeLibraries;Lcom/oracle/svm/hosted/image/NativeImageHeap;Lcom/oracle/svm/hosted/image/NativeImageCodeCache;Ljava/util/List;Ljava/lang/ClassLoader;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=9, args_size=9
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield com.oracle.svm.hosted.image.AbstractBootImage.kind:Lcom/oracle/svm/hosted/image/AbstractBootImage$NativeImageKind;
2: aload 0
aload 2
putfield com.oracle.svm.hosted.image.AbstractBootImage.universe:Lcom/oracle/svm/hosted/meta/HostedUniverse;
3: aload 0
aload 3
putfield com.oracle.svm.hosted.image.AbstractBootImage.metaAccess:Lcom/oracle/svm/hosted/meta/HostedMetaAccess;
4: aload 0
aload 4
putfield com.oracle.svm.hosted.image.AbstractBootImage.nativeLibs:Lcom/oracle/svm/hosted/c/NativeLibraries;
5: aload 0
aload 5
putfield com.oracle.svm.hosted.image.AbstractBootImage.heap:Lcom/oracle/svm/hosted/image/NativeImageHeap;
6: aload 0
aload 6
putfield com.oracle.svm.hosted.image.AbstractBootImage.codeCache:Lcom/oracle/svm/hosted/image/NativeImageCodeCache;
7: aload 0
aload 7
putfield com.oracle.svm.hosted.image.AbstractBootImage.entryPoints:Ljava/util/List;
8: aload 0
aload 8
putfield com.oracle.svm.hosted.image.AbstractBootImage.imageClassLoader:Ljava/lang/ClassLoader;
9: return
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/oracle/svm/hosted/image/AbstractBootImage;
0 10 1 k Lcom/oracle/svm/hosted/image/AbstractBootImage$NativeImageKind;
0 10 2 universe Lcom/oracle/svm/hosted/meta/HostedUniverse;
0 10 3 metaAccess Lcom/oracle/svm/hosted/meta/HostedMetaAccess;
0 10 4 nativeLibs Lcom/oracle/svm/hosted/c/NativeLibraries;
0 10 5 heap Lcom/oracle/svm/hosted/image/NativeImageHeap;
0 10 6 codeCache Lcom/oracle/svm/hosted/image/NativeImageCodeCache;
0 10 7 entryPoints Ljava/util/List<Lcom/oracle/svm/hosted/meta/HostedMethod;>;
0 10 8 imageClassLoader Ljava/lang/ClassLoader;
Signature: (Lcom/oracle/svm/hosted/image/AbstractBootImage$NativeImageKind;Lcom/oracle/svm/hosted/meta/HostedUniverse;Lcom/oracle/svm/hosted/meta/HostedMetaAccess;Lcom/oracle/svm/hosted/c/NativeLibraries;Lcom/oracle/svm/hosted/image/NativeImageHeap;Lcom/oracle/svm/hosted/image/NativeImageCodeCache;Ljava/util/List<Lcom/oracle/svm/hosted/meta/HostedMethod;>;Ljava/lang/ClassLoader;)V
MethodParameters:
Name Flags
k
universe
metaAccess
nativeLibs
heap
codeCache
entryPoints
imageClassLoader
public com.oracle.svm.hosted.image.AbstractBootImage$NativeImageKind getBootImageKind();
descriptor: ()Lcom/oracle/svm/hosted/image/AbstractBootImage$NativeImageKind;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.svm.hosted.image.AbstractBootImage.kind:Lcom/oracle/svm/hosted/image/AbstractBootImage$NativeImageKind;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/svm/hosted/image/AbstractBootImage;
public int getImageSize();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.svm.hosted.image.AbstractBootImage.resultingImageSize:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/svm/hosted/image/AbstractBootImage;
public com.oracle.svm.hosted.c.NativeLibraries getNativeLibs();
descriptor: ()Lcom/oracle/svm/hosted/c/NativeLibraries;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.svm.hosted.image.AbstractBootImage.nativeLibs:Lcom/oracle/svm/hosted/c/NativeLibraries;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/svm/hosted/image/AbstractBootImage;
public abstract void build(org.graalvm.compiler.debug.DebugContext);
descriptor: (Lorg/graalvm/compiler/debug/DebugContext;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
debug
public abstract com.oracle.svm.core.LinkerInvocation write(org.graalvm.compiler.debug.DebugContext, java.nio.file.Path, java.nio.file.Path, java.lang.String, com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl);
descriptor: (Lorg/graalvm/compiler/debug/DebugContext;Ljava/nio/file/Path;Ljava/nio/file/Path;Ljava/lang/String;Lcom/oracle/svm/hosted/FeatureImpl$BeforeImageWriteAccessImpl;)Lcom/oracle/svm/core/LinkerInvocation;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
debug
outputDirectory
tempDirectory
imageName
config
public abstract com.oracle.objectfile.ObjectFile$Section getTextSection();
descriptor: ()Lcom/oracle/objectfile/ObjectFile$Section;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public static com.oracle.svm.hosted.image.AbstractBootImage create(com.oracle.svm.hosted.image.AbstractBootImage$NativeImageKind, com.oracle.svm.hosted.meta.HostedUniverse, com.oracle.svm.hosted.meta.HostedMetaAccess, com.oracle.svm.hosted.c.NativeLibraries, com.oracle.svm.hosted.image.NativeImageHeap, com.oracle.svm.hosted.image.NativeImageCodeCache, java.util.List<com.oracle.svm.hosted.meta.HostedMethod>, java.lang.ClassLoader);
descriptor: (Lcom/oracle/svm/hosted/image/AbstractBootImage$NativeImageKind;Lcom/oracle/svm/hosted/meta/HostedUniverse;Lcom/oracle/svm/hosted/meta/HostedMetaAccess;Lcom/oracle/svm/hosted/c/NativeLibraries;Lcom/oracle/svm/hosted/image/NativeImageHeap;Lcom/oracle/svm/hosted/image/NativeImageCodeCache;Ljava/util/List;Ljava/lang/ClassLoader;)Lcom/oracle/svm/hosted/image/AbstractBootImage;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=10, locals=8, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: invokestatic com.oracle.svm.hosted.image.AbstractBootImage.$SWITCH_TABLE$com$oracle$svm$hosted$image$AbstractBootImage$NativeImageKind:()[I
aload 0
invokevirtual com.oracle.svm.hosted.image.AbstractBootImage$NativeImageKind.ordinal:()I
iaload
tableswitch { // 1 - 1
1: 1
default: 2
}
1: StackMap locals:
StackMap stack:
new com.oracle.svm.hosted.image.SharedLibraryViaCCBootImage
dup
aload 1
aload 2
aload 3
aload 4
aload 5
aload 6
aload 7
invokespecial com.oracle.svm.hosted.image.SharedLibraryViaCCBootImage.<init>:(Lcom/oracle/svm/hosted/meta/HostedUniverse;Lcom/oracle/svm/hosted/meta/HostedMetaAccess;Lcom/oracle/svm/hosted/c/NativeLibraries;Lcom/oracle/svm/hosted/image/NativeImageHeap;Lcom/oracle/svm/hosted/image/NativeImageCodeCache;Ljava/util/List;Ljava/lang/ClassLoader;)V
areturn
2: StackMap locals:
StackMap stack:
new com.oracle.svm.hosted.image.ExecutableViaCCBootImage
dup
aload 0
aload 1
aload 2
aload 3
aload 4
aload 5
aload 6
aload 7
invokespecial com.oracle.svm.hosted.image.ExecutableViaCCBootImage.<init>:(Lcom/oracle/svm/hosted/image/AbstractBootImage$NativeImageKind;Lcom/oracle/svm/hosted/meta/HostedUniverse;Lcom/oracle/svm/hosted/meta/HostedMetaAccess;Lcom/oracle/svm/hosted/c/NativeLibraries;Lcom/oracle/svm/hosted/image/NativeImageHeap;Lcom/oracle/svm/hosted/image/NativeImageCodeCache;Ljava/util/List;Ljava/lang/ClassLoader;)V
areturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 k Lcom/oracle/svm/hosted/image/AbstractBootImage$NativeImageKind;
0 3 1 universe Lcom/oracle/svm/hosted/meta/HostedUniverse;
0 3 2 metaAccess Lcom/oracle/svm/hosted/meta/HostedMetaAccess;
0 3 3 nativeLibs Lcom/oracle/svm/hosted/c/NativeLibraries;
0 3 4 heap Lcom/oracle/svm/hosted/image/NativeImageHeap;
0 3 5 codeCache Lcom/oracle/svm/hosted/image/NativeImageCodeCache;
0 3 6 entryPoints Ljava/util/List<Lcom/oracle/svm/hosted/meta/HostedMethod;>;
0 3 7 classLoader Ljava/lang/ClassLoader;
Signature: (Lcom/oracle/svm/hosted/image/AbstractBootImage$NativeImageKind;Lcom/oracle/svm/hosted/meta/HostedUniverse;Lcom/oracle/svm/hosted/meta/HostedMetaAccess;Lcom/oracle/svm/hosted/c/NativeLibraries;Lcom/oracle/svm/hosted/image/NativeImageHeap;Lcom/oracle/svm/hosted/image/NativeImageCodeCache;Ljava/util/List<Lcom/oracle/svm/hosted/meta/HostedMethod;>;Ljava/lang/ClassLoader;)Lcom/oracle/svm/hosted/image/AbstractBootImage;
MethodParameters:
Name Flags
k
universe
metaAccess
nativeLibs
heap
codeCache
entryPoints
classLoader
public abstract java.lang.String[] makeLaunchCommand(com.oracle.svm.hosted.image.AbstractBootImage$NativeImageKind, java.lang.String, java.nio.file.Path, java.nio.file.Path, java.lang.reflect.Method);
descriptor: (Lcom/oracle/svm/hosted/image/AbstractBootImage$NativeImageKind;Ljava/lang/String;Ljava/nio/file/Path;Ljava/nio/file/Path;Ljava/lang/reflect/Method;)[Ljava/lang/String;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
k
imageName
binPath
workPath
method
public com.oracle.svm.hosted.image.NativeImageCodeCache getCodeCache();
descriptor: ()Lcom/oracle/svm/hosted/image/NativeImageCodeCache;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.svm.hosted.image.AbstractBootImage.codeCache:Lcom/oracle/svm/hosted/image/NativeImageCodeCache;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/svm/hosted/image/AbstractBootImage;
public com.oracle.svm.hosted.image.NativeImageHeap getHeap();
descriptor: ()Lcom/oracle/svm/hosted/image/NativeImageHeap;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.svm.hosted.image.AbstractBootImage.heap:Lcom/oracle/svm/hosted/image/NativeImageHeap;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/svm/hosted/image/AbstractBootImage;
public abstract com.oracle.objectfile.ObjectFile getOrCreateDebugObjectFile();
descriptor: ()Lcom/oracle/objectfile/ObjectFile;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public boolean requiresCustomDebugRelocation();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/svm/hosted/image/AbstractBootImage;
public com.oracle.svm.hosted.image.AbstractBootImage$NativeImageKind getKind();
descriptor: ()Lcom/oracle/svm/hosted/image/AbstractBootImage$NativeImageKind;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.svm.hosted.image.AbstractBootImage.kind:Lcom/oracle/svm/hosted/image/AbstractBootImage$NativeImageKind;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/svm/hosted/image/AbstractBootImage;
static int[] $SWITCH_TABLE$com$oracle$svm$hosted$image$AbstractBootImage$NativeImageKind();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic com.oracle.svm.hosted.image.AbstractBootImage.$SWITCH_TABLE$com$oracle$svm$hosted$image$AbstractBootImage$NativeImageKind:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic com.oracle.svm.hosted.image.AbstractBootImage$NativeImageKind.values:()[Lcom/oracle/svm/hosted/image/AbstractBootImage$NativeImageKind;
arraylength
newarray 10
astore 0
2: aload 0
getstatic com.oracle.svm.hosted.image.AbstractBootImage$NativeImageKind.EXECUTABLE:Lcom/oracle/svm/hosted/image/AbstractBootImage$NativeImageKind;
invokevirtual com.oracle.svm.hosted.image.AbstractBootImage$NativeImageKind.ordinal:()I
iconst_2
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic com.oracle.svm.hosted.image.AbstractBootImage$NativeImageKind.SHARED_LIBRARY:Lcom/oracle/svm/hosted/image/AbstractBootImage$NativeImageKind;
invokevirtual com.oracle.svm.hosted.image.AbstractBootImage$NativeImageKind.ordinal:()I
iconst_1
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic com.oracle.svm.hosted.image.AbstractBootImage$NativeImageKind.STATIC_EXECUTABLE:Lcom/oracle/svm/hosted/image/AbstractBootImage$NativeImageKind;
invokevirtual com.oracle.svm.hosted.image.AbstractBootImage$NativeImageKind.ordinal:()I
iconst_3
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
dup
putstatic com.oracle.svm.hosted.image.AbstractBootImage.$SWITCH_TABLE$com$oracle$svm$hosted$image$AbstractBootImage$NativeImageKind:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
}
SourceFile: "AbstractBootImage.java"
NestMembers:
com.oracle.svm.hosted.image.AbstractBootImage$NativeImageKind com.oracle.svm.hosted.image.AbstractBootImage$NativeImageKind$1
InnerClasses:
public abstract Section = com.oracle.objectfile.ObjectFile$Section of com.oracle.objectfile.ObjectFile
public BeforeImageWriteAccessImpl = com.oracle.svm.hosted.FeatureImpl$BeforeImageWriteAccessImpl of com.oracle.svm.hosted.FeatureImpl
public NativeImageKind = com.oracle.svm.hosted.image.AbstractBootImage$NativeImageKind of com.oracle.svm.hosted.image.AbstractBootImage