final class org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode$LoopConditionNode extends org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$BaseNode implements com.oracle.truffle.api.nodes.RepeatingNode
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode$LoopConditionNode
super_class: org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$BaseNode
{
private volatile org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$BaseNode child;
descriptor: Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest$BaseNode;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.Node$Child()
private final int loopCount;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final boolean infinite;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
final org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode this$1;
descriptor: Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest$WhileLoopNode;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode, java.lang.Object, org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$BaseNode);
descriptor: (Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest$WhileLoopNode;Ljava/lang/Object;Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest$BaseNode;)V
flags: (0x0000)
Code:
stack=2, locals=5, args_size=4
start local 0 start local 2 start local 3 0: aload 0
aload 1
putfield org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode$LoopConditionNode.this$1:Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest$WhileLoopNode;
aload 0
invokespecial org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$BaseNode.<init>:()V
1: aload 0
aload 3
putfield org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode$LoopConditionNode.child:Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest$BaseNode;
2: iconst_0
istore 4
start local 4 3: aload 2
instanceof java.lang.Double
ifeq 8
4: aload 2
checkcast java.lang.Double
invokevirtual java.lang.Double.isInfinite:()Z
ifeq 6
5: iconst_1
istore 4
6: StackMap locals: org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode$LoopConditionNode org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode java.lang.Object org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$BaseNode int
StackMap stack:
aload 0
aload 2
checkcast java.lang.Double
invokevirtual java.lang.Double.intValue:()I
putfield org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode$LoopConditionNode.loopCount:I
7: goto 12
StackMap locals:
StackMap stack:
8: aload 2
instanceof java.lang.Integer
ifeq 11
9: aload 0
aload 2
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
putfield org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode$LoopConditionNode.loopCount:I
10: goto 12
11: StackMap locals:
StackMap stack:
aload 0
iconst_0
putfield org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode$LoopConditionNode.loopCount:I
12: StackMap locals:
StackMap stack:
aload 0
iload 4
putfield org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode$LoopConditionNode.infinite:Z
13: return
end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest$WhileLoopNode$LoopConditionNode;
0 14 2 loopCount Ljava/lang/Object;
0 14 3 child Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest$BaseNode;
3 14 4 inf Z
MethodParameters:
Name Flags
this$0 final
loopCount
child
public boolean executeRepeating(com.oracle.truffle.api.frame.VirtualFrame);
descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 1
aload 0
getfield org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode$LoopConditionNode.this$1:Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest$WhileLoopNode;
getfield org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode.loopIndexSlot:Lcom/oracle/truffle/api/frame/FrameSlot;
invokeinterface com.oracle.truffle.api.frame.VirtualFrame.getInt:(Lcom/oracle/truffle/api/frame/FrameSlot;)I
istore 2
start local 2 1: goto 5
end local 2 StackMap locals:
StackMap stack: com.oracle.truffle.api.frame.FrameSlotTypeException
2: astore 3
start local 3 3: invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreter:()V
4: new java.lang.AssertionError
dup
aload 3
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
end local 3 start local 2 5: StackMap locals: int
StackMap stack:
aload 0
getfield org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode$LoopConditionNode.infinite:Z
ifne 6
iload 2
aload 0
getfield org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode$LoopConditionNode.loopCount:I
if_icmpge 10
6: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode$LoopConditionNode.execute:(Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
astore 3
start local 3 7: aload 1
aload 0
getfield org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode$LoopConditionNode.this$1:Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest$WhileLoopNode;
getfield org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode.loopIndexSlot:Lcom/oracle/truffle/api/frame/FrameSlot;
iload 2
iconst_1
iadd
invokeinterface com.oracle.truffle.api.frame.VirtualFrame.setInt:(Lcom/oracle/truffle/api/frame/FrameSlot;I)V
8: aload 1
aload 0
getfield org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode$LoopConditionNode.this$1:Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest$WhileLoopNode;
getfield org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode.loopResultSlot:Lcom/oracle/truffle/api/frame/FrameSlot;
aload 3
invokeinterface com.oracle.truffle.api.frame.VirtualFrame.setObject:(Lcom/oracle/truffle/api/frame/FrameSlot;Ljava/lang/Object;)V
9: iconst_1
ireturn
end local 3 10: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest$WhileLoopNode$LoopConditionNode;
0 11 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
1 2 2 i I
5 11 2 i I
3 5 3 e Lcom/oracle/truffle/api/frame/FrameSlotTypeException;
7 10 3 resultValue Ljava/lang/Object;
Exception table:
from to target type
0 1 2 Class com.oracle.truffle.api.frame.FrameSlotTypeException
MethodParameters:
Name Flags
frame
java.lang.Object execute(com.oracle.truffle.api.frame.VirtualFrame);
descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode$LoopConditionNode.child:Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest$BaseNode;
aload 1
invokevirtual org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$BaseNode.execute:(Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/truffle/test/RewriteDuringCompilationTest$WhileLoopNode$LoopConditionNode;
0 1 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
MethodParameters:
Name Flags
frame
}
SourceFile: "RewriteDuringCompilationTest.java"
NestHost: org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest
InnerClasses:
public abstract Child = com.oracle.truffle.api.nodes.Node$Child of com.oracle.truffle.api.nodes.Node
abstract BaseNode = org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$BaseNode of org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest
final WhileLoopNode = org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode of org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest
final LoopConditionNode = org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode$LoopConditionNode of org.graalvm.compiler.truffle.test.RewriteDuringCompilationTest$WhileLoopNode