public class org.graalvm.compiler.debug.internal.method.MethodMetricsPrinter$MethodMetricsCSVFilePrinter implements org.graalvm.compiler.debug.internal.method.MethodMetricsPrinter
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.debug.internal.method.MethodMetricsPrinter$MethodMetricsCSVFilePrinter
super_class: java.lang.Object
{
private java.io.FileOutputStream fw;
descriptor: Ljava/io/FileOutputStream;
flags: (0x0002) ACC_PRIVATE
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=1
start local 0 // org.graalvm.compiler.debug.internal.method.MethodMetricsPrinter$MethodMetricsCSVFilePrinter this
0: .line 111
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 113
aload 0 /* this */
new java.io.FileOutputStream
dup
new java.io.File
dup
getstatic org.graalvm.compiler.debug.internal.method.MethodMetricsPrinter$Options.MethodMeterFile:Lorg/graalvm/compiler/options/OptionValue;
invokevirtual org.graalvm.compiler.options.OptionValue.getValue:()Ljava/lang/Object;
checkcast java.lang.String
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
invokespecial java.io.FileOutputStream.<init>:(Ljava/io/File;)V
putfield org.graalvm.compiler.debug.internal.method.MethodMetricsPrinter$MethodMetricsCSVFilePrinter.fw:Ljava/io/FileOutputStream;
2: .line 114
goto 6
StackMap locals: org.graalvm.compiler.debug.internal.method.MethodMetricsPrinter$MethodMetricsCSVFilePrinter
StackMap stack: java.io.IOException
3: astore 1 /* e */
start local 1 // java.io.IOException e
4: .line 115
ldc "Cannot create file %s for method metrics dumping:%s"
iconst_2
anewarray java.lang.Object
dup
iconst_0
getstatic org.graalvm.compiler.debug.internal.method.MethodMetricsPrinter$Options.MethodMeterFile:Lorg/graalvm/compiler/options/OptionValue;
invokevirtual org.graalvm.compiler.options.OptionValue.getValue:()Ljava/lang/Object;
aastore
dup
iconst_1
aload 1 /* e */
aastore
invokestatic org.graalvm.compiler.debug.TTY.println:(Ljava/lang/String;[Ljava/lang/Object;)V
5: .line 116
new java.lang.Error
dup
aload 1 /* e */
invokespecial java.lang.Error.<init>:(Ljava/lang/Throwable;)V
athrow
end local 1 // java.io.IOException e
6: .line 118
StackMap locals:
StackMap stack:
return
end local 0 // org.graalvm.compiler.debug.internal.method.MethodMetricsPrinter$MethodMetricsCSVFilePrinter this
LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/graalvm/compiler/debug/internal/method/MethodMetricsPrinter$MethodMetricsCSVFilePrinter;
4 6 1 e Ljava/io/IOException;
Exception table:
from to target type
1 2 3 Class java.io.IOException
public void printMethodMetrics(java.util.Collection<org.graalvm.compiler.debug.DebugMethodMetrics>);
descriptor: (Ljava/util/Collection;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=2
start local 0 // org.graalvm.compiler.debug.internal.method.MethodMetricsPrinter$MethodMetricsCSVFilePrinter this
start local 1 // java.util.Collection metrics
0: .line 123
aload 0 /* this */
getfield org.graalvm.compiler.debug.internal.method.MethodMetricsPrinter$MethodMetricsCSVFilePrinter.fw:Ljava/io/FileOutputStream;
ifnull 19
aload 1 /* metrics */
ifnull 19
1: .line 124
aconst_null
astore 2
aconst_null
astore 3
2: new java.io.PrintStream
dup
aload 0 /* this */
getfield org.graalvm.compiler.debug.internal.method.MethodMetricsPrinter$MethodMetricsCSVFilePrinter.fw:Ljava/io/FileOutputStream;
invokespecial java.io.PrintStream.<init>:(Ljava/io/OutputStream;)V
astore 4 /* p */
start local 4 // java.io.PrintStream p
3: .line 125
aload 1 /* metrics */
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 6
goto 8
StackMap locals: org.graalvm.compiler.debug.internal.method.MethodMetricsPrinter$MethodMetricsCSVFilePrinter java.util.Collection java.lang.Throwable java.lang.Throwable java.io.PrintStream top java.util.Iterator
StackMap stack:
4: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.debug.DebugMethodMetrics
astore 5 /* m */
start local 5 // org.graalvm.compiler.debug.DebugMethodMetrics m
5: .line 126
aload 5 /* m */
instanceof org.graalvm.compiler.debug.internal.method.MethodMetricsImpl
ifeq 8
6: .line 127
aload 5 /* m */
checkcast org.graalvm.compiler.debug.internal.method.MethodMetricsImpl
aload 4 /* p */
invokevirtual org.graalvm.compiler.debug.internal.method.MethodMetricsImpl.dumpCSV:(Ljava/io/PrintStream;)V
7: .line 128
aload 4 /* p */
invokevirtual java.io.PrintStream.println:()V
end local 5 // org.graalvm.compiler.debug.DebugMethodMetrics m
8: .line 125
StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
9: .line 131
aload 4 /* p */
ifnull 15
aload 4 /* p */
invokevirtual java.io.PrintStream.close:()V
goto 15
StackMap locals: org.graalvm.compiler.debug.internal.method.MethodMetricsPrinter$MethodMetricsCSVFilePrinter java.util.Collection java.lang.Throwable java.lang.Throwable java.io.PrintStream
StackMap stack: java.lang.Throwable
10: astore 2
aload 4 /* p */
ifnull 11
aload 4 /* p */
invokevirtual java.io.PrintStream.close:()V
end local 4 // java.io.PrintStream p
StackMap locals:
StackMap stack:
11: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
12: astore 3
aload 2
ifnonnull 13
aload 3
astore 2
goto 14
StackMap locals:
StackMap stack:
13: aload 2
aload 3
if_acmpeq 14
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
14: aload 2
athrow
15: .line 133
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield org.graalvm.compiler.debug.internal.method.MethodMetricsPrinter$MethodMetricsCSVFilePrinter.fw:Ljava/io/FileOutputStream;
invokevirtual java.io.FileOutputStream.close:()V
16: .line 134
goto 19
StackMap locals:
StackMap stack: java.io.IOException
17: astore 2 /* e */
start local 2 // java.io.IOException e
18: .line 135
new java.lang.Error
dup
aload 2 /* e */
invokespecial java.lang.Error.<init>:(Ljava/lang/Throwable;)V
athrow
end local 2 // java.io.IOException e
19: .line 138
StackMap locals:
StackMap stack:
return
end local 1 // java.util.Collection metrics
end local 0 // org.graalvm.compiler.debug.internal.method.MethodMetricsPrinter$MethodMetricsCSVFilePrinter this
LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lorg/graalvm/compiler/debug/internal/method/MethodMetricsPrinter$MethodMetricsCSVFilePrinter;
0 20 1 metrics Ljava/util/Collection<Lorg/graalvm/compiler/debug/DebugMethodMetrics;>;
3 11 4 p Ljava/io/PrintStream;
5 8 5 m Lorg/graalvm/compiler/debug/DebugMethodMetrics;
18 19 2 e Ljava/io/IOException;
Exception table:
from to target type
3 9 10 any
2 12 12 any
15 16 17 Class java.io.IOException
Signature: (Ljava/util/Collection<Lorg/graalvm/compiler/debug/DebugMethodMetrics;>;)V
MethodParameters:
Name Flags
metrics
}
SourceFile: "MethodMetricsPrinter.java"
NestHost: org.graalvm.compiler.debug.internal.method.MethodMetricsPrinter
InnerClasses:
public MethodMetricsCSVFilePrinter = org.graalvm.compiler.debug.internal.method.MethodMetricsPrinter$MethodMetricsCSVFilePrinter of org.graalvm.compiler.debug.internal.method.MethodMetricsPrinter
public Options = org.graalvm.compiler.debug.internal.method.MethodMetricsPrinter$Options of org.graalvm.compiler.debug.internal.method.MethodMetricsPrinter