public class com.oracle.truffle.api.benchmark.EncapsulatingNodeBenchmark extends com.oracle.truffle.api.benchmark.TruffleBenchmark
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.oracle.truffle.api.benchmark.EncapsulatingNodeBenchmark
super_class: com.oracle.truffle.api.benchmark.TruffleBenchmark
{
static final java.lang.String TEST_LANGUAGE;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "benchmark-test-language"
private static final java.lang.Object[] EMPTY_ARGS;
descriptor: [Ljava/lang/Object;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static volatile long sideEffect;
descriptor: J
flags: (0x0048) ACC_STATIC, ACC_VOLATILE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: iconst_0
anewarray java.lang.Object
putstatic com.oracle.truffle.api.benchmark.EncapsulatingNodeBenchmark.EMPTY_ARGS:[Ljava/lang/Object;
1: lconst_0
putstatic com.oracle.truffle.api.benchmark.EncapsulatingNodeBenchmark.sideEffect:J
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial com.oracle.truffle.api.benchmark.TruffleBenchmark.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/benchmark/EncapsulatingNodeBenchmark;
public java.lang.Object pushPopOldCompiled(com.oracle.truffle.api.benchmark.EncapsulatingNodeBenchmark$PushPopOldCompiled);
descriptor: (Lcom/oracle/truffle/api/benchmark/EncapsulatingNodeBenchmark$PushPopOldCompiled;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getfield com.oracle.truffle.api.benchmark.EncapsulatingNodeBenchmark$PushPopOldCompiled.callTarget:Lcom/oracle/truffle/api/CallTarget;
getstatic com.oracle.truffle.api.benchmark.EncapsulatingNodeBenchmark.EMPTY_ARGS:[Ljava/lang/Object;
invokeinterface com.oracle.truffle.api.CallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/benchmark/EncapsulatingNodeBenchmark;
0 1 1 state Lcom/oracle/truffle/api/benchmark/EncapsulatingNodeBenchmark$PushPopOldCompiled;
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
MethodParameters:
Name Flags
state
public java.lang.Object pushPopOldInterpreter(com.oracle.truffle.api.benchmark.EncapsulatingNodeBenchmark$PushPopOldCompiled);
descriptor: (Lcom/oracle/truffle/api/benchmark/EncapsulatingNodeBenchmark$PushPopOldCompiled;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: aload 1
getfield com.oracle.truffle.api.benchmark.EncapsulatingNodeBenchmark$PushPopOldCompiled.node:Lcom/oracle/truffle/api/nodes/Node;
invokestatic com.oracle.truffle.api.nodes.NodeUtil.pushEncapsulatingNode:(Lcom/oracle/truffle/api/nodes/Node;)Lcom/oracle/truffle/api/nodes/Node;
astore 2
start local 2 1: aload 1
getfield com.oracle.truffle.api.benchmark.EncapsulatingNodeBenchmark$PushPopOldCompiled.node:Lcom/oracle/truffle/api/nodes/Node;
invokestatic com.oracle.truffle.api.nodes.NodeUtil.pushEncapsulatingNode:(Lcom/oracle/truffle/api/nodes/Node;)Lcom/oracle/truffle/api/nodes/Node;
astore 3
start local 3 2: aload 1
getfield com.oracle.truffle.api.benchmark.EncapsulatingNodeBenchmark$PushPopOldCompiled.node:Lcom/oracle/truffle/api/nodes/Node;
invokestatic com.oracle.truffle.api.nodes.NodeUtil.pushEncapsulatingNode:(Lcom/oracle/truffle/api/nodes/Node;)Lcom/oracle/truffle/api/nodes/Node;
astore 4
start local 4 3: getstatic com.oracle.truffle.api.benchmark.EncapsulatingNodeBenchmark.sideEffect:J
lconst_1
ladd
putstatic com.oracle.truffle.api.benchmark.EncapsulatingNodeBenchmark.sideEffect:J
4: aload 4
invokestatic com.oracle.truffle.api.nodes.NodeUtil.popEncapsulatingNode:(Lcom/oracle/truffle/api/nodes/Node;)V
5: aload 3
invokestatic com.oracle.truffle.api.nodes.NodeUtil.popEncapsulatingNode:(Lcom/oracle/truffle/api/nodes/Node;)V
6: aload 2
invokestatic com.oracle.truffle.api.nodes.NodeUtil.popEncapsulatingNode:(Lcom/oracle/truffle/api/nodes/Node;)V
7: aconst_null
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/oracle/truffle/api/benchmark/EncapsulatingNodeBenchmark;
0 8 1 state Lcom/oracle/truffle/api/benchmark/EncapsulatingNodeBenchmark$PushPopOldCompiled;
1 8 2 prev0 Lcom/oracle/truffle/api/nodes/Node;
2 8 3 prev1 Lcom/oracle/truffle/api/nodes/Node;
3 8 4 prev2 Lcom/oracle/truffle/api/nodes/Node;
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
MethodParameters:
Name Flags
state
public java.lang.Object pushPopNewInterpreter(com.oracle.truffle.api.benchmark.EncapsulatingNodeBenchmark$PushPopNewCompiled);
descriptor: (Lcom/oracle/truffle/api/benchmark/EncapsulatingNodeBenchmark$PushPopNewCompiled;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=9, args_size=2
start local 0 start local 1 0: aload 1
getfield com.oracle.truffle.api.benchmark.EncapsulatingNodeBenchmark$PushPopNewCompiled.node:Lcom/oracle/truffle/api/nodes/Node;
astore 2
start local 2 1: invokestatic com.oracle.truffle.api.nodes.EncapsulatingNodeReference.getCurrent:()Lcom/oracle/truffle/api/nodes/EncapsulatingNodeReference;
astore 3
start local 3 2: aload 3
aload 2
invokevirtual com.oracle.truffle.api.nodes.EncapsulatingNodeReference.set:(Lcom/oracle/truffle/api/nodes/Node;)Lcom/oracle/truffle/api/nodes/Node;
astore 4
start local 4 3: invokestatic com.oracle.truffle.api.nodes.EncapsulatingNodeReference.getCurrent:()Lcom/oracle/truffle/api/nodes/EncapsulatingNodeReference;
astore 5
start local 5 4: aload 3
aload 2
invokevirtual com.oracle.truffle.api.nodes.EncapsulatingNodeReference.set:(Lcom/oracle/truffle/api/nodes/Node;)Lcom/oracle/truffle/api/nodes/Node;
astore 6
start local 6 5: invokestatic com.oracle.truffle.api.nodes.EncapsulatingNodeReference.getCurrent:()Lcom/oracle/truffle/api/nodes/EncapsulatingNodeReference;
astore 7
start local 7 6: aload 3
aload 2
invokevirtual com.oracle.truffle.api.nodes.EncapsulatingNodeReference.set:(Lcom/oracle/truffle/api/nodes/Node;)Lcom/oracle/truffle/api/nodes/Node;
astore 8
start local 8 7: getstatic com.oracle.truffle.api.benchmark.EncapsulatingNodeBenchmark.sideEffect:J
lconst_1
ladd
putstatic com.oracle.truffle.api.benchmark.EncapsulatingNodeBenchmark.sideEffect:J
8: aload 7
aload 8
invokevirtual com.oracle.truffle.api.nodes.EncapsulatingNodeReference.set:(Lcom/oracle/truffle/api/nodes/Node;)Lcom/oracle/truffle/api/nodes/Node;
pop
9: aload 5
aload 6
invokevirtual com.oracle.truffle.api.nodes.EncapsulatingNodeReference.set:(Lcom/oracle/truffle/api/nodes/Node;)Lcom/oracle/truffle/api/nodes/Node;
pop
10: aload 3
aload 4
invokevirtual com.oracle.truffle.api.nodes.EncapsulatingNodeReference.set:(Lcom/oracle/truffle/api/nodes/Node;)Lcom/oracle/truffle/api/nodes/Node;
pop
11: aconst_null
areturn
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lcom/oracle/truffle/api/benchmark/EncapsulatingNodeBenchmark;
0 12 1 state Lcom/oracle/truffle/api/benchmark/EncapsulatingNodeBenchmark$PushPopNewCompiled;
1 12 2 node Lcom/oracle/truffle/api/nodes/Node;
2 12 3 nodeRef0 Lcom/oracle/truffle/api/nodes/EncapsulatingNodeReference;
3 12 4 prev0 Lcom/oracle/truffle/api/nodes/Node;
4 12 5 nodeRef1 Lcom/oracle/truffle/api/nodes/EncapsulatingNodeReference;
5 12 6 prev1 Lcom/oracle/truffle/api/nodes/Node;
6 12 7 nodeRef2 Lcom/oracle/truffle/api/nodes/EncapsulatingNodeReference;
7 12 8 prev2 Lcom/oracle/truffle/api/nodes/Node;
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
MethodParameters:
Name Flags
state
public java.lang.Object pushPopNewCompiled(com.oracle.truffle.api.benchmark.EncapsulatingNodeBenchmark$PushPopNewCompiled);
descriptor: (Lcom/oracle/truffle/api/benchmark/EncapsulatingNodeBenchmark$PushPopNewCompiled;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getfield com.oracle.truffle.api.benchmark.EncapsulatingNodeBenchmark$PushPopNewCompiled.callTarget:Lcom/oracle/truffle/api/CallTarget;
getstatic com.oracle.truffle.api.benchmark.EncapsulatingNodeBenchmark.EMPTY_ARGS:[Ljava/lang/Object;
invokeinterface com.oracle.truffle.api.CallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/benchmark/EncapsulatingNodeBenchmark;
0 1 1 state Lcom/oracle/truffle/api/benchmark/EncapsulatingNodeBenchmark$PushPopNewCompiled;
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
MethodParameters:
Name Flags
state
}
SourceFile: "EncapsulatingNodeBenchmark.java"
NestMembers:
com.oracle.truffle.api.benchmark.EncapsulatingNodeBenchmark$PushPopNewCompiled com.oracle.truffle.api.benchmark.EncapsulatingNodeBenchmark$PushPopNewCompiled$1 com.oracle.truffle.api.benchmark.EncapsulatingNodeBenchmark$PushPopNewCompiled$2 com.oracle.truffle.api.benchmark.EncapsulatingNodeBenchmark$PushPopOldCompiled com.oracle.truffle.api.benchmark.EncapsulatingNodeBenchmark$PushPopOldCompiled$1 com.oracle.truffle.api.benchmark.EncapsulatingNodeBenchmark$PushPopOldCompiled$2
InnerClasses:
public PushPopNewCompiled = com.oracle.truffle.api.benchmark.EncapsulatingNodeBenchmark$PushPopNewCompiled of com.oracle.truffle.api.benchmark.EncapsulatingNodeBenchmark
public PushPopOldCompiled = com.oracle.truffle.api.benchmark.EncapsulatingNodeBenchmark$PushPopOldCompiled of com.oracle.truffle.api.benchmark.EncapsulatingNodeBenchmark
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.State(value = org.openjdk.jmh.annotations.Scope.Thread:Lorg/openjdk/jmh/annotations/Scope;)