public class com.oracle.svm.core.Isolates
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.oracle.svm.core.Isolates
super_class: java.lang.Object
{
public static final java.lang.String IMAGE_HEAP_BEGIN_SYMBOL_NAME;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "__svm_heap_begin"
public static final java.lang.String IMAGE_HEAP_END_SYMBOL_NAME;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "__svm_heap_end"
public static final java.lang.String IMAGE_HEAP_RELOCATABLE_BEGIN_SYMBOL_NAME;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "__svm_heap_relocatable_begin"
public static final java.lang.String IMAGE_HEAP_RELOCATABLE_END_SYMBOL_NAME;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "__svm_heap_relocatable_end"
public static final java.lang.String IMAGE_HEAP_A_RELOCATABLE_POINTER_SYMBOL_NAME;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "__svm_a_relocatable_pointer"
public static final java.lang.String IMAGE_HEAP_WRITABLE_BEGIN_SYMBOL_NAME;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "__svm_heap_writable_begin"
public static final java.lang.String IMAGE_HEAP_WRITABLE_END_SYMBOL_NAME;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "__svm_heap_writable_end"
public static final com.oracle.svm.core.c.CGlobalData<org.graalvm.compiler.word.Word> IMAGE_HEAP_BEGIN;
descriptor: Lcom/oracle/svm/core/c/CGlobalData;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
Signature: Lcom/oracle/svm/core/c/CGlobalData<Lorg/graalvm/compiler/word/Word;>;
public static final com.oracle.svm.core.c.CGlobalData<org.graalvm.compiler.word.Word> IMAGE_HEAP_END;
descriptor: Lcom/oracle/svm/core/c/CGlobalData;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
Signature: Lcom/oracle/svm/core/c/CGlobalData<Lorg/graalvm/compiler/word/Word;>;
public static final com.oracle.svm.core.c.CGlobalData<org.graalvm.compiler.word.Word> IMAGE_HEAP_RELOCATABLE_BEGIN;
descriptor: Lcom/oracle/svm/core/c/CGlobalData;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
Signature: Lcom/oracle/svm/core/c/CGlobalData<Lorg/graalvm/compiler/word/Word;>;
public static final com.oracle.svm.core.c.CGlobalData<org.graalvm.compiler.word.Word> IMAGE_HEAP_RELOCATABLE_END;
descriptor: Lcom/oracle/svm/core/c/CGlobalData;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
Signature: Lcom/oracle/svm/core/c/CGlobalData<Lorg/graalvm/compiler/word/Word;>;
public static final com.oracle.svm.core.c.CGlobalData<org.graalvm.compiler.word.Word> IMAGE_HEAP_A_RELOCATABLE_POINTER;
descriptor: Lcom/oracle/svm/core/c/CGlobalData;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
Signature: Lcom/oracle/svm/core/c/CGlobalData<Lorg/graalvm/compiler/word/Word;>;
public static final com.oracle.svm.core.c.CGlobalData<org.graalvm.compiler.word.Word> IMAGE_HEAP_WRITABLE_BEGIN;
descriptor: Lcom/oracle/svm/core/c/CGlobalData;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
Signature: Lcom/oracle/svm/core/c/CGlobalData<Lorg/graalvm/compiler/word/Word;>;
public static final com.oracle.svm.core.c.CGlobalData<org.graalvm.compiler.word.Word> IMAGE_HEAP_WRITABLE_END;
descriptor: Lcom/oracle/svm/core/c/CGlobalData;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
Signature: Lcom/oracle/svm/core/c/CGlobalData<Lorg/graalvm/compiler/word/Word;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc "__svm_heap_begin"
invokestatic com.oracle.svm.core.c.CGlobalDataFactory.forSymbol:(Ljava/lang/String;)Lcom/oracle/svm/core/c/CGlobalData;
putstatic com.oracle.svm.core.Isolates.IMAGE_HEAP_BEGIN:Lcom/oracle/svm/core/c/CGlobalData;
1: ldc "__svm_heap_end"
invokestatic com.oracle.svm.core.c.CGlobalDataFactory.forSymbol:(Ljava/lang/String;)Lcom/oracle/svm/core/c/CGlobalData;
putstatic com.oracle.svm.core.Isolates.IMAGE_HEAP_END:Lcom/oracle/svm/core/c/CGlobalData;
2: ldc "__svm_heap_relocatable_begin"
invokestatic com.oracle.svm.core.c.CGlobalDataFactory.forSymbol:(Ljava/lang/String;)Lcom/oracle/svm/core/c/CGlobalData;
putstatic com.oracle.svm.core.Isolates.IMAGE_HEAP_RELOCATABLE_BEGIN:Lcom/oracle/svm/core/c/CGlobalData;
3: ldc "__svm_heap_relocatable_end"
invokestatic com.oracle.svm.core.c.CGlobalDataFactory.forSymbol:(Ljava/lang/String;)Lcom/oracle/svm/core/c/CGlobalData;
putstatic com.oracle.svm.core.Isolates.IMAGE_HEAP_RELOCATABLE_END:Lcom/oracle/svm/core/c/CGlobalData;
4: ldc "__svm_a_relocatable_pointer"
invokestatic com.oracle.svm.core.c.CGlobalDataFactory.forSymbol:(Ljava/lang/String;)Lcom/oracle/svm/core/c/CGlobalData;
putstatic com.oracle.svm.core.Isolates.IMAGE_HEAP_A_RELOCATABLE_POINTER:Lcom/oracle/svm/core/c/CGlobalData;
5: ldc "__svm_heap_writable_begin"
invokestatic com.oracle.svm.core.c.CGlobalDataFactory.forSymbol:(Ljava/lang/String;)Lcom/oracle/svm/core/c/CGlobalData;
putstatic com.oracle.svm.core.Isolates.IMAGE_HEAP_WRITABLE_BEGIN:Lcom/oracle/svm/core/c/CGlobalData;
6: ldc "__svm_heap_writable_end"
invokestatic com.oracle.svm.core.c.CGlobalDataFactory.forSymbol:(Ljava/lang/String;)Lcom/oracle/svm/core/c/CGlobalData;
putstatic com.oracle.svm.core.Isolates.IMAGE_HEAP_WRITABLE_END:Lcom/oracle/svm/core/c/CGlobalData;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/svm/core/Isolates;
public static int checkSanity(org.graalvm.nativeimage.Isolate);
descriptor: (Lorg/graalvm/nativeimage/Isolate;)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic com.oracle.svm.core.SubstrateOptions.SpawnIsolates:Lcom/oracle/svm/core/option/HostedOptionKey;
invokevirtual com.oracle.svm.core.option.HostedOptionKey.getValue:()Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ifeq 4
1: aload 0
invokeinterface org.graalvm.nativeimage.Isolate.isNull:()Z
ifeq 2
iconst_2
goto 3
StackMap locals:
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: ireturn
4: StackMap locals:
StackMap stack:
aload 0
getstatic com.oracle.svm.core.c.function.CEntryPointSetup.SINGLE_ISOLATE_SENTINEL:Lorg/graalvm/compiler/word/Word;
invokeinterface org.graalvm.nativeimage.Isolate.equal:(Lorg/graalvm/word/ComparableWord;)Z
ifeq 5
iconst_0
goto 6
StackMap locals:
StackMap stack:
5: iconst_5
StackMap locals:
StackMap stack: int
6: ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 isolate Lorg/graalvm/nativeimage/Isolate;
RuntimeVisibleAnnotations:
com.oracle.svm.core.annotate.Uninterruptible(reason = "Thread state not yet set up.")
MethodParameters:
Name Flags
isolate
public static int create(org.graalvm.nativeimage.c.type.WordPointer, com.oracle.svm.core.c.function.CEntryPointCreateIsolateParameters);
descriptor: (Lorg/graalvm/nativeimage/c/type/WordPointer;Lcom/oracle/svm/core/c/function/CEntryPointCreateIsolateParameters;)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.svm.core.os.CommittedMemoryProvider.get:()Lcom/oracle/svm/core/os/CommittedMemoryProvider;
aload 0
aload 1
invokeinterface com.oracle.svm.core.os.CommittedMemoryProvider.initialize:(Lorg/graalvm/nativeimage/c/type/WordPointer;Lcom/oracle/svm/core/c/function/CEntryPointCreateIsolateParameters;)I
istore 2
start local 2 1: iload 2
ifeq 3
2: iload 2
ireturn
3: StackMap locals: int
StackMap stack:
aload 0
invokeinterface org.graalvm.nativeimage.c.type.WordPointer.read:()Lorg/graalvm/word/WordBase;
checkcast org.graalvm.nativeimage.Isolate
invokestatic com.oracle.svm.core.Isolates.checkSanity:(Lorg/graalvm/nativeimage/Isolate;)I
istore 2
4: iload 2
ifeq 7
5: aload 0
invokestatic org.graalvm.word.WordFactory.nullPointer:()Lorg/graalvm/word/PointerBase;
invokeinterface org.graalvm.nativeimage.c.type.WordPointer.write:(Lorg/graalvm/word/WordBase;)V
6: iload 2
ireturn
7: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 isolatePointer Lorg/graalvm/nativeimage/c/type/WordPointer;
0 8 1 parameters Lcom/oracle/svm/core/c/function/CEntryPointCreateIsolateParameters;
1 8 2 result I
RuntimeVisibleAnnotations:
com.oracle.svm.core.annotate.Uninterruptible(reason = "Thread state not yet set up.")
MethodParameters:
Name Flags
isolatePointer
parameters
public static org.graalvm.word.PointerBase getHeapBase(org.graalvm.nativeimage.Isolate);
descriptor: (Lorg/graalvm/nativeimage/Isolate;)Lorg/graalvm/word/PointerBase;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: getstatic com.oracle.svm.core.SubstrateOptions.SpawnIsolates:Lcom/oracle/svm/core/option/HostedOptionKey;
invokevirtual com.oracle.svm.core.option.HostedOptionKey.getValue:()Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ifne 2
1: getstatic com.oracle.svm.core.Isolates.IMAGE_HEAP_BEGIN:Lcom/oracle/svm/core/c/CGlobalData;
invokevirtual com.oracle.svm.core.c.CGlobalData.get:()Lorg/graalvm/word/PointerBase;
areturn
2: StackMap locals:
StackMap stack:
aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 isolate Lorg/graalvm/nativeimage/Isolate;
RuntimeVisibleAnnotations:
com.oracle.svm.core.annotate.Uninterruptible(reason = "Thread state not yet set up.", mayBeInlined = true)
MethodParameters:
Name Flags
isolate
public static int tearDownCurrent();
descriptor: ()I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: invokestatic com.oracle.svm.core.Isolates.freeUnmanagedMemory:()V
1: invokestatic com.oracle.svm.core.heap.Heap.getHeap:()Lcom/oracle/svm/core/heap/Heap;
invokevirtual com.oracle.svm.core.heap.Heap.tearDown:()Z
pop
2: invokestatic com.oracle.svm.core.os.CommittedMemoryProvider.get:()Lcom/oracle/svm/core/os/CommittedMemoryProvider;
invokeinterface com.oracle.svm.core.os.CommittedMemoryProvider.tearDown:()I
ireturn
LocalVariableTable:
Start End Slot Name Signature
RuntimeVisibleAnnotations:
com.oracle.svm.core.annotate.Uninterruptible(reason = "Tear-down in progress.")
private static void freeUnmanagedMemory();
descriptor: ()V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=0, locals=0, args_size=0
0: invokestatic com.oracle.svm.core.code.CodeInfoTable.tearDown:()V
1: invokestatic com.oracle.svm.core.c.NonmovableArrays.tearDown:()V
2: return
LocalVariableTable:
Start End Slot Name Signature
RuntimeVisibleAnnotations:
com.oracle.svm.core.annotate.Uninterruptible(reason = "Called from uninterruptible code.", mayBeInlined = true)
}
SourceFile: "Isolates.java"