class com.oracle.svm.core.genscavenge.HeapVerifier$NoReferencesToForwardedObjectsVisitor implements com.oracle.svm.core.heap.ObjectReferenceVisitor
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.oracle.svm.core.genscavenge.HeapVerifier$NoReferencesToForwardedObjectsVisitor
super_class: java.lang.Object
{
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 // com.oracle.svm.core.genscavenge.HeapVerifier$NoReferencesToForwardedObjectsVisitor this
0: .line 375
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // com.oracle.svm.core.genscavenge.HeapVerifier$NoReferencesToForwardedObjectsVisitor this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/svm/core/genscavenge/HeapVerifier$NoReferencesToForwardedObjectsVisitor;
public boolean visitObjectReference(org.graalvm.word.Pointer, boolean);
descriptor: (Lorg/graalvm/word/Pointer;Z)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=9, args_size=3
start local 0 // com.oracle.svm.core.genscavenge.HeapVerifier$NoReferencesToForwardedObjectsVisitor this
start local 1 // org.graalvm.word.Pointer objRef
start local 2 // boolean compressed
0: .line 378
invokestatic com.oracle.svm.core.genscavenge.HeapImpl.getHeapImpl:()Lcom/oracle/svm/core/genscavenge/HeapImpl;
astore 3 /* heap */
start local 3 // com.oracle.svm.core.genscavenge.HeapImpl heap
1: .line 379
aload 3 /* heap */
invokevirtual com.oracle.svm.core.genscavenge.HeapImpl.getHeapVerifier:()Lcom/oracle/svm/core/genscavenge/HeapVerifier;
astore 4 /* verifier */
start local 4 // com.oracle.svm.core.genscavenge.HeapVerifier verifier
2: .line 380
invokestatic com.oracle.svm.core.heap.ReferenceAccess.singleton:()Lcom/oracle/svm/core/heap/ReferenceAccess;
aload 1 /* objRef */
iload 2 /* compressed */
invokeinterface com.oracle.svm.core.heap.ReferenceAccess.readObjectAsUntrackedPointer:(Lorg/graalvm/word/Pointer;Z)Lorg/graalvm/compiler/word/Word;
astore 5 /* objPointer */
start local 5 // org.graalvm.word.Pointer objPointer
3: .line 381
aload 5 /* objPointer */
invokeinterface org.graalvm.word.Pointer.isNull:()Z
ifeq 5
4: .line 382
iconst_1
ireturn
5: .line 384
StackMap locals: com.oracle.svm.core.genscavenge.HeapImpl com.oracle.svm.core.genscavenge.HeapVerifier org.graalvm.word.Pointer
StackMap stack:
aload 5 /* objPointer */
invokestatic com.oracle.svm.core.genscavenge.ObjectHeaderImpl.isPointerToForwardedObjectCarefully:(Lorg/graalvm/word/Pointer;)Z
ifeq 17
6: .line 385
aconst_null
astore 6
aconst_null
astore 7
7: aload 4 /* verifier */
invokevirtual com.oracle.svm.core.genscavenge.HeapVerifier.getWitnessLog:()Lcom/oracle/svm/core/log/Log;
astore 8 /* witness */
start local 8 // com.oracle.svm.core.log.Log witness
8: .line 386
aload 8 /* witness */
ldc "[HeapVerifier.noReferencesToForwardedObjectsVerifier:"
invokevirtual com.oracle.svm.core.log.Log.string:(Ljava/lang/String;)Lcom/oracle/svm/core/log/Log;
ldc " cause: "
invokevirtual com.oracle.svm.core.log.Log.string:(Ljava/lang/String;)Lcom/oracle/svm/core/log/Log;
aload 4 /* verifier */
invokevirtual com.oracle.svm.core.genscavenge.HeapVerifier.getCurrentCause:()Ljava/lang/String;
invokevirtual com.oracle.svm.core.log.Log.string:(Ljava/lang/String;)Lcom/oracle/svm/core/log/Log;
pop
9: .line 387
aload 8 /* witness */
ldc " contains fieldPointer: "
invokevirtual com.oracle.svm.core.log.Log.string:(Ljava/lang/String;)Lcom/oracle/svm/core/log/Log;
aload 5 /* objPointer */
invokevirtual com.oracle.svm.core.log.Log.hex:(Lorg/graalvm/word/WordBase;)Lcom/oracle/svm/core/log/Log;
ldc " to forwarded object at: "
invokevirtual com.oracle.svm.core.log.Log.string:(Ljava/lang/String;)Lcom/oracle/svm/core/log/Log;
aload 1 /* objRef */
invokevirtual com.oracle.svm.core.log.Log.hex:(Lorg/graalvm/word/WordBase;)Lcom/oracle/svm/core/log/Log;
ldc "]"
invokevirtual com.oracle.svm.core.log.Log.string:(Ljava/lang/String;)Lcom/oracle/svm/core/log/Log;
invokevirtual com.oracle.svm.core.log.Log.newline:()Lcom/oracle/svm/core/log/Log;
pop
10: .line 388
aload 8 /* witness */
ifnull 16
aload 8 /* witness */
invokevirtual com.oracle.svm.core.log.Log.close:()V
goto 16
StackMap locals: com.oracle.svm.core.genscavenge.HeapVerifier$NoReferencesToForwardedObjectsVisitor org.graalvm.word.Pointer int com.oracle.svm.core.genscavenge.HeapImpl com.oracle.svm.core.genscavenge.HeapVerifier org.graalvm.word.Pointer java.lang.Throwable java.lang.Throwable com.oracle.svm.core.log.Log
StackMap stack: java.lang.Throwable
11: astore 6
aload 8 /* witness */
ifnull 12
aload 8 /* witness */
invokevirtual com.oracle.svm.core.log.Log.close:()V
end local 8 // com.oracle.svm.core.log.Log witness
StackMap locals:
StackMap stack:
12: aload 6
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
13: astore 7
aload 6
ifnonnull 14
aload 7
astore 6
goto 15
StackMap locals:
StackMap stack:
14: aload 6
aload 7
if_acmpeq 15
aload 6
aload 7
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
15: aload 6
athrow
16: .line 389
StackMap locals:
StackMap stack:
iconst_0
ireturn
17: .line 391
StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 5 // org.graalvm.word.Pointer objPointer
end local 4 // com.oracle.svm.core.genscavenge.HeapVerifier verifier
end local 3 // com.oracle.svm.core.genscavenge.HeapImpl heap
end local 2 // boolean compressed
end local 1 // org.graalvm.word.Pointer objRef
end local 0 // com.oracle.svm.core.genscavenge.HeapVerifier$NoReferencesToForwardedObjectsVisitor this
LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lcom/oracle/svm/core/genscavenge/HeapVerifier$NoReferencesToForwardedObjectsVisitor;
0 18 1 objRef Lorg/graalvm/word/Pointer;
0 18 2 compressed Z
1 18 3 heap Lcom/oracle/svm/core/genscavenge/HeapImpl;
2 18 4 verifier Lcom/oracle/svm/core/genscavenge/HeapVerifier;
3 18 5 objPointer Lorg/graalvm/word/Pointer;
8 12 8 witness Lcom/oracle/svm/core/log/Log;
Exception table:
from to target type
8 10 11 any
7 13 13 any
MethodParameters:
Name Flags
objRef
compressed
}
SourceFile: "HeapVerifier.java"
NestHost: com.oracle.svm.core.genscavenge.HeapVerifier
InnerClasses:
private NoReferencesToForwardedObjectsVisitor = com.oracle.svm.core.genscavenge.HeapVerifier$NoReferencesToForwardedObjectsVisitor of com.oracle.svm.core.genscavenge.HeapVerifier