public class com.oracle.truffle.api.benchmark.EngineBenchmark 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.EngineBenchmark
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.String CONTEXT_LOOKUP;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "contextLookup"
private static final int CONTEXT_LOOKUP_ITERATIONS;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1000
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/EngineBenchmark;
public java.lang.Object createEngine();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: invokestatic org.graalvm.polyglot.Engine.create:()Lorg/graalvm/polyglot/Engine;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/benchmark/EngineBenchmark;
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
public java.lang.Object createContext();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.create:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/benchmark/EngineBenchmark;
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
public void lookupContextSingleContext(com.oracle.truffle.api.benchmark.EngineBenchmark$ContextLookupSingleContext);
descriptor: (Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextLookupSingleContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextLookupSingleContext.context:Lorg/graalvm/polyglot/Context;
invokevirtual org.graalvm.polyglot.Context.enter:()V
1: iconst_0
istore 2
start local 2 2: goto 5
3: StackMap locals: int
StackMap stack:
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextLookupSingleContext.value:Lorg/graalvm/polyglot/Value;
iconst_0
anewarray java.lang.Object
invokevirtual org.graalvm.polyglot.Value.executeVoid:([Ljava/lang/Object;)V
4: iinc 2 1
StackMap locals:
StackMap stack:
5: iload 2
sipush 1000
if_icmplt 3
end local 2 6: aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextLookupSingleContext.context:Lorg/graalvm/polyglot/Context;
invokevirtual org.graalvm.polyglot.Context.leave:()V
7: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/oracle/truffle/api/benchmark/EngineBenchmark;
0 8 1 state Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextLookupSingleContext;
2 6 2 i I
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
MethodParameters:
Name Flags
state
public void lookupContextMultiContextManyLookups(com.oracle.truffle.api.benchmark.EngineBenchmark$ContextLookupMultiContext);
descriptor: (Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextLookupMultiContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextLookupMultiContext.context1:Lorg/graalvm/polyglot/Context;
invokevirtual org.graalvm.polyglot.Context.enter:()V
1: iconst_0
istore 2
start local 2 2: goto 5
3: StackMap locals: int
StackMap stack:
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextLookupMultiContext.multiLookup1:Lorg/graalvm/polyglot/Value;
iconst_0
anewarray java.lang.Object
invokevirtual org.graalvm.polyglot.Value.executeVoid:([Ljava/lang/Object;)V
4: iinc 2 1
StackMap locals:
StackMap stack:
5: iload 2
sipush 1000
if_icmplt 3
end local 2 6: aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextLookupMultiContext.context1:Lorg/graalvm/polyglot/Context;
invokevirtual org.graalvm.polyglot.Context.leave:()V
7: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/oracle/truffle/api/benchmark/EngineBenchmark;
0 8 1 state Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextLookupMultiContext;
2 6 2 i I
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
MethodParameters:
Name Flags
state
public void lookupContextMultiContext(com.oracle.truffle.api.benchmark.EngineBenchmark$ContextLookupMultiContext);
descriptor: (Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextLookupMultiContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextLookupMultiContext.context1:Lorg/graalvm/polyglot/Context;
invokevirtual org.graalvm.polyglot.Context.enter:()V
1: iconst_0
istore 2
start local 2 2: goto 5
3: StackMap locals: int
StackMap stack:
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextLookupMultiContext.value1:Lorg/graalvm/polyglot/Value;
iconst_0
anewarray java.lang.Object
invokevirtual org.graalvm.polyglot.Value.executeVoid:([Ljava/lang/Object;)V
4: iinc 2 1
StackMap locals:
StackMap stack:
5: iload 2
sipush 1000
if_icmplt 3
end local 2 6: aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextLookupMultiContext.context1:Lorg/graalvm/polyglot/Context;
invokevirtual org.graalvm.polyglot.Context.leave:()V
7: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/oracle/truffle/api/benchmark/EngineBenchmark;
0 8 1 state Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextLookupMultiContext;
2 6 2 i I
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
MethodParameters:
Name Flags
state
public void lookupContextMultiThread(com.oracle.truffle.api.benchmark.EngineBenchmark$ContextLookupMultiThread);
descriptor: (Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextLookupMultiThread;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextLookupMultiThread.context:Lorg/graalvm/polyglot/Context;
invokevirtual org.graalvm.polyglot.Context.enter:()V
1: iconst_0
istore 2
start local 2 2: goto 5
3: StackMap locals: int
StackMap stack:
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextLookupMultiThread.value:Lorg/graalvm/polyglot/Value;
iconst_0
anewarray java.lang.Object
invokevirtual org.graalvm.polyglot.Value.executeVoid:([Ljava/lang/Object;)V
4: iinc 2 1
StackMap locals:
StackMap stack:
5: iload 2
sipush 1000
if_icmplt 3
end local 2 6: aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextLookupMultiThread.context:Lorg/graalvm/polyglot/Context;
invokevirtual org.graalvm.polyglot.Context.leave:()V
7: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/oracle/truffle/api/benchmark/EngineBenchmark;
0 8 1 state Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextLookupMultiThread;
2 6 2 i I
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
org.openjdk.jmh.annotations.Threads(value = 10)
MethodParameters:
Name Flags
state
public void lookupContextMultiThreadMultiContext(com.oracle.truffle.api.benchmark.EngineBenchmark$ContextLookupMultiThreadMultiContext);
descriptor: (Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextLookupMultiThreadMultiContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextLookupMultiThreadMultiContext.context1:Lorg/graalvm/polyglot/Context;
invokevirtual org.graalvm.polyglot.Context.enter:()V
1: iconst_0
istore 2
start local 2 2: goto 5
3: StackMap locals: int
StackMap stack:
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextLookupMultiThreadMultiContext.value1:Lorg/graalvm/polyglot/Value;
iconst_0
anewarray java.lang.Object
invokevirtual org.graalvm.polyglot.Value.executeVoid:([Ljava/lang/Object;)V
4: iinc 2 1
StackMap locals:
StackMap stack:
5: iload 2
sipush 1000
if_icmplt 3
end local 2 6: aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextLookupMultiThreadMultiContext.context1:Lorg/graalvm/polyglot/Context;
invokevirtual org.graalvm.polyglot.Context.leave:()V
7: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/oracle/truffle/api/benchmark/EngineBenchmark;
0 8 1 state Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextLookupMultiThreadMultiContext;
2 6 2 i I
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
org.openjdk.jmh.annotations.Threads(value = 10)
MethodParameters:
Name Flags
state
public java.lang.Object eval(com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState);
descriptor: (Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextState;)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.EngineBenchmark$ContextState.context:Lorg/graalvm/polyglot/Context;
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState.source:Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/benchmark/EngineBenchmark;
0 1 1 state Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextState;
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
MethodParameters:
Name Flags
state
public void executePolyglot1(com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState);
descriptor: (Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextState;)V
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.EngineBenchmark$ContextState.value:Lorg/graalvm/polyglot/Value;
iconst_0
anewarray java.lang.Object
invokevirtual org.graalvm.polyglot.Value.execute:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/api/benchmark/EngineBenchmark;
0 2 1 state Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextState;
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
MethodParameters:
Name Flags
state
public void executePolyglot1Void(com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState);
descriptor: (Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextState;)V
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.EngineBenchmark$ContextState.value:Lorg/graalvm/polyglot/Value;
iconst_0
anewarray java.lang.Object
invokevirtual org.graalvm.polyglot.Value.executeVoid:([Ljava/lang/Object;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/api/benchmark/EngineBenchmark;
0 2 1 state Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextState;
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
MethodParameters:
Name Flags
state
public void executePolyglot1VoidEntered(com.oracle.truffle.api.benchmark.EngineBenchmark$ContextStateEnterLeave);
descriptor: (Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextStateEnterLeave;)V
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.EngineBenchmark$ContextStateEnterLeave.value:Lorg/graalvm/polyglot/Value;
iconst_0
anewarray java.lang.Object
invokevirtual org.graalvm.polyglot.Value.executeVoid:([Ljava/lang/Object;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/api/benchmark/EngineBenchmark;
0 2 1 state Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextStateEnterLeave;
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
MethodParameters:
Name Flags
state
public java.lang.Object executeCallTarget1(com.oracle.truffle.api.benchmark.EngineBenchmark$CallTargetCallState);
descriptor: (Lcom/oracle/truffle/api/benchmark/EngineBenchmark$CallTargetCallState;)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.EngineBenchmark$CallTargetCallState.callTarget:Lcom/oracle/truffle/api/CallTarget;
iconst_0
anewarray java.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/EngineBenchmark;
0 1 1 state Lcom/oracle/truffle/api/benchmark/EngineBenchmark$CallTargetCallState;
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
MethodParameters:
Name Flags
state
public int executePolyglot2(com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState);
descriptor: (Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextState;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState.value:Lorg/graalvm/polyglot/Value;
astore 3
start local 3 2: iload 2
aload 3
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState.intValue:Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.polyglot.Value.execute:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
invokevirtual org.graalvm.polyglot.Value.asInt:()I
iadd
istore 2
3: iload 2
aload 3
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState.intValue:Ljava/lang/Integer;
aastore
dup
iconst_1
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState.intValue:Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.polyglot.Value.execute:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
invokevirtual org.graalvm.polyglot.Value.asInt:()I
iadd
istore 2
4: iload 2
aload 3
iconst_3
anewarray java.lang.Object
dup
iconst_0
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState.intValue:Ljava/lang/Integer;
aastore
dup
iconst_1
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState.intValue:Ljava/lang/Integer;
aastore
dup
iconst_2
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState.intValue:Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.polyglot.Value.execute:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
invokevirtual org.graalvm.polyglot.Value.asInt:()I
iadd
istore 2
5: iload 2
aload 3
iconst_4
anewarray java.lang.Object
dup
iconst_0
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState.intValue:Ljava/lang/Integer;
aastore
dup
iconst_1
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState.intValue:Ljava/lang/Integer;
aastore
dup
iconst_2
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState.intValue:Ljava/lang/Integer;
aastore
dup
iconst_3
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState.intValue:Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.polyglot.Value.execute:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
invokevirtual org.graalvm.polyglot.Value.asInt:()I
iadd
istore 2
6: iload 2
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/oracle/truffle/api/benchmark/EngineBenchmark;
0 7 1 state Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextState;
1 7 2 result I
2 7 3 value Lorg/graalvm/polyglot/Value;
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
MethodParameters:
Name Flags
state
public java.lang.Object executeCallTarget2(com.oracle.truffle.api.benchmark.EngineBenchmark$CallTargetCallState);
descriptor: (Lcom/oracle/truffle/api/benchmark/EngineBenchmark$CallTargetCallState;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: iload 2
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$CallTargetCallState.callTarget:Lcom/oracle/truffle/api/CallTarget;
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$CallTargetCallState.intValue:Ljava/lang/Integer;
aastore
invokeinterface com.oracle.truffle.api.CallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
iadd
istore 2
2: iload 2
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$CallTargetCallState.callTarget:Lcom/oracle/truffle/api/CallTarget;
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$CallTargetCallState.intValue:Ljava/lang/Integer;
aastore
dup
iconst_1
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$CallTargetCallState.intValue:Ljava/lang/Integer;
aastore
invokeinterface com.oracle.truffle.api.CallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
iadd
istore 2
3: iload 2
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$CallTargetCallState.callTarget:Lcom/oracle/truffle/api/CallTarget;
iconst_3
anewarray java.lang.Object
dup
iconst_0
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$CallTargetCallState.intValue:Ljava/lang/Integer;
aastore
dup
iconst_1
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$CallTargetCallState.intValue:Ljava/lang/Integer;
aastore
dup
iconst_2
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$CallTargetCallState.intValue:Ljava/lang/Integer;
aastore
invokeinterface com.oracle.truffle.api.CallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
iadd
istore 2
4: iload 2
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$CallTargetCallState.callTarget:Lcom/oracle/truffle/api/CallTarget;
iconst_4
anewarray java.lang.Object
dup
iconst_0
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$CallTargetCallState.intValue:Ljava/lang/Integer;
aastore
dup
iconst_1
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$CallTargetCallState.intValue:Ljava/lang/Integer;
aastore
dup
iconst_2
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$CallTargetCallState.intValue:Ljava/lang/Integer;
aastore
dup
iconst_3
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$CallTargetCallState.intValue:Ljava/lang/Integer;
aastore
invokeinterface com.oracle.truffle.api.CallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
iadd
istore 2
5: 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 6 0 this Lcom/oracle/truffle/api/benchmark/EngineBenchmark;
0 6 1 state Lcom/oracle/truffle/api/benchmark/EngineBenchmark$CallTargetCallState;
1 6 2 result I
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
MethodParameters:
Name Flags
state
public java.lang.Object isNativePointer(com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState);
descriptor: (Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextState;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState.value:Lorg/graalvm/polyglot/Value;
invokevirtual org.graalvm.polyglot.Value.isNativePointer:()Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/benchmark/EngineBenchmark;
0 1 1 state Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextState;
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
MethodParameters:
Name Flags
state
public java.lang.Object asNativePointer(com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState);
descriptor: (Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextState;)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.EngineBenchmark$ContextState.value:Lorg/graalvm/polyglot/Value;
invokevirtual org.graalvm.polyglot.Value.asNativePointer:()J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/benchmark/EngineBenchmark;
0 1 1 state Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextState;
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
MethodParameters:
Name Flags
state
public java.lang.Object hasMembers(com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState);
descriptor: (Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextState;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState.value:Lorg/graalvm/polyglot/Value;
invokevirtual org.graalvm.polyglot.Value.hasMembers:()Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/benchmark/EngineBenchmark;
0 1 1 state Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextState;
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
MethodParameters:
Name Flags
state
public void putMember(com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState);
descriptor: (Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextState;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState.value:Lorg/graalvm/polyglot/Value;
ldc "42"
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState.intValue:Ljava/lang/Integer;
invokevirtual org.graalvm.polyglot.Value.putMember:(Ljava/lang/String;Ljava/lang/Object;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/api/benchmark/EngineBenchmark;
0 2 1 state Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextState;
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
MethodParameters:
Name Flags
state
public java.lang.Object getMember(com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState);
descriptor: (Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextState;)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.EngineBenchmark$ContextState.value:Lorg/graalvm/polyglot/Value;
ldc "42"
invokevirtual org.graalvm.polyglot.Value.getMember:(Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/benchmark/EngineBenchmark;
0 1 1 state Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextState;
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
MethodParameters:
Name Flags
state
public java.lang.Object hasArrayElements(com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState);
descriptor: (Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextState;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState.value:Lorg/graalvm/polyglot/Value;
invokevirtual org.graalvm.polyglot.Value.hasArrayElements:()Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/benchmark/EngineBenchmark;
0 1 1 state Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextState;
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
MethodParameters:
Name Flags
state
public java.lang.Object getArrayElement(com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState);
descriptor: (Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextState;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState.value:Lorg/graalvm/polyglot/Value;
ldc 42
invokevirtual org.graalvm.polyglot.Value.getArrayElement:(J)Lorg/graalvm/polyglot/Value;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/benchmark/EngineBenchmark;
0 1 1 state Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextState;
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
MethodParameters:
Name Flags
state
public java.lang.Object setArrayElement(com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState);
descriptor: (Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextState;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState.value:Lorg/graalvm/polyglot/Value;
ldc 42
invokevirtual org.graalvm.polyglot.Value.getArrayElement:(J)Lorg/graalvm/polyglot/Value;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/benchmark/EngineBenchmark;
0 1 1 state Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextState;
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
MethodParameters:
Name Flags
state
public java.lang.Object canExecute(com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState);
descriptor: (Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextState;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState.value:Lorg/graalvm/polyglot/Value;
invokevirtual org.graalvm.polyglot.Value.canExecute:()Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/benchmark/EngineBenchmark;
0 1 1 state Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextState;
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
MethodParameters:
Name Flags
state
public java.lang.Object isHostObject(com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState);
descriptor: (Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextState;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState.hostValue:Lorg/graalvm/polyglot/Value;
invokevirtual org.graalvm.polyglot.Value.isHostObject:()Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/benchmark/EngineBenchmark;
0 1 1 state Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextState;
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
MethodParameters:
Name Flags
state
public java.lang.Object asHostObject(com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState);
descriptor: (Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextState;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState.hostValue:Lorg/graalvm/polyglot/Value;
invokevirtual org.graalvm.polyglot.Value.asHostObject:()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/EngineBenchmark;
0 1 1 state Lcom/oracle/truffle/api/benchmark/EngineBenchmark$ContextState;
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
MethodParameters:
Name Flags
state
public java.lang.Object sourceEmbedderCreate(com.oracle.truffle.api.benchmark.EngineBenchmark$SourceEmbedderCreate);
descriptor: (Lcom/oracle/truffle/api/benchmark/EngineBenchmark$SourceEmbedderCreate;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: ldc "benchmark-test-language"
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$SourceEmbedderCreate.file:Ljava/io/File;
invokestatic org.graalvm.polyglot.Source.newBuilder:(Ljava/lang/String;Ljava/io/File;)Lorg/graalvm/polyglot/Source$Builder;
invokevirtual org.graalvm.polyglot.Source$Builder.build:()Lorg/graalvm/polyglot/Source;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/benchmark/EngineBenchmark;
0 1 1 state Lcom/oracle/truffle/api/benchmark/EngineBenchmark$SourceEmbedderCreate;
Exceptions:
throws java.io.IOException
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
MethodParameters:
Name Flags
state
public java.lang.Object sourceLanguageCreate(com.oracle.truffle.api.benchmark.EngineBenchmark$SourceLanguageCreate);
descriptor: (Lcom/oracle/truffle/api/benchmark/EngineBenchmark$SourceLanguageCreate;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: ldc "benchmark-test-language"
aload 1
getfield com.oracle.truffle.api.benchmark.EngineBenchmark$SourceLanguageCreate.file:Lcom/oracle/truffle/api/TruffleFile;
invokestatic com.oracle.truffle.api.source.Source.newBuilder:(Ljava/lang/String;Lcom/oracle/truffle/api/TruffleFile;)Lcom/oracle/truffle/api/source/Source$SourceBuilder;
invokevirtual com.oracle.truffle.api.source.Source$SourceBuilder.build:()Lcom/oracle/truffle/api/source/Source;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/benchmark/EngineBenchmark;
0 1 1 state Lcom/oracle/truffle/api/benchmark/EngineBenchmark$SourceLanguageCreate;
Exceptions:
throws java.io.IOException
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
MethodParameters:
Name Flags
state
}
SourceFile: "EngineBenchmark.java"
NestMembers:
com.oracle.truffle.api.benchmark.EngineBenchmark$BenchmarkContext com.oracle.truffle.api.benchmark.EngineBenchmark$BenchmarkObjectConstant com.oracle.truffle.api.benchmark.EngineBenchmark$BenchmarkObjectLookup com.oracle.truffle.api.benchmark.EngineBenchmark$BenchmarkTestLanguage com.oracle.truffle.api.benchmark.EngineBenchmark$CallTargetCallState com.oracle.truffle.api.benchmark.EngineBenchmark$CallTargetCallState$1 com.oracle.truffle.api.benchmark.EngineBenchmark$ContextLookupMultiContext com.oracle.truffle.api.benchmark.EngineBenchmark$ContextLookupMultiThread com.oracle.truffle.api.benchmark.EngineBenchmark$ContextLookupMultiThreadMultiContext com.oracle.truffle.api.benchmark.EngineBenchmark$ContextLookupSingleContext com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState com.oracle.truffle.api.benchmark.EngineBenchmark$ContextStateEnterLeave com.oracle.truffle.api.benchmark.EngineBenchmark$SourceEmbedderCreate com.oracle.truffle.api.benchmark.EngineBenchmark$SourceLanguageCreate
InnerClasses:
final BenchmarkContext = com.oracle.truffle.api.benchmark.EngineBenchmark$BenchmarkContext of com.oracle.truffle.api.benchmark.EngineBenchmark
public BenchmarkObjectConstant = com.oracle.truffle.api.benchmark.EngineBenchmark$BenchmarkObjectConstant of com.oracle.truffle.api.benchmark.EngineBenchmark
public BenchmarkObjectLookup = com.oracle.truffle.api.benchmark.EngineBenchmark$BenchmarkObjectLookup of com.oracle.truffle.api.benchmark.EngineBenchmark
public BenchmarkTestLanguage = com.oracle.truffle.api.benchmark.EngineBenchmark$BenchmarkTestLanguage of com.oracle.truffle.api.benchmark.EngineBenchmark
public CallTargetCallState = com.oracle.truffle.api.benchmark.EngineBenchmark$CallTargetCallState of com.oracle.truffle.api.benchmark.EngineBenchmark
public ContextLookupMultiContext = com.oracle.truffle.api.benchmark.EngineBenchmark$ContextLookupMultiContext of com.oracle.truffle.api.benchmark.EngineBenchmark
public ContextLookupMultiThread = com.oracle.truffle.api.benchmark.EngineBenchmark$ContextLookupMultiThread of com.oracle.truffle.api.benchmark.EngineBenchmark
public ContextLookupMultiThreadMultiContext = com.oracle.truffle.api.benchmark.EngineBenchmark$ContextLookupMultiThreadMultiContext of com.oracle.truffle.api.benchmark.EngineBenchmark
public ContextLookupSingleContext = com.oracle.truffle.api.benchmark.EngineBenchmark$ContextLookupSingleContext of com.oracle.truffle.api.benchmark.EngineBenchmark
public ContextState = com.oracle.truffle.api.benchmark.EngineBenchmark$ContextState of com.oracle.truffle.api.benchmark.EngineBenchmark
public ContextStateEnterLeave = com.oracle.truffle.api.benchmark.EngineBenchmark$ContextStateEnterLeave of com.oracle.truffle.api.benchmark.EngineBenchmark
public SourceEmbedderCreate = com.oracle.truffle.api.benchmark.EngineBenchmark$SourceEmbedderCreate of com.oracle.truffle.api.benchmark.EngineBenchmark
public SourceLanguageCreate = com.oracle.truffle.api.benchmark.EngineBenchmark$SourceLanguageCreate of com.oracle.truffle.api.benchmark.EngineBenchmark
public SourceBuilder = com.oracle.truffle.api.source.Source$SourceBuilder of com.oracle.truffle.api.source.Source
public Builder = org.graalvm.polyglot.Source$Builder of org.graalvm.polyglot.Source