class com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestEnvParseInline$1$2 extends com.oracle.truffle.api.instrumentation.ExecutionEventNode
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestEnvParseInline$1$2
super_class: com.oracle.truffle.api.instrumentation.ExecutionEventNode
{
private com.oracle.truffle.api.nodes.ExecutableNode exeNode;
descriptor: Lcom/oracle/truffle/api/nodes/ExecutableNode;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.Node$Child()
final com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestEnvParseInline$1 this$2;
descriptor: Lcom/oracle/truffle/api/instrumentation/test/InstrumentationTest$TestEnvParseInline$1;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
private final com.oracle.truffle.api.nodes.ExecutableNode val$execOtherLang;
descriptor: Lcom/oracle/truffle/api/nodes/ExecutableNode;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final com.oracle.truffle.api.nodes.ExecutableNode val$exec;
descriptor: Lcom/oracle/truffle/api/nodes/ExecutableNode;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
void <init>(com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestEnvParseInline$1, com.oracle.truffle.api.nodes.ExecutableNode, com.oracle.truffle.api.nodes.ExecutableNode);
descriptor: (Lcom/oracle/truffle/api/instrumentation/test/InstrumentationTest$TestEnvParseInline$1;Lcom/oracle/truffle/api/nodes/ExecutableNode;Lcom/oracle/truffle/api/nodes/ExecutableNode;)V
flags: (0x0000)
Code:
stack=2, locals=4, args_size=4
start local 0 0: aload 0
aload 1
putfield com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestEnvParseInline$1$2.this$2:Lcom/oracle/truffle/api/instrumentation/test/InstrumentationTest$TestEnvParseInline$1;
aload 0
aload 2
putfield com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestEnvParseInline$1$2.val$execOtherLang:Lcom/oracle/truffle/api/nodes/ExecutableNode;
aload 0
aload 3
putfield com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestEnvParseInline$1$2.val$exec:Lcom/oracle/truffle/api/nodes/ExecutableNode;
aload 0
invokespecial com.oracle.truffle.api.instrumentation.ExecutionEventNode.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/instrumentation/test/InstrumentationTest$TestEnvParseInline$1$2;
MethodParameters:
Name Flags
this$0 final
val$execOtherLang final
val$exec final
public void onEnter(com.oracle.truffle.api.frame.VirtualFrame);
descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestEnvParseInline$1$2.this$2:Lcom/oracle/truffle/api/instrumentation/test/InstrumentationTest$TestEnvParseInline$1;
invokestatic com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestEnvParseInline$1.access$0:(Lcom/oracle/truffle/api/instrumentation/test/InstrumentationTest$TestEnvParseInline$1;)Lcom/oracle/truffle/api/instrumentation/test/InstrumentationTest$TestEnvParseInline;
dup
getfield com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestEnvParseInline.onStatement:I
iconst_1
iadd
putfield com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestEnvParseInline.onStatement:I
1: aload 0
getfield com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestEnvParseInline$1$2.exeNode:Lcom/oracle/truffle/api/nodes/ExecutableNode;
ifnonnull 9
2: invokestatic com.oracle.truffle.api.CompilerDirectives.transferToInterpreterAndInvalidate:()V
3: aload 0
aload 0
getfield com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestEnvParseInline$1$2.val$execOtherLang:Lcom/oracle/truffle/api/nodes/ExecutableNode;
invokevirtual com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestEnvParseInline$1$2.insert:(Lcom/oracle/truffle/api/nodes/Node;)Lcom/oracle/truffle/api/nodes/Node;
pop
4: ldc "Should not be able to insert an executable node of a different language!"
invokestatic org.junit.Assert.fail:(Ljava/lang/String;)V
5: goto 7
StackMap locals:
StackMap stack: java.lang.IllegalArgumentException
6: pop
7: StackMap locals:
StackMap stack:
aload 0
aload 0
aload 0
getfield com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestEnvParseInline$1$2.val$exec:Lcom/oracle/truffle/api/nodes/ExecutableNode;
invokevirtual com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestEnvParseInline$1$2.insert:(Lcom/oracle/truffle/api/nodes/Node;)Lcom/oracle/truffle/api/nodes/Node;
checkcast com.oracle.truffle.api.nodes.ExecutableNode
putfield com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestEnvParseInline$1$2.exeNode:Lcom/oracle/truffle/api/nodes/ExecutableNode;
8: aload 0
aload 0
getfield com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestEnvParseInline$1$2.exeNode:Lcom/oracle/truffle/api/nodes/ExecutableNode;
invokevirtual com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestEnvParseInline$1$2.notifyInserted:(Lcom/oracle/truffle/api/nodes/Node;)V
9: StackMap locals:
StackMap stack:
aload 0
getfield com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestEnvParseInline$1$2.exeNode:Lcom/oracle/truffle/api/nodes/ExecutableNode;
aload 1
invokevirtual com.oracle.truffle.api.nodes.ExecutableNode.execute:(Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
pop
10: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/oracle/truffle/api/instrumentation/test/InstrumentationTest$TestEnvParseInline$1$2;
0 11 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
Exception table:
from to target type
3 5 6 Class java.lang.IllegalArgumentException
MethodParameters:
Name Flags
frame
}
SourceFile: "InstrumentationTest.java"
EnclosingMethod: com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestEnvParseInline$1.create:(Lcom/oracle/truffle/api/instrumentation/EventContext;)Lcom/oracle/truffle/api/instrumentation/ExecutionEventNode;
NestHost: com.oracle.truffle.api.instrumentation.test.InstrumentationTest
InnerClasses:
private final TestEnvParseInline = com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestEnvParseInline of com.oracle.truffle.api.instrumentation.test.InstrumentationTest
com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestEnvParseInline$1
com.oracle.truffle.api.instrumentation.test.InstrumentationTest$TestEnvParseInline$1$2
public abstract Child = com.oracle.truffle.api.nodes.Node$Child of com.oracle.truffle.api.nodes.Node