public class com.oracle.graal.python.benchmarks.interop.PyRichards extends com.oracle.graal.python.benchmarks.interop.BenchRunner
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.oracle.graal.python.benchmarks.interop.PyRichards
super_class: com.oracle.graal.python.benchmarks.interop.BenchRunner
{
public int arg1;
descriptor: I
flags: (0x0001) ACC_PUBLIC
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Param(value = {"200"})
public static final boolean tracing;
descriptor: Z
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 0
public static final int TASKTABSIZE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 10
public static int layout;
descriptor: I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
private org.graalvm.polyglot.Value classes;
descriptor: Lorg/graalvm/polyglot/Value;
flags: (0x0002) ACC_PRIVATE
private org.graalvm.polyglot.Value PacketClass;
descriptor: Lorg/graalvm/polyglot/Value;
flags: (0x0002) ACC_PRIVATE
private org.graalvm.polyglot.Value DeviceTaskRecClass;
descriptor: Lorg/graalvm/polyglot/Value;
flags: (0x0002) ACC_PRIVATE
private org.graalvm.polyglot.Value IdleTaskRecClass;
descriptor: Lorg/graalvm/polyglot/Value;
flags: (0x0002) ACC_PRIVATE
private org.graalvm.polyglot.Value HandlerTaskRecClass;
descriptor: Lorg/graalvm/polyglot/Value;
flags: (0x0002) ACC_PRIVATE
private org.graalvm.polyglot.Value WorkerTaskRecClass;
descriptor: Lorg/graalvm/polyglot/Value;
flags: (0x0002) ACC_PRIVATE
public static final int I_IDLE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public static final int I_WORK;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 2
public static final int I_HANDLERA;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 3
public static final int I_HANDLERB;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 4
public static final int I_DEVA;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 5
public static final int I_DEVB;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 6
public static final int K_DEV;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1000
public static final int K_WORK;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1001
public static final int BUFSIZE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 4
public static org.graalvm.polyglot.Value taskWorkArea;
descriptor: Lorg/graalvm/polyglot/Value;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
public static org.graalvm.polyglot.Value None;
descriptor: Lorg/graalvm/polyglot/Value;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: iconst_0
putstatic com.oracle.graal.python.benchmarks.interop.PyRichards.layout:I
1: 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.graal.python.benchmarks.interop.BenchRunner.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/graal/python/benchmarks/interop/PyRichards;
public void setup();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=1, args_size=1
start local 0 0: getstatic java.lang.System.out:Ljava/io/PrintStream;
ldc "### setup ..."
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
1: aload 0
getfield com.oracle.graal.python.benchmarks.interop.PyRichards.context:Lorg/graalvm/polyglot/Context;
ldc "python"
ldc "None"
invokevirtual org.graalvm.polyglot.Context.eval:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Value;
putstatic com.oracle.graal.python.benchmarks.interop.PyRichards.None:Lorg/graalvm/polyglot/Value;
2: aload 0
aload 0
getfield com.oracle.graal.python.benchmarks.interop.PyRichards.context:Lorg/graalvm/polyglot/Context;
ldc "python"
3: ldc "BUFSIZE = 4\nI_HANDLERA = 3\n\nclass Packet(object):\n def __init__(self,l,i,k):\n self.link = l\n self.ident = i\n self.kind = k\n self.datum = 0\n self.data = [0] * BUFSIZE\n\n def append_to(self,lst):\n self.link = None\n if lst is None:\n return self\n else:\n p = lst\n next = p.link\n while next is not None:\n p = next\n next = p.link\n p.link = self\n return lst\n\n\n# Task Records\nclass TaskRec(object):\n pass\n\n\nclass DeviceTaskRec(TaskRec):\n def __init__(self):\n self.pending = None\n\n\nclass IdleTaskRec(TaskRec):\n def __init__(self):\n self.control = 1\n self.count = 10000\n\n\nclass HandlerTaskRec(TaskRec):\n def __init__(self):\n self.work_in = None\n self.device_in = None\n\n def workInAdd(self,p):\n self.work_in = p.append_to(self.work_in)\n return self.work_in\n\n def deviceInAdd(self,p):\n self.device_in = p.append_to(self.device_in)\n return self.device_in\n\n\nclass WorkerTaskRec(TaskRec):\n def __init__(self):\n self.destination = I_HANDLERA\n self.count = 0\n\nTASKTABSIZE = 10\n\nclass TaskWorkArea(object):\n def __init__(self):\n self.taskTab = [None] * TASKTABSIZE\n\n self.taskList = None\n\n self.holdCount = 0\n self.qpktCount = 0\n\ndef get_class(c):\n if c == 1:\n return Packet\n if c == 2:\n return DeviceTaskRec\n if c == 3:\n return IdleTaskRec\n if c == 4:\n return HandlerTaskRec\n if c == 5:\n return WorkerTaskRec\n if c == 6:\n return TaskWorkArea\nget_class"
4: invokevirtual org.graalvm.polyglot.Context.eval:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Value;
putfield com.oracle.graal.python.benchmarks.interop.PyRichards.classes:Lorg/graalvm/polyglot/Value;
5: aload 0
aload 0
getfield com.oracle.graal.python.benchmarks.interop.PyRichards.classes:Lorg/graalvm/polyglot/Value;
iconst_1
anewarray java.lang.Object
dup
iconst_0
iconst_1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.polyglot.Value.execute:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
putfield com.oracle.graal.python.benchmarks.interop.PyRichards.PacketClass:Lorg/graalvm/polyglot/Value;
6: aload 0
aload 0
getfield com.oracle.graal.python.benchmarks.interop.PyRichards.classes:Lorg/graalvm/polyglot/Value;
iconst_1
anewarray java.lang.Object
dup
iconst_0
iconst_2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.polyglot.Value.execute:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
putfield com.oracle.graal.python.benchmarks.interop.PyRichards.DeviceTaskRecClass:Lorg/graalvm/polyglot/Value;
7: aload 0
aload 0
getfield com.oracle.graal.python.benchmarks.interop.PyRichards.classes:Lorg/graalvm/polyglot/Value;
iconst_1
anewarray java.lang.Object
dup
iconst_0
iconst_3
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.polyglot.Value.execute:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
putfield com.oracle.graal.python.benchmarks.interop.PyRichards.IdleTaskRecClass:Lorg/graalvm/polyglot/Value;
8: aload 0
aload 0
getfield com.oracle.graal.python.benchmarks.interop.PyRichards.classes:Lorg/graalvm/polyglot/Value;
iconst_1
anewarray java.lang.Object
dup
iconst_0
iconst_4
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.polyglot.Value.execute:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
putfield com.oracle.graal.python.benchmarks.interop.PyRichards.HandlerTaskRecClass:Lorg/graalvm/polyglot/Value;
9: aload 0
aload 0
getfield com.oracle.graal.python.benchmarks.interop.PyRichards.classes:Lorg/graalvm/polyglot/Value;
iconst_1
anewarray java.lang.Object
dup
iconst_0
iconst_5
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.polyglot.Value.execute:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
putfield com.oracle.graal.python.benchmarks.interop.PyRichards.WorkerTaskRecClass:Lorg/graalvm/polyglot/Value;
10: aload 0
getfield com.oracle.graal.python.benchmarks.interop.PyRichards.classes:Lorg/graalvm/polyglot/Value;
iconst_1
anewarray java.lang.Object
dup
iconst_0
bipush 6
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.polyglot.Value.execute:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
iconst_0
anewarray java.lang.Object
invokevirtual org.graalvm.polyglot.Value.newInstance:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
putstatic com.oracle.graal.python.benchmarks.interop.PyRichards.taskWorkArea:Lorg/graalvm/polyglot/Value;
11: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lcom/oracle/graal/python/benchmarks/interop/PyRichards;
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Setup()
public org.graalvm.polyglot.Value Packet(org.graalvm.polyglot.Value, int, int);
descriptor: (Lorg/graalvm/polyglot/Value;II)Lorg/graalvm/polyglot/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield com.oracle.graal.python.benchmarks.interop.PyRichards.PacketClass:Lorg/graalvm/polyglot/Value;
iconst_3
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
dup
iconst_1
iload 2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_2
iload 3
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.polyglot.Value.newInstance:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/graal/python/benchmarks/interop/PyRichards;
0 1 1 l Lorg/graalvm/polyglot/Value;
0 1 2 i I
0 1 3 k I
MethodParameters:
Name Flags
l
i
k
public org.graalvm.polyglot.Value IdleTaskRec();
descriptor: ()Lorg/graalvm/polyglot/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.graal.python.benchmarks.interop.PyRichards.IdleTaskRecClass:Lorg/graalvm/polyglot/Value;
iconst_0
anewarray java.lang.Object
invokevirtual org.graalvm.polyglot.Value.newInstance:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/graal/python/benchmarks/interop/PyRichards;
public org.graalvm.polyglot.Value WorkerTaskRec();
descriptor: ()Lorg/graalvm/polyglot/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.graal.python.benchmarks.interop.PyRichards.WorkerTaskRecClass:Lorg/graalvm/polyglot/Value;
iconst_0
anewarray java.lang.Object
invokevirtual org.graalvm.polyglot.Value.newInstance:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/graal/python/benchmarks/interop/PyRichards;
public org.graalvm.polyglot.Value HandlerTaskRec();
descriptor: ()Lorg/graalvm/polyglot/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.graal.python.benchmarks.interop.PyRichards.HandlerTaskRecClass:Lorg/graalvm/polyglot/Value;
iconst_0
anewarray java.lang.Object
invokevirtual org.graalvm.polyglot.Value.newInstance:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/graal/python/benchmarks/interop/PyRichards;
public org.graalvm.polyglot.Value DeviceTaskRec();
descriptor: ()Lorg/graalvm/polyglot/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.graal.python.benchmarks.interop.PyRichards.DeviceTaskRecClass:Lorg/graalvm/polyglot/Value;
iconst_0
anewarray java.lang.Object
invokevirtual org.graalvm.polyglot.Value.newInstance:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/graal/python/benchmarks/interop/PyRichards;
public static int getHoldCount();
descriptor: ()I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: getstatic com.oracle.graal.python.benchmarks.interop.PyRichards.taskWorkArea:Lorg/graalvm/polyglot/Value;
ldc "holdCount"
invokestatic com.oracle.graal.python.benchmarks.interop.PyRichards.getIntField:(Lorg/graalvm/polyglot/Value;Ljava/lang/String;)I
ireturn
LocalVariableTable:
Start End Slot Name Signature
public static void setHoldCount(int);
descriptor: (I)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: getstatic com.oracle.graal.python.benchmarks.interop.PyRichards.taskWorkArea:Lorg/graalvm/polyglot/Value;
ldc "holdCount"
iload 0
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokestatic com.oracle.graal.python.benchmarks.interop.PyRichards.setField:(Lorg/graalvm/polyglot/Value;Ljava/lang/String;Ljava/lang/Object;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 i I
MethodParameters:
Name Flags
i
public static int getQpktCount();
descriptor: ()I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: getstatic com.oracle.graal.python.benchmarks.interop.PyRichards.taskWorkArea:Lorg/graalvm/polyglot/Value;
ldc "qpktCount"
invokestatic com.oracle.graal.python.benchmarks.interop.PyRichards.getIntField:(Lorg/graalvm/polyglot/Value;Ljava/lang/String;)I
ireturn
LocalVariableTable:
Start End Slot Name Signature
public static void setQpktCount(int);
descriptor: (I)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: getstatic com.oracle.graal.python.benchmarks.interop.PyRichards.taskWorkArea:Lorg/graalvm/polyglot/Value;
ldc "qpktCount"
iload 0
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokestatic com.oracle.graal.python.benchmarks.interop.PyRichards.setField:(Lorg/graalvm/polyglot/Value;Ljava/lang/String;Ljava/lang/Object;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 i I
MethodParameters:
Name Flags
i
public void richards3(org.openjdk.jmh.infra.Blackhole);
descriptor: (Lorg/openjdk/jmh/infra/Blackhole;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=4, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: goto 24
2: StackMap locals: int
StackMap stack:
iconst_0
invokestatic com.oracle.graal.python.benchmarks.interop.PyRichards.setHoldCount:(I)V
3: iconst_0
invokestatic com.oracle.graal.python.benchmarks.interop.PyRichards.setQpktCount:(I)V
4: aload 1
new com.oracle.graal.python.benchmarks.interop.IdleTask
dup
iconst_1
iconst_1
getstatic com.oracle.graal.python.benchmarks.interop.PyRichards.None:Lorg/graalvm/polyglot/Value;
new com.oracle.graal.python.benchmarks.interop.TaskState
dup
invokespecial com.oracle.graal.python.benchmarks.interop.TaskState.<init>:()V
invokevirtual com.oracle.graal.python.benchmarks.interop.TaskState.running:()Lcom/oracle/graal/python/benchmarks/interop/TaskState;
aload 0
invokevirtual com.oracle.graal.python.benchmarks.interop.PyRichards.IdleTaskRec:()Lorg/graalvm/polyglot/Value;
invokespecial com.oracle.graal.python.benchmarks.interop.IdleTask.<init>:(IILorg/graalvm/polyglot/Value;Lcom/oracle/graal/python/benchmarks/interop/TaskState;Lorg/graalvm/polyglot/Value;)V
invokevirtual org.openjdk.jmh.infra.Blackhole.consume:(Ljava/lang/Object;)V
5: aload 0
getstatic com.oracle.graal.python.benchmarks.interop.PyRichards.None:Lorg/graalvm/polyglot/Value;
iconst_0
sipush 1001
invokevirtual com.oracle.graal.python.benchmarks.interop.PyRichards.Packet:(Lorg/graalvm/polyglot/Value;II)Lorg/graalvm/polyglot/Value;
astore 3
start local 3 6: aload 0
aload 3
iconst_0
sipush 1001
invokevirtual com.oracle.graal.python.benchmarks.interop.PyRichards.Packet:(Lorg/graalvm/polyglot/Value;II)Lorg/graalvm/polyglot/Value;
astore 3
7: aload 1
new com.oracle.graal.python.benchmarks.interop.WorkTask
dup
iconst_2
sipush 1000
aload 3
new com.oracle.graal.python.benchmarks.interop.TaskState
dup
invokespecial com.oracle.graal.python.benchmarks.interop.TaskState.<init>:()V
invokevirtual com.oracle.graal.python.benchmarks.interop.TaskState.waitingWithPacket:()Lcom/oracle/graal/python/benchmarks/interop/TaskState;
aload 0
invokevirtual com.oracle.graal.python.benchmarks.interop.PyRichards.WorkerTaskRec:()Lorg/graalvm/polyglot/Value;
invokespecial com.oracle.graal.python.benchmarks.interop.WorkTask.<init>:(IILorg/graalvm/polyglot/Value;Lcom/oracle/graal/python/benchmarks/interop/TaskState;Lorg/graalvm/polyglot/Value;)V
invokevirtual org.openjdk.jmh.infra.Blackhole.consume:(Ljava/lang/Object;)V
8: aload 0
getstatic com.oracle.graal.python.benchmarks.interop.PyRichards.None:Lorg/graalvm/polyglot/Value;
iconst_5
sipush 1000
invokevirtual com.oracle.graal.python.benchmarks.interop.PyRichards.Packet:(Lorg/graalvm/polyglot/Value;II)Lorg/graalvm/polyglot/Value;
astore 3
9: aload 0
aload 3
iconst_5
sipush 1000
invokevirtual com.oracle.graal.python.benchmarks.interop.PyRichards.Packet:(Lorg/graalvm/polyglot/Value;II)Lorg/graalvm/polyglot/Value;
astore 3
10: aload 0
aload 3
iconst_5
sipush 1000
invokevirtual com.oracle.graal.python.benchmarks.interop.PyRichards.Packet:(Lorg/graalvm/polyglot/Value;II)Lorg/graalvm/polyglot/Value;
astore 3
11: aload 1
new com.oracle.graal.python.benchmarks.interop.HandlerTask
dup
iconst_3
sipush 2000
aload 3
new com.oracle.graal.python.benchmarks.interop.TaskState
dup
invokespecial com.oracle.graal.python.benchmarks.interop.TaskState.<init>:()V
invokevirtual com.oracle.graal.python.benchmarks.interop.TaskState.waitingWithPacket:()Lcom/oracle/graal/python/benchmarks/interop/TaskState;
aload 0
invokevirtual com.oracle.graal.python.benchmarks.interop.PyRichards.HandlerTaskRec:()Lorg/graalvm/polyglot/Value;
invokespecial com.oracle.graal.python.benchmarks.interop.HandlerTask.<init>:(IILorg/graalvm/polyglot/Value;Lcom/oracle/graal/python/benchmarks/interop/TaskState;Lorg/graalvm/polyglot/Value;)V
invokevirtual org.openjdk.jmh.infra.Blackhole.consume:(Ljava/lang/Object;)V
12: aload 0
getstatic com.oracle.graal.python.benchmarks.interop.PyRichards.None:Lorg/graalvm/polyglot/Value;
bipush 6
sipush 1000
invokevirtual com.oracle.graal.python.benchmarks.interop.PyRichards.Packet:(Lorg/graalvm/polyglot/Value;II)Lorg/graalvm/polyglot/Value;
astore 3
13: aload 0
aload 3
bipush 6
sipush 1000
invokevirtual com.oracle.graal.python.benchmarks.interop.PyRichards.Packet:(Lorg/graalvm/polyglot/Value;II)Lorg/graalvm/polyglot/Value;
astore 3
14: aload 0
aload 3
bipush 6
sipush 1000
invokevirtual com.oracle.graal.python.benchmarks.interop.PyRichards.Packet:(Lorg/graalvm/polyglot/Value;II)Lorg/graalvm/polyglot/Value;
astore 3
15: aload 1
new com.oracle.graal.python.benchmarks.interop.HandlerTask
dup
iconst_4
sipush 3000
aload 3
new com.oracle.graal.python.benchmarks.interop.TaskState
dup
invokespecial com.oracle.graal.python.benchmarks.interop.TaskState.<init>:()V
invokevirtual com.oracle.graal.python.benchmarks.interop.TaskState.waitingWithPacket:()Lcom/oracle/graal/python/benchmarks/interop/TaskState;
aload 0
invokevirtual com.oracle.graal.python.benchmarks.interop.PyRichards.HandlerTaskRec:()Lorg/graalvm/polyglot/Value;
invokespecial com.oracle.graal.python.benchmarks.interop.HandlerTask.<init>:(IILorg/graalvm/polyglot/Value;Lcom/oracle/graal/python/benchmarks/interop/TaskState;Lorg/graalvm/polyglot/Value;)V
invokevirtual org.openjdk.jmh.infra.Blackhole.consume:(Ljava/lang/Object;)V
16: getstatic com.oracle.graal.python.benchmarks.interop.PyRichards.None:Lorg/graalvm/polyglot/Value;
astore 3
17: aload 1
new com.oracle.graal.python.benchmarks.interop.DeviceTask
dup
iconst_5
sipush 4000
aload 3
new com.oracle.graal.python.benchmarks.interop.TaskState
dup
invokespecial com.oracle.graal.python.benchmarks.interop.TaskState.<init>:()V
invokevirtual com.oracle.graal.python.benchmarks.interop.TaskState.waiting:()Lcom/oracle/graal/python/benchmarks/interop/TaskState;
aload 0
invokevirtual com.oracle.graal.python.benchmarks.interop.PyRichards.DeviceTaskRec:()Lorg/graalvm/polyglot/Value;
invokespecial com.oracle.graal.python.benchmarks.interop.DeviceTask.<init>:(IILorg/graalvm/polyglot/Value;Lcom/oracle/graal/python/benchmarks/interop/TaskState;Lorg/graalvm/polyglot/Value;)V
invokevirtual org.openjdk.jmh.infra.Blackhole.consume:(Ljava/lang/Object;)V
18: aload 1
new com.oracle.graal.python.benchmarks.interop.DeviceTask
dup
bipush 6
sipush 5000
aload 3
new com.oracle.graal.python.benchmarks.interop.TaskState
dup
invokespecial com.oracle.graal.python.benchmarks.interop.TaskState.<init>:()V
invokevirtual com.oracle.graal.python.benchmarks.interop.TaskState.waiting:()Lcom/oracle/graal/python/benchmarks/interop/TaskState;
aload 0
invokevirtual com.oracle.graal.python.benchmarks.interop.PyRichards.DeviceTaskRec:()Lorg/graalvm/polyglot/Value;
invokespecial com.oracle.graal.python.benchmarks.interop.DeviceTask.<init>:(IILorg/graalvm/polyglot/Value;Lcom/oracle/graal/python/benchmarks/interop/TaskState;Lorg/graalvm/polyglot/Value;)V
invokevirtual org.openjdk.jmh.infra.Blackhole.consume:(Ljava/lang/Object;)V
19: aload 0
invokevirtual com.oracle.graal.python.benchmarks.interop.PyRichards.schedule:()V
20: invokestatic com.oracle.graal.python.benchmarks.interop.PyRichards.getHoldCount:()I
sipush 9297
if_icmpne 22
invokestatic com.oracle.graal.python.benchmarks.interop.PyRichards.getQpktCount:()I
sipush 23246
if_icmpne 22
21: goto 23
22: StackMap locals: org.graalvm.polyglot.Value
StackMap stack:
return
end local 3 23: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
24: iload 2
aload 0
getfield com.oracle.graal.python.benchmarks.interop.PyRichards.arg1:I
if_icmplt 2
end local 2 25: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Lcom/oracle/graal/python/benchmarks/interop/PyRichards;
0 26 1 bh Lorg/openjdk/jmh/infra/Blackhole;
1 25 2 i I
6 23 3 wkq Lorg/graalvm/polyglot/Value;
RuntimeVisibleAnnotations:
org.openjdk.jmh.annotations.Benchmark()
MethodParameters:
Name Flags
bh
public static void trace(int);
descriptor: (I)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: getstatic com.oracle.graal.python.benchmarks.interop.PyRichards.layout:I
iconst_1
isub
putstatic com.oracle.graal.python.benchmarks.interop.PyRichards.layout:I
1: getstatic com.oracle.graal.python.benchmarks.interop.PyRichards.layout:I
ifgt 4
2: getstatic java.lang.System.out:Ljava/io/PrintStream;
invokevirtual java.io.PrintStream.println:()V
3: bipush 50
putstatic com.oracle.graal.python.benchmarks.interop.PyRichards.layout:I
4: StackMap locals:
StackMap stack:
getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
iload 0
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
5: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 a I
MethodParameters:
Name Flags
a
void schedule();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=2, args_size=1
start local 0 0: invokestatic com.oracle.graal.python.benchmarks.interop.PyRichards.getTaskList:()Lcom/oracle/graal/python/benchmarks/interop/Task;
astore 1
start local 1 1: goto 6
2: StackMap locals: com.oracle.graal.python.benchmarks.interop.Task
StackMap stack:
aload 1
invokevirtual com.oracle.graal.python.benchmarks.interop.Task.isTaskHoldingOrWaiting:()Z
ifeq 5
3: aload 1
getfield com.oracle.graal.python.benchmarks.interop.Task.link:Lcom/oracle/graal/python/benchmarks/interop/TaskState;
checkcast com.oracle.graal.python.benchmarks.interop.Task
astore 1
4: goto 6
5: StackMap locals:
StackMap stack:
aload 1
invokevirtual com.oracle.graal.python.benchmarks.interop.Task.runTask:()Lcom/oracle/graal/python/benchmarks/interop/TaskState;
checkcast com.oracle.graal.python.benchmarks.interop.Task
astore 1
6: StackMap locals:
StackMap stack:
aload 1
ifnonnull 2
7: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/oracle/graal/python/benchmarks/interop/PyRichards;
1 8 1 t Lcom/oracle/graal/python/benchmarks/interop/Task;
public static com.oracle.graal.python.benchmarks.interop.Task getTaskList();
descriptor: ()Lcom/oracle/graal/python/benchmarks/interop/Task;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=0
0: getstatic com.oracle.graal.python.benchmarks.interop.PyRichards.taskWorkArea:Lorg/graalvm/polyglot/Value;
ldc "taskList"
invokestatic com.oracle.graal.python.benchmarks.interop.PyRichards.getField:(Lorg/graalvm/polyglot/Value;Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
astore 0
start local 0 1: aload 0
invokestatic com.oracle.graal.python.benchmarks.interop.PyRichards.isNone:(Lorg/graalvm/polyglot/Value;)Z
ifeq 2
aconst_null
goto 3
StackMap locals: org.graalvm.polyglot.Value
StackMap stack:
2: aload 0
invokevirtual org.graalvm.polyglot.Value.asHostObject:()Ljava/lang/Object;
checkcast com.oracle.graal.python.benchmarks.interop.Task
StackMap locals:
StackMap stack: com.oracle.graal.python.benchmarks.interop.Task
3: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
1 4 0 t Lorg/graalvm/polyglot/Value;
public static void setField(org.graalvm.polyglot.Value, java.lang.String, java.lang.Object);
descriptor: (Lorg/graalvm/polyglot/Value;Ljava/lang/String;Ljava/lang/Object;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokevirtual org.graalvm.polyglot.Value.putMember:(Ljava/lang/String;Ljava/lang/Object;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 clazz Lorg/graalvm/polyglot/Value;
0 2 1 member Ljava/lang/String;
0 2 2 val Ljava/lang/Object;
MethodParameters:
Name Flags
clazz
member
val
public static org.graalvm.polyglot.Value getField(org.graalvm.polyglot.Value, java.lang.String);
descriptor: (Lorg/graalvm/polyglot/Value;Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
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 clazz Lorg/graalvm/polyglot/Value;
0 1 1 member Ljava/lang/String;
MethodParameters:
Name Flags
clazz
member
public static int getIntField(org.graalvm.polyglot.Value, java.lang.String);
descriptor: (Lorg/graalvm/polyglot/Value;Ljava/lang/String;)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual org.graalvm.polyglot.Value.getMember:(Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
invokevirtual org.graalvm.polyglot.Value.asInt:()I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 clazz Lorg/graalvm/polyglot/Value;
0 1 1 member Ljava/lang/String;
MethodParameters:
Name Flags
clazz
member
public static boolean isNone(org.graalvm.polyglot.Value);
descriptor: (Lorg/graalvm/polyglot/Value;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
ifnonnull 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.polyglot.Value.isNull:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 v Lorg/graalvm/polyglot/Value;
MethodParameters:
Name Flags
v
}
SourceFile: "PyRichards.java"