class com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage$1 extends com.oracle.truffle.api.nodes.RootNode
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage$1
super_class: com.oracle.truffle.api.nodes.RootNode
{
private com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage$MaterializableNode[] children;
descriptor: [Lcom/oracle/truffle/api/instrumentation/test/InstrumentableNodeTest$MaterializationLanguage$MaterializableNode;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.Node$Children()
final com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage this$1;
descriptor: Lcom/oracle/truffle/api/instrumentation/test/InstrumentableNodeTest$MaterializationLanguage;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
private final java.lang.String val$code;
descriptor: Ljava/lang/String;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final com.oracle.truffle.api.source.Source val$source;
descriptor: Lcom/oracle/truffle/api/source/Source;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
void <init>(com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage, com.oracle.truffle.api.TruffleLanguage, java.lang.String, com.oracle.truffle.api.source.Source);
descriptor: (Lcom/oracle/truffle/api/instrumentation/test/InstrumentableNodeTest$MaterializationLanguage;Lcom/oracle/truffle/api/TruffleLanguage;Ljava/lang/String;Lcom/oracle/truffle/api/source/Source;)V
flags: (0x0000)
Code:
stack=4, locals=5, args_size=5
start local 0 start local 2 0: aload 0
aload 1
putfield com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage$1.this$1:Lcom/oracle/truffle/api/instrumentation/test/InstrumentableNodeTest$MaterializationLanguage;
aload 0
aload 3
putfield com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage$1.val$code:Ljava/lang/String;
aload 0
aload 4
putfield com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage$1.val$source:Lcom/oracle/truffle/api/source/Source;
aload 0
aload 2
invokespecial com.oracle.truffle.api.nodes.RootNode.<init>:(Lcom/oracle/truffle/api/TruffleLanguage;)V
1: aload 0
aload 3
ldc "num"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 2
iconst_0
anewarray com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage$MaterializableNode
goto 3
StackMap locals: com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage$1 com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage com.oracle.truffle.api.TruffleLanguage java.lang.String com.oracle.truffle.api.source.Source
StackMap stack: com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage$1
2: aload 1
aload 4
iconst_1
invokestatic com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage.createChildren:(Lcom/oracle/truffle/api/instrumentation/test/InstrumentableNodeTest$MaterializationLanguage;Lcom/oracle/truffle/api/source/Source;I)[Lcom/oracle/truffle/api/instrumentation/test/InstrumentableNodeTest$MaterializationLanguage$MaterializableNode;
StackMap locals: com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage$1 com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage com.oracle.truffle.api.TruffleLanguage java.lang.String com.oracle.truffle.api.source.Source
StackMap stack: com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage$1 com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage$MaterializableNode[]
3: putfield com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage$1.children:[Lcom/oracle/truffle/api/instrumentation/test/InstrumentableNodeTest$MaterializationLanguage$MaterializableNode;
4: return
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/api/instrumentation/test/InstrumentableNodeTest$MaterializationLanguage$1;
0 5 2 $anonymous0 Lcom/oracle/truffle/api/TruffleLanguage<*>;
MethodParameters:
Name Flags
this$0 final
$anonymous0
val$code final
val$source final
public java.lang.Object execute(com.oracle.truffle.api.frame.VirtualFrame);
descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage$1.val$code:Ljava/lang/String;
ldc "numMaterializations"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 2
1: aload 0
getfield com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage$1.this$1:Lcom/oracle/truffle/api/instrumentation/test/InstrumentableNodeTest$MaterializationLanguage;
getfield com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage.numMaterializations:I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage$1.val$code:Ljava/lang/String;
ldc "numMultipleMaterializations"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 4
3: aload 0
getfield com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage$1.this$1:Lcom/oracle/truffle/api/instrumentation/test/InstrumentableNodeTest$MaterializationLanguage;
getfield com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage.numMultipleMaterializations:I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
areturn
4: StackMap locals:
StackMap stack:
iconst_0
istore 2
start local 2 5: aload 0
getfield com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage$1.children:[Lcom/oracle/truffle/api/instrumentation/test/InstrumentableNodeTest$MaterializationLanguage$MaterializableNode;
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 9
StackMap locals: com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage$1 com.oracle.truffle.api.frame.VirtualFrame int top int int com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage$MaterializableNode[]
StackMap stack:
6: aload 6
iload 4
aaload
astore 3
start local 3 7: iload 2
aload 3
aload 1
invokevirtual com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage$MaterializableNode.execute:(Lcom/oracle/truffle/api/frame/VirtualFrame;)I
iadd
istore 2
end local 3 8: iinc 4 1
StackMap locals:
StackMap stack:
9: iload 4
iload 5
if_icmplt 6
10: iload 2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/oracle/truffle/api/instrumentation/test/InstrumentableNodeTest$MaterializationLanguage$1;
0 11 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
5 11 2 sum I
7 8 3 node Lcom/oracle/truffle/api/instrumentation/test/InstrumentableNodeTest$MaterializationLanguage$MaterializableNode;
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.ExplodeLoop()
MethodParameters:
Name Flags
frame
public com.oracle.truffle.api.source.SourceSection getSourceSection();
descriptor: ()Lcom/oracle/truffle/api/source/SourceSection;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage$1.val$source:Lcom/oracle/truffle/api/source/Source;
iconst_1
invokevirtual com.oracle.truffle.api.source.Source.createSection:(I)Lcom/oracle/truffle/api/source/SourceSection;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/instrumentation/test/InstrumentableNodeTest$MaterializationLanguage$1;
}
SourceFile: "InstrumentableNodeTest.java"
EnclosingMethod: com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage.parse:(Lcom/oracle/truffle/api/TruffleLanguage$ParsingRequest;)Lcom/oracle/truffle/api/CallTarget;
NestHost: com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest
InnerClasses:
public final ParsingRequest = com.oracle.truffle.api.TruffleLanguage$ParsingRequest of com.oracle.truffle.api.TruffleLanguage
public MaterializationLanguage = com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage of com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest
com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage$1
MaterializableNode = com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage$MaterializableNode of com.oracle.truffle.api.instrumentation.test.InstrumentableNodeTest$MaterializationLanguage
public abstract Children = com.oracle.truffle.api.nodes.Node$Children of com.oracle.truffle.api.nodes.Node