abstract class com.oracle.svm.core.genscavenge.MemoryWalkerAccessBase implements com.oracle.svm.core.MemoryWalker$NativeImageHeapRegionAccess<com.oracle.svm.core.genscavenge.ImageHeapInfo>
minor version: 0
major version: 59
flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
this_class: com.oracle.svm.core.genscavenge.MemoryWalkerAccessBase
super_class: java.lang.Object
{
private final java.lang.String regionName;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final boolean containsReferences;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final boolean isWritable;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final boolean hasHugeObjects;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
void <init>(java.lang.String, boolean, boolean, boolean);
descriptor: (Ljava/lang/String;ZZZ)V
flags: (0x0000)
Code:
stack=2, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield com.oracle.svm.core.genscavenge.MemoryWalkerAccessBase.regionName:Ljava/lang/String;
2: aload 0
iload 2
putfield com.oracle.svm.core.genscavenge.MemoryWalkerAccessBase.containsReferences:Z
3: aload 0
iload 3
putfield com.oracle.svm.core.genscavenge.MemoryWalkerAccessBase.isWritable:Z
4: aload 0
iload 4
putfield com.oracle.svm.core.genscavenge.MemoryWalkerAccessBase.hasHugeObjects:Z
5: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/oracle/svm/core/genscavenge/MemoryWalkerAccessBase;
0 6 1 regionName Ljava/lang/String;
0 6 2 containsReferences Z
0 6 3 isWritable Z
0 6 4 hasHugeObjects Z
RuntimeVisibleAnnotations:
org.graalvm.nativeimage.Platforms(value = {Lorg/graalvm/nativeimage/Platform$HOSTED_ONLY;})
MethodParameters:
Name Flags
regionName
containsReferences
isWritable
hasHugeObjects
public org.graalvm.word.UnsignedWord getStart(com.oracle.svm.core.genscavenge.ImageHeapInfo);
descriptor: (Lcom/oracle/svm/core/genscavenge/ImageHeapInfo;)Lorg/graalvm/word/UnsignedWord;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual com.oracle.svm.core.genscavenge.MemoryWalkerAccessBase.getFirstObject:(Lcom/oracle/svm/core/genscavenge/ImageHeapInfo;)Ljava/lang/Object;
invokestatic org.graalvm.compiler.word.Word.objectToUntrackedPointer:(Ljava/lang/Object;)Lorg/graalvm/compiler/word/Word;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/svm/core/genscavenge/MemoryWalkerAccessBase;
0 1 1 info Lcom/oracle/svm/core/genscavenge/ImageHeapInfo;
MethodParameters:
Name Flags
info
public org.graalvm.word.UnsignedWord getSize(com.oracle.svm.core.genscavenge.ImageHeapInfo);
descriptor: (Lcom/oracle/svm/core/genscavenge/ImageHeapInfo;)Lorg/graalvm/word/UnsignedWord;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual com.oracle.svm.core.genscavenge.MemoryWalkerAccessBase.getFirstObject:(Lcom/oracle/svm/core/genscavenge/ImageHeapInfo;)Ljava/lang/Object;
invokestatic org.graalvm.compiler.word.Word.objectToUntrackedPointer:(Ljava/lang/Object;)Lorg/graalvm/compiler/word/Word;
astore 2
start local 2 1: aload 2
invokeinterface org.graalvm.word.Pointer.isNull:()Z
ifeq 3
2: invokestatic org.graalvm.word.WordFactory.zero:()Lorg/graalvm/word/WordBase;
checkcast org.graalvm.word.UnsignedWord
areturn
3: StackMap locals: org.graalvm.word.Pointer
StackMap stack:
aload 0
aload 1
invokevirtual com.oracle.svm.core.genscavenge.MemoryWalkerAccessBase.getLastObject:(Lcom/oracle/svm/core/genscavenge/ImageHeapInfo;)Ljava/lang/Object;
invokestatic com.oracle.svm.core.hub.LayoutEncoding.getObjectEnd:(Ljava/lang/Object;)Lorg/graalvm/word/Pointer;
astore 3
start local 3 4: aload 3
aload 2
invokeinterface org.graalvm.word.Pointer.subtract:(Lorg/graalvm/word/UnsignedWord;)Lorg/graalvm/word/Pointer;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/svm/core/genscavenge/MemoryWalkerAccessBase;
0 5 1 info Lcom/oracle/svm/core/genscavenge/ImageHeapInfo;
1 5 2 firstStart Lorg/graalvm/word/Pointer;
4 5 3 lastEnd Lorg/graalvm/word/Pointer;
MethodParameters:
Name Flags
info
public java.lang.String getRegionName(com.oracle.svm.core.genscavenge.ImageHeapInfo);
descriptor: (Lcom/oracle/svm/core/genscavenge/ImageHeapInfo;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.svm.core.genscavenge.MemoryWalkerAccessBase.regionName:Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/svm/core/genscavenge/MemoryWalkerAccessBase;
0 1 1 region Lcom/oracle/svm/core/genscavenge/ImageHeapInfo;
MethodParameters:
Name Flags
region
public boolean containsReferences(com.oracle.svm.core.genscavenge.ImageHeapInfo);
descriptor: (Lcom/oracle/svm/core/genscavenge/ImageHeapInfo;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.svm.core.genscavenge.MemoryWalkerAccessBase.containsReferences:Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/svm/core/genscavenge/MemoryWalkerAccessBase;
0 1 1 region Lcom/oracle/svm/core/genscavenge/ImageHeapInfo;
MethodParameters:
Name Flags
region
public boolean isWritable(com.oracle.svm.core.genscavenge.ImageHeapInfo);
descriptor: (Lcom/oracle/svm/core/genscavenge/ImageHeapInfo;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.svm.core.genscavenge.MemoryWalkerAccessBase.isWritable:Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/svm/core/genscavenge/MemoryWalkerAccessBase;
0 1 1 region Lcom/oracle/svm/core/genscavenge/ImageHeapInfo;
MethodParameters:
Name Flags
region
public final boolean visitObjects(com.oracle.svm.core.genscavenge.ImageHeapInfo, com.oracle.svm.core.heap.ObjectVisitor);
descriptor: (Lcom/oracle/svm/core/genscavenge/ImageHeapInfo;Lcom/oracle/svm/core/heap/ObjectVisitor;)Z
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.oracle.svm.core.genscavenge.MemoryWalkerAccessBase.hasHugeObjects:Z
ifeq 1
iconst_0
goto 2
StackMap locals:
StackMap stack:
1: iconst_1
StackMap locals:
StackMap stack: int
2: istore 3
start local 3 3: aload 0
aload 1
invokevirtual com.oracle.svm.core.genscavenge.MemoryWalkerAccessBase.getFirstObject:(Lcom/oracle/svm/core/genscavenge/ImageHeapInfo;)Ljava/lang/Object;
aload 0
aload 1
invokevirtual com.oracle.svm.core.genscavenge.MemoryWalkerAccessBase.getLastObject:(Lcom/oracle/svm/core/genscavenge/ImageHeapInfo;)Ljava/lang/Object;
aload 2
iload 3
invokestatic com.oracle.svm.core.genscavenge.ImageHeapWalker.walkPartitionInline:(Ljava/lang/Object;Ljava/lang/Object;Lcom/oracle/svm/core/heap/ObjectVisitor;Z)Z
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/svm/core/genscavenge/MemoryWalkerAccessBase;
0 4 1 region Lcom/oracle/svm/core/genscavenge/ImageHeapInfo;
0 4 2 visitor Lcom/oracle/svm/core/heap/ObjectVisitor;
3 4 3 alignedChunks Z
RuntimeVisibleAnnotations:
com.oracle.svm.core.annotate.AlwaysInline(value = "GC performance")
MethodParameters:
Name Flags
region
visitor
protected abstract java.lang.Object getFirstObject(com.oracle.svm.core.genscavenge.ImageHeapInfo);
descriptor: (Lcom/oracle/svm/core/genscavenge/ImageHeapInfo;)Ljava/lang/Object;
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
MethodParameters:
Name Flags
info
protected abstract java.lang.Object getLastObject(com.oracle.svm.core.genscavenge.ImageHeapInfo);
descriptor: (Lcom/oracle/svm/core/genscavenge/ImageHeapInfo;)Ljava/lang/Object;
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
MethodParameters:
Name Flags
info
public boolean visitObjects(java.lang.Object, com.oracle.svm.core.heap.ObjectVisitor);
descriptor: (Ljava/lang/Object;Lcom/oracle/svm/core/heap/ObjectVisitor;)Z
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
checkcast com.oracle.svm.core.genscavenge.ImageHeapInfo
aload 2
invokevirtual com.oracle.svm.core.genscavenge.MemoryWalkerAccessBase.visitObjects:(Lcom/oracle/svm/core/genscavenge/ImageHeapInfo;Lcom/oracle/svm/core/heap/ObjectVisitor;)Z
ireturn
LocalVariableTable:
Start End Slot Name Signature
public boolean isWritable(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast com.oracle.svm.core.genscavenge.ImageHeapInfo
invokevirtual com.oracle.svm.core.genscavenge.MemoryWalkerAccessBase.isWritable:(Lcom/oracle/svm/core/genscavenge/ImageHeapInfo;)Z
ireturn
LocalVariableTable:
Start End Slot Name Signature
public java.lang.String getRegionName(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/String;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast com.oracle.svm.core.genscavenge.ImageHeapInfo
invokevirtual com.oracle.svm.core.genscavenge.MemoryWalkerAccessBase.getRegionName:(Lcom/oracle/svm/core/genscavenge/ImageHeapInfo;)Ljava/lang/String;
areturn
LocalVariableTable:
Start End Slot Name Signature
public org.graalvm.word.UnsignedWord getSize(java.lang.Object);
descriptor: (Ljava/lang/Object;)Lorg/graalvm/word/UnsignedWord;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast com.oracle.svm.core.genscavenge.ImageHeapInfo
invokevirtual com.oracle.svm.core.genscavenge.MemoryWalkerAccessBase.getSize:(Lcom/oracle/svm/core/genscavenge/ImageHeapInfo;)Lorg/graalvm/word/UnsignedWord;
areturn
LocalVariableTable:
Start End Slot Name Signature
public org.graalvm.word.UnsignedWord getStart(java.lang.Object);
descriptor: (Ljava/lang/Object;)Lorg/graalvm/word/UnsignedWord;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast com.oracle.svm.core.genscavenge.ImageHeapInfo
invokevirtual com.oracle.svm.core.genscavenge.MemoryWalkerAccessBase.getStart:(Lcom/oracle/svm/core/genscavenge/ImageHeapInfo;)Lorg/graalvm/word/UnsignedWord;
areturn
LocalVariableTable:
Start End Slot Name Signature
public boolean containsReferences(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast com.oracle.svm.core.genscavenge.ImageHeapInfo
invokevirtual com.oracle.svm.core.genscavenge.MemoryWalkerAccessBase.containsReferences:(Lcom/oracle/svm/core/genscavenge/ImageHeapInfo;)Z
ireturn
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Ljava/lang/Object;Lcom/oracle/svm/core/MemoryWalker$NativeImageHeapRegionAccess<Lcom/oracle/svm/core/genscavenge/ImageHeapInfo;>;
SourceFile: "ImageHeapWalker.java"
InnerClasses:
public abstract NativeImageHeapRegionAccess = com.oracle.svm.core.MemoryWalker$NativeImageHeapRegionAccess of com.oracle.svm.core.MemoryWalker