public final class org.graalvm.compiler.hotspot.CompilationStatistics
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: org.graalvm.compiler.hotspot.CompilationStatistics
super_class: java.lang.Object
{
private static final long RESOLUTION;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 100000000
private static final boolean ENABLED;
descriptor: Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final org.graalvm.compiler.hotspot.CompilationStatistics DUMMY;
descriptor: Lorg/graalvm/compiler/hotspot/CompilationStatistics;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static java.util.concurrent.ConcurrentLinkedDeque<org.graalvm.compiler.hotspot.CompilationStatistics> list;
descriptor: Ljava/util/concurrent/ConcurrentLinkedDeque;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Signature: Ljava/util/concurrent/ConcurrentLinkedDeque<Lorg/graalvm/compiler/hotspot/CompilationStatistics;>;
private static final java.lang.ThreadLocal<java.util.Deque<org.graalvm.compiler.hotspot.CompilationStatistics>> current;
descriptor: Ljava/lang/ThreadLocal;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/lang/ThreadLocal<Ljava/util/Deque<Lorg/graalvm/compiler/hotspot/CompilationStatistics;>;>;
private static long zeroTime;
descriptor: J
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private final long startTime;
descriptor: J
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
RuntimeVisibleAnnotations:
org.graalvm.compiler.hotspot.CompilationStatistics$NotReported()
private long threadAllocatedBytesStart;
descriptor: J
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
org.graalvm.compiler.hotspot.CompilationStatistics$NotReported()
private int bytecodeCount;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int codeSize;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private long duration;
descriptor: J
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
org.graalvm.compiler.hotspot.CompilationStatistics$TimeValue()
private long memoryUsed;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private final boolean osr;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String holder;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String name;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String signature;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: getstatic org.graalvm.compiler.hotspot.CompilationStatistics$Options.UseCompilationStatistics:Lorg/graalvm/compiler/options/OptionValue;
invokevirtual org.graalvm.compiler.options.OptionValue.getValue:()Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
putstatic org.graalvm.compiler.hotspot.CompilationStatistics.ENABLED:Z
1: new org.graalvm.compiler.hotspot.CompilationStatistics
dup
aconst_null
iconst_0
invokespecial org.graalvm.compiler.hotspot.CompilationStatistics.<init>:(Ljdk/vm/ci/hotspot/HotSpotResolvedJavaMethod;Z)V
putstatic org.graalvm.compiler.hotspot.CompilationStatistics.DUMMY:Lorg/graalvm/compiler/hotspot/CompilationStatistics;
2: new java.util.concurrent.ConcurrentLinkedDeque
dup
invokespecial java.util.concurrent.ConcurrentLinkedDeque.<init>:()V
putstatic org.graalvm.compiler.hotspot.CompilationStatistics.list:Ljava/util/concurrent/ConcurrentLinkedDeque;
3: new org.graalvm.compiler.hotspot.CompilationStatistics$1
dup
invokespecial org.graalvm.compiler.hotspot.CompilationStatistics$1.<init>:()V
putstatic org.graalvm.compiler.hotspot.CompilationStatistics.current:Ljava/lang/ThreadLocal;
4: invokestatic java.lang.System.nanoTime:()J
putstatic org.graalvm.compiler.hotspot.CompilationStatistics.zeroTime:J
return
LocalVariableTable:
Start End Slot Name Signature
private static long getThreadAllocatedBytes();
descriptor: ()J
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=1, args_size=0
0: invokestatic org.graalvm.compiler.debug.Management.getThreadMXBean:()Ljava/lang/management/ThreadMXBean;
checkcast com.sun.management.ThreadMXBean
astore 0
start local 0 1: aload 0
invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
invokevirtual java.lang.Thread.getId:()J
invokeinterface com.sun.management.ThreadMXBean.getThreadAllocatedBytes:(J)J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
1 2 0 thread Lcom/sun/management/ThreadMXBean;
private void <init>(jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod, boolean);
descriptor: (Ljdk/vm/ci/hotspot/HotSpotResolvedJavaMethod;Z)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iload 2
putfield org.graalvm.compiler.hotspot.CompilationStatistics.osr:Z
2: aload 1
ifnull 10
3: aload 0
aload 1
invokeinterface jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod.getDeclaringClass:()Ljdk/vm/ci/hotspot/HotSpotResolvedObjectType;
invokeinterface jdk.vm.ci.hotspot.HotSpotResolvedObjectType.getName:()Ljava/lang/String;
putfield org.graalvm.compiler.hotspot.CompilationStatistics.holder:Ljava/lang/String;
4: aload 0
aload 1
invokeinterface jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod.getName:()Ljava/lang/String;
putfield org.graalvm.compiler.hotspot.CompilationStatistics.name:Ljava/lang/String;
5: aload 0
aload 1
invokeinterface jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod.getSignature:()Ljdk/vm/ci/meta/Signature;
invokeinterface jdk.vm.ci.meta.Signature.toMethodDescriptor:()Ljava/lang/String;
putfield org.graalvm.compiler.hotspot.CompilationStatistics.signature:Ljava/lang/String;
6: aload 0
invokestatic java.lang.System.nanoTime:()J
putfield org.graalvm.compiler.hotspot.CompilationStatistics.startTime:J
7: aload 0
aload 1
invokeinterface jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod.getCodeSize:()I
putfield org.graalvm.compiler.hotspot.CompilationStatistics.bytecodeCount:I
8: aload 0
invokestatic org.graalvm.compiler.hotspot.CompilationStatistics.getThreadAllocatedBytes:()J
putfield org.graalvm.compiler.hotspot.CompilationStatistics.threadAllocatedBytesStart:J
9: goto 14
10: StackMap locals: org.graalvm.compiler.hotspot.CompilationStatistics jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod int
StackMap stack:
aload 0
ldc ""
putfield org.graalvm.compiler.hotspot.CompilationStatistics.holder:Ljava/lang/String;
11: aload 0
ldc ""
putfield org.graalvm.compiler.hotspot.CompilationStatistics.name:Ljava/lang/String;
12: aload 0
ldc ""
putfield org.graalvm.compiler.hotspot.CompilationStatistics.signature:Ljava/lang/String;
13: aload 0
lconst_0
putfield org.graalvm.compiler.hotspot.CompilationStatistics.startTime:J
14: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/graalvm/compiler/hotspot/CompilationStatistics;
0 15 1 method Ljdk/vm/ci/hotspot/HotSpotResolvedJavaMethod;
0 15 2 osr Z
MethodParameters:
Name Flags
method
osr
public void finish(jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod, jdk.vm.ci.hotspot.HotSpotInstalledCode);
descriptor: (Ljdk/vm/ci/hotspot/HotSpotResolvedJavaMethod;Ljdk/vm/ci/hotspot/HotSpotInstalledCode;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: getstatic org.graalvm.compiler.hotspot.CompilationStatistics.ENABLED:Z
ifeq 7
1: aload 0
invokestatic java.lang.System.nanoTime:()J
aload 0
getfield org.graalvm.compiler.hotspot.CompilationStatistics.startTime:J
lsub
putfield org.graalvm.compiler.hotspot.CompilationStatistics.duration:J
2: aload 0
aload 2
invokevirtual jdk.vm.ci.hotspot.HotSpotInstalledCode.getCodeSize:()J
l2i
putfield org.graalvm.compiler.hotspot.CompilationStatistics.codeSize:I
3: aload 0
invokestatic org.graalvm.compiler.hotspot.CompilationStatistics.getThreadAllocatedBytes:()J
aload 0
getfield org.graalvm.compiler.hotspot.CompilationStatistics.threadAllocatedBytesStart:J
lsub
putfield org.graalvm.compiler.hotspot.CompilationStatistics.memoryUsed:J
4: getstatic org.graalvm.compiler.hotspot.CompilationStatistics.current:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
checkcast java.util.Deque
invokeinterface java.util.Deque.getLast:()Ljava/lang/Object;
aload 0
if_acmpeq 6
5: new java.lang.RuntimeException
dup
ldc "mismatch in finish()"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.hotspot.CompilationStatistics.current:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
checkcast java.util.Deque
invokeinterface java.util.Deque.removeLast:()Ljava/lang/Object;
pop
7: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/graalvm/compiler/hotspot/CompilationStatistics;
0 8 1 method Ljdk/vm/ci/hotspot/HotSpotResolvedJavaMethod;
0 8 2 code Ljdk/vm/ci/hotspot/HotSpotInstalledCode;
MethodParameters:
Name Flags
method
code
public static org.graalvm.compiler.hotspot.CompilationStatistics current();
descriptor: ()Lorg/graalvm/compiler/hotspot/CompilationStatistics;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic org.graalvm.compiler.hotspot.CompilationStatistics.current:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
checkcast java.util.Deque
invokeinterface java.util.Deque.isEmpty:()Z
ifeq 1
aconst_null
goto 2
StackMap locals:
StackMap stack:
1: getstatic org.graalvm.compiler.hotspot.CompilationStatistics.current:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
checkcast java.util.Deque
invokeinterface java.util.Deque.getLast:()Ljava/lang/Object;
checkcast org.graalvm.compiler.hotspot.CompilationStatistics
StackMap locals:
StackMap stack: org.graalvm.compiler.hotspot.CompilationStatistics
2: areturn
LocalVariableTable:
Start End Slot Name Signature
public static org.graalvm.compiler.hotspot.CompilationStatistics create(jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod, boolean);
descriptor: (Ljdk/vm/ci/hotspot/HotSpotResolvedJavaMethod;Z)Lorg/graalvm/compiler/hotspot/CompilationStatistics;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: getstatic org.graalvm.compiler.hotspot.CompilationStatistics.ENABLED:Z
ifeq 5
1: new org.graalvm.compiler.hotspot.CompilationStatistics
dup
aload 0
iload 1
invokespecial org.graalvm.compiler.hotspot.CompilationStatistics.<init>:(Ljdk/vm/ci/hotspot/HotSpotResolvedJavaMethod;Z)V
astore 2
start local 2 2: getstatic org.graalvm.compiler.hotspot.CompilationStatistics.list:Ljava/util/concurrent/ConcurrentLinkedDeque;
aload 2
invokevirtual java.util.concurrent.ConcurrentLinkedDeque.add:(Ljava/lang/Object;)Z
pop
3: getstatic org.graalvm.compiler.hotspot.CompilationStatistics.current:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
checkcast java.util.Deque
aload 2
invokeinterface java.util.Deque.addLast:(Ljava/lang/Object;)V
4: aload 2
areturn
end local 2 5: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.hotspot.CompilationStatistics.DUMMY:Lorg/graalvm/compiler/hotspot/CompilationStatistics;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 method Ljdk/vm/ci/hotspot/HotSpotResolvedJavaMethod;
0 6 1 isOSR Z
2 5 2 stats Lorg/graalvm/compiler/hotspot/CompilationStatistics;
MethodParameters:
Name Flags
method
isOSR
public static void clear(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=8, locals=21, args_size=1
start local 0 0: getstatic org.graalvm.compiler.hotspot.CompilationStatistics.ENABLED:Z
ifne 2
1: return
2: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.hotspot.CompilationStatistics.list:Ljava/util/concurrent/ConcurrentLinkedDeque;
astore 1
start local 1 3: getstatic org.graalvm.compiler.hotspot.CompilationStatistics.zeroTime:J
lstore 2
start local 2 4: new java.util.concurrent.ConcurrentLinkedDeque
dup
invokespecial java.util.concurrent.ConcurrentLinkedDeque.<init>:()V
putstatic org.graalvm.compiler.hotspot.CompilationStatistics.list:Ljava/util/concurrent/ConcurrentLinkedDeque;
5: invokestatic java.lang.System.nanoTime:()J
putstatic org.graalvm.compiler.hotspot.CompilationStatistics.zeroTime:J
6: new java.util.Date
dup
invokespecial java.util.Date.<init>:()V
astore 4
start local 4 7: new java.lang.StringBuilder
dup
aload 4
invokevirtual java.util.Date.getYear:()I
sipush 1900
iadd
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;
aload 4
invokevirtual java.util.Date.getMonth:()I
iconst_1
iadd
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "-"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
invokevirtual java.util.Date.getDate:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "-"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
invokevirtual java.util.Date.getHours:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
aload 4
invokevirtual java.util.Date.getMinutes:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 5
start local 5 8: aload 1
aload 0
aload 5
invokestatic org.graalvm.compiler.hotspot.CompilationStatistics.dumpCompilations:(Ljava/util/concurrent/ConcurrentLinkedDeque;Ljava/lang/String;Ljava/lang/String;)V
9: aconst_null
astore 6
aconst_null
astore 7
10: new java.io.FileOutputStream
dup
new java.lang.StringBuilder
dup
ldc "timeline_"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "_"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ".csv"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
iconst_1
invokespecial java.io.FileOutputStream.<init>:(Ljava/lang/String;Z)V
astore 8
start local 8 11: new java.io.PrintStream
dup
aload 8
invokespecial java.io.PrintStream.<init>:(Ljava/io/OutputStream;)V
astore 9
start local 9 12: sipush 10000
newarray 11
astore 10
start local 10 13: iconst_0
istore 11
start local 11 14: aload 1
invokevirtual java.util.concurrent.ConcurrentLinkedDeque.iterator:()Ljava/util/Iterator;
astore 13
goto 31
StackMap locals: java.lang.String java.util.concurrent.ConcurrentLinkedDeque long java.util.Date java.lang.String java.lang.Throwable java.lang.Throwable java.io.FileOutputStream java.io.PrintStream long[] int top java.util.Iterator
StackMap stack:
15: aload 13
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.hotspot.CompilationStatistics
astore 12
start local 12 16: aload 12
getfield org.graalvm.compiler.hotspot.CompilationStatistics.startTime:J
lload 2
lsub
lstore 14
start local 14 17: aload 12
getfield org.graalvm.compiler.hotspot.CompilationStatistics.duration:J
lstore 16
start local 16 18: lload 14
lconst_0
lcmp
ifge 21
19: lload 16
lload 14
lneg
lsub
lstore 16
20: lconst_0
lstore 14
21: StackMap locals: java.lang.String java.util.concurrent.ConcurrentLinkedDeque long java.util.Date java.lang.String java.lang.Throwable java.lang.Throwable java.io.FileOutputStream java.io.PrintStream long[] int org.graalvm.compiler.hotspot.CompilationStatistics java.util.Iterator long long
StackMap stack:
lload 14
ldc 100000000
ldiv
l2i
istore 18
start local 18 22: ldc 100000000
lload 14
ldc 100000000
lrem
lsub
lstore 19
start local 19 23: goto 30
24: StackMap locals: int long
StackMap stack:
iload 18
iload 11
if_icmple 26
25: iload 18
istore 11
26: StackMap locals:
StackMap stack:
aload 10
iload 18
dup2
laload
lload 19
lload 16
invokestatic java.lang.Math.min:(JJ)J
ladd
lastore
27: lload 16
lload 19
lsub
lstore 16
28: iinc 18 1
29: ldc 100000000
lstore 19
30: StackMap locals:
StackMap stack:
iload 18
aload 10
arraylength
if_icmpge 31
lload 16
lconst_0
lcmp
ifgt 24
end local 19 end local 18 end local 16 end local 14 end local 12 31: StackMap locals: java.lang.String java.util.concurrent.ConcurrentLinkedDeque long java.util.Date java.lang.String java.lang.Throwable java.lang.Throwable java.io.FileOutputStream java.io.PrintStream long[] int top java.util.Iterator
StackMap stack:
aload 13
invokeinterface java.util.Iterator.hasNext:()Z
ifne 15
32: ldc "stats.timeline.name"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 12
start local 12 33: aload 12
ifnull 35
aload 12
invokevirtual java.lang.String.isEmpty:()Z
ifne 35
34: aload 9
ldc "%s%c"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 12
invokestatic org.graalvm.compiler.debug.CSVUtil$Escape.escape:(Ljava/lang/String;)Ljava/lang/String;
aastore
dup
iconst_1
bipush 59
invokestatic java.lang.Character.valueOf:(C)Ljava/lang/Character;
aastore
invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
pop
35: StackMap locals: java.lang.String java.util.concurrent.ConcurrentLinkedDeque long java.util.Date java.lang.String java.lang.Throwable java.lang.Throwable java.io.FileOutputStream java.io.PrintStream long[] int java.lang.String
StackMap stack:
iconst_0
istore 13
start local 13 36: goto 39
37: StackMap locals: int
StackMap stack:
aload 9
ldc "%d%c"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 10
iload 13
laload
invokestatic org.graalvm.compiler.hotspot.CompilationStatistics.normalize:(J)J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
dup
iconst_1
bipush 59
invokestatic java.lang.Character.valueOf:(C)Ljava/lang/Character;
aastore
invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
pop
38: iinc 13 1
StackMap locals:
StackMap stack:
39: iload 13
iload 11
if_icmplt 37
end local 13 40: aload 9
ldc "%d"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 10
iload 11
laload
invokestatic org.graalvm.compiler.hotspot.CompilationStatistics.normalize:(J)J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
pop
41: aload 9
invokevirtual java.io.PrintStream.println:()V
end local 12 end local 11 end local 10 42: aload 9
ifnull 45
aload 9
invokevirtual java.io.PrintStream.close:()V
goto 45
StackMap locals: java.lang.String java.util.concurrent.ConcurrentLinkedDeque long java.util.Date java.lang.String java.lang.Throwable java.lang.Throwable java.io.FileOutputStream java.io.PrintStream
StackMap stack: java.lang.Throwable
43: astore 6
aload 9
ifnull 44
aload 9
invokevirtual java.io.PrintStream.close:()V
end local 9 StackMap locals:
StackMap stack:
44: aload 6
athrow
StackMap locals:
StackMap stack:
45: aload 8
ifnull 55
aload 8
invokevirtual java.io.FileOutputStream.close:()V
goto 55
StackMap locals:
StackMap stack: java.lang.Throwable
46: astore 7
aload 6
ifnonnull 47
aload 7
astore 6
goto 48
StackMap locals:
StackMap stack:
47: aload 6
aload 7
if_acmpeq 48
aload 6
aload 7
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
48: aload 8
ifnull 49
aload 8
invokevirtual java.io.FileOutputStream.close:()V
end local 8 StackMap locals:
StackMap stack:
49: aload 6
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
50: astore 7
aload 6
ifnonnull 51
aload 7
astore 6
goto 52
StackMap locals:
StackMap stack:
51: aload 6
aload 7
if_acmpeq 52
aload 6
aload 7
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
52: aload 6
athrow
end local 5 end local 4 end local 2 end local 1 53: StackMap locals: java.lang.String
StackMap stack: java.lang.Exception
astore 1
start local 1 54: new java.lang.RuntimeException
dup
aload 1
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 1 55: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 56 0 dumpName Ljava/lang/String;
3 53 1 snapshot Ljava/util/concurrent/ConcurrentLinkedDeque<Lorg/graalvm/compiler/hotspot/CompilationStatistics;>;
4 53 2 snapshotZeroTime J
7 53 4 now Ljava/util/Date;
8 53 5 dateString Ljava/lang/String;
11 49 8 fos Ljava/io/FileOutputStream;
12 44 9 out Ljava/io/PrintStream;
13 42 10 timeSpent [J
14 42 11 maxTick I
16 31 12 stats Lorg/graalvm/compiler/hotspot/CompilationStatistics;
17 31 14 start J
18 31 16 duration J
22 31 18 tick I
23 31 19 timeLeft J
33 42 12 timelineName Ljava/lang/String;
36 40 13 i I
54 55 1 e Ljava/lang/Exception;
Exception table:
from to target type
12 42 43 any
11 45 46 any
10 50 50 any
2 53 53 Class java.lang.Exception
MethodParameters:
Name Flags
dumpName
private static long normalize(long);
descriptor: (J)J
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: lload 0
ldc 100
lmul
ldc 100000000
ldiv
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 time J
MethodParameters:
Name Flags
time
protected static void dumpCompilations(java.util.concurrent.ConcurrentLinkedDeque<org.graalvm.compiler.hotspot.CompilationStatistics>, java.lang.String, java.lang.String);
descriptor: (Ljava/util/concurrent/ConcurrentLinkedDeque;Ljava/lang/String;Ljava/lang/String;)V
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=9, locals=18, args_size=3
start local 0 start local 1 start local 2 0: new java.lang.StringBuilder
dup
ldc "compilations_"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "_"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ".csv"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 3
start local 3 1: bipush 9
istore 4
start local 4 2: aconst_null
astore 5
aconst_null
astore 6
3: new java.io.PrintStream
dup
aload 3
invokespecial java.io.PrintStream.<init>:(Ljava/lang/String;)V
astore 7
start local 7 4: ldc Lorg/graalvm/compiler/hotspot/CompilationStatistics;
invokevirtual java.lang.Class.getDeclaredFields:()[Ljava/lang/reflect/Field;
astore 8
start local 8 5: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 9
start local 9 6: aload 8
dup
astore 13
arraylength
istore 12
iconst_0
istore 11
goto 11
StackMap locals: java.util.concurrent.ConcurrentLinkedDeque java.lang.String java.lang.String java.lang.String int java.lang.Throwable java.lang.Throwable java.io.PrintStream java.lang.reflect.Field[] java.util.ArrayList top int int java.lang.reflect.Field[]
StackMap stack:
7: aload 13
iload 11
aaload
astore 10
start local 10 8: aload 10
invokevirtual java.lang.reflect.Field.getModifiers:()I
invokestatic java.lang.reflect.Modifier.isStatic:(I)Z
ifne 10
aload 10
ldc Lorg/graalvm/compiler/hotspot/CompilationStatistics$NotReported;
invokevirtual java.lang.reflect.Field.isAnnotationPresent:(Ljava/lang/Class;)Z
ifne 10
9: aload 9
aload 10
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
end local 10 10: StackMap locals:
StackMap stack:
iinc 11 1
StackMap locals:
StackMap stack:
11: iload 11
iload 12
if_icmplt 7
12: ldc "%s"
iload 4
aload 9
invokevirtual java.util.ArrayList.size:()I
invokestatic org.graalvm.compiler.debug.CSVUtil.buildFormatString:(Ljava/lang/String;CI)Ljava/lang/String;
astore 10
start local 10 13: aload 7
iload 4
bipush 34
bipush 92
aload 10
aload 9
invokevirtual java.util.ArrayList.toArray:()[Ljava/lang/Object;
invokestatic org.graalvm.compiler.debug.CSVUtil$Escape.println:(Ljava/io/PrintStream;CCCLjava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
pop
14: aload 0
invokevirtual java.util.concurrent.ConcurrentLinkedDeque.iterator:()Ljava/util/Iterator;
astore 12
goto 28
StackMap locals: java.util.concurrent.ConcurrentLinkedDeque java.lang.String java.lang.String java.lang.String int java.lang.Throwable java.lang.Throwable java.io.PrintStream java.lang.reflect.Field[] java.util.ArrayList java.lang.String top java.util.Iterator
StackMap stack:
15: aload 12
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.hotspot.CompilationStatistics
astore 11
start local 11 16: aload 9
invokevirtual java.util.ArrayList.size:()I
anewarray java.lang.Object
astore 13
start local 13 17: iconst_0
istore 14
start local 14 18: goto 26
19: StackMap locals: java.util.concurrent.ConcurrentLinkedDeque java.lang.String java.lang.String java.lang.String int java.lang.Throwable java.lang.Throwable java.io.PrintStream java.lang.reflect.Field[] java.util.ArrayList java.lang.String org.graalvm.compiler.hotspot.CompilationStatistics java.util.Iterator java.lang.Object[] int
StackMap stack:
aload 9
iload 14
invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
checkcast java.lang.reflect.Field
astore 15
start local 15 20: aload 15
ldc Lorg/graalvm/compiler/hotspot/CompilationStatistics$TimeValue;
invokevirtual java.lang.reflect.Field.isAnnotationPresent:(Ljava/lang/Class;)Z
ifeq 24
21: aload 15
aload 11
invokevirtual java.lang.reflect.Field.getLong:(Ljava/lang/Object;)J
l2d
ldc 1000000.0
ddiv
dstore 16
start local 16 22: aload 13
iload 14
getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
ldc "%.3f"
iconst_1
anewarray java.lang.Object
dup
iconst_0
dload 16
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
aastore
invokestatic java.lang.String.format:(Ljava/util/Locale;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
aastore
end local 16 23: goto 25
24: StackMap locals: java.lang.reflect.Field
StackMap stack:
aload 13
iload 14
aload 15
aload 11
invokevirtual java.lang.reflect.Field.get:(Ljava/lang/Object;)Ljava/lang/Object;
aastore
end local 15 25: StackMap locals:
StackMap stack:
iinc 14 1
StackMap locals:
StackMap stack:
26: iload 14
aload 9
invokevirtual java.util.ArrayList.size:()I
if_icmplt 19
end local 14 27: aload 7
iload 4
bipush 34
bipush 92
aload 10
aload 13
invokestatic org.graalvm.compiler.debug.CSVUtil$Escape.println:(Ljava/io/PrintStream;CCCLjava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
pop
end local 13 end local 11 28: StackMap locals: java.util.concurrent.ConcurrentLinkedDeque java.lang.String java.lang.String java.lang.String int java.lang.Throwable java.lang.Throwable java.io.PrintStream java.lang.reflect.Field[] java.util.ArrayList java.lang.String top java.util.Iterator
StackMap stack:
aload 12
invokeinterface java.util.Iterator.hasNext:()Z
ifne 15
end local 10 end local 9 end local 8 29: aload 7
ifnull 35
aload 7
invokevirtual java.io.PrintStream.close:()V
goto 35
StackMap locals: java.util.concurrent.ConcurrentLinkedDeque java.lang.String java.lang.String java.lang.String int java.lang.Throwable java.lang.Throwable java.io.PrintStream
StackMap stack: java.lang.Throwable
30: astore 5
aload 7
ifnull 31
aload 7
invokevirtual java.io.PrintStream.close:()V
end local 7 StackMap locals:
StackMap stack:
31: aload 5
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
32: astore 6
aload 5
ifnonnull 33
aload 6
astore 5
goto 34
StackMap locals:
StackMap stack:
33: aload 5
aload 6
if_acmpeq 34
aload 5
aload 6
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
34: aload 5
athrow
35: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 36 0 snapshot Ljava/util/concurrent/ConcurrentLinkedDeque<Lorg/graalvm/compiler/hotspot/CompilationStatistics;>;
0 36 1 dumpName Ljava/lang/String;
0 36 2 dateString Ljava/lang/String;
1 36 3 fileName Ljava/lang/String;
2 36 4 separator C
4 31 7 out Ljava/io/PrintStream;
5 29 8 declaredFields [Ljava/lang/reflect/Field;
6 29 9 fields Ljava/util/ArrayList<Ljava/lang/reflect/Field;>;
8 10 10 field Ljava/lang/reflect/Field;
13 29 10 format Ljava/lang/String;
16 28 11 stats Lorg/graalvm/compiler/hotspot/CompilationStatistics;
17 28 13 values [Ljava/lang/Object;
18 27 14 i I
20 25 15 field Ljava/lang/reflect/Field;
22 23 16 value D
Exception table:
from to target type
4 29 30 any
3 32 32 any
Exceptions:
throws java.lang.IllegalAccessException, java.io.FileNotFoundException
Signature: (Ljava/util/concurrent/ConcurrentLinkedDeque<Lorg/graalvm/compiler/hotspot/CompilationStatistics;>;Ljava/lang/String;Ljava/lang/String;)V
MethodParameters:
Name Flags
snapshot
dumpName
dateString
}
SourceFile: "CompilationStatistics.java"
NestMembers:
org.graalvm.compiler.hotspot.CompilationStatistics$1 org.graalvm.compiler.hotspot.CompilationStatistics$NotReported org.graalvm.compiler.hotspot.CompilationStatistics$Options org.graalvm.compiler.hotspot.CompilationStatistics$TimeValue
InnerClasses:
public final Escape = org.graalvm.compiler.debug.CSVUtil$Escape of org.graalvm.compiler.debug.CSVUtil
org.graalvm.compiler.hotspot.CompilationStatistics$1
private abstract NotReported = org.graalvm.compiler.hotspot.CompilationStatistics$NotReported of org.graalvm.compiler.hotspot.CompilationStatistics
public Options = org.graalvm.compiler.hotspot.CompilationStatistics$Options of org.graalvm.compiler.hotspot.CompilationStatistics
private abstract TimeValue = org.graalvm.compiler.hotspot.CompilationStatistics$TimeValue of org.graalvm.compiler.hotspot.CompilationStatistics