class jdk.nashorn.internal.runtime.linker.LinkerCallSite$ProfilingLinkerCallSite$ProfileDumper implements java.lang.Runnable
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: jdk.nashorn.internal.runtime.linker.LinkerCallSite$ProfilingLinkerCallSite$ProfileDumper
super_class: java.lang.Object
{
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 // jdk.nashorn.internal.runtime.linker.LinkerCallSite$ProfilingLinkerCallSite$ProfileDumper this
0: .line 278
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // jdk.nashorn.internal.runtime.linker.LinkerCallSite$ProfilingLinkerCallSite$ProfileDumper this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/nashorn/internal/runtime/linker/LinkerCallSite$ProfilingLinkerCallSite$ProfileDumper;
public void run();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=1
start local 0 // jdk.nashorn.internal.runtime.linker.LinkerCallSite$ProfilingLinkerCallSite$ProfileDumper this
0: .line 281
aconst_null
astore 1 /* out */
start local 1 // java.io.PrintWriter out
1: .line 282
iconst_0
istore 2 /* fileOutput */
start local 2 // boolean fileOutput
2: .line 286
new java.io.PrintWriter
dup
new java.io.FileOutputStream
dup
getstatic jdk.nashorn.internal.runtime.linker.LinkerCallSite.PROFILEFILE:Ljava/lang/String;
invokespecial java.io.FileOutputStream.<init>:(Ljava/lang/String;)V
invokespecial java.io.PrintWriter.<init>:(Ljava/io/OutputStream;)V
astore 1 /* out */
3: .line 287
iconst_1
istore 2 /* fileOutput */
4: .line 288
goto 7
StackMap locals: jdk.nashorn.internal.runtime.linker.LinkerCallSite$ProfilingLinkerCallSite$ProfileDumper java.io.PrintWriter int
StackMap stack: java.io.FileNotFoundException
5: pop
6: .line 289
invokestatic jdk.nashorn.internal.runtime.Context.getCurrentErr:()Ljava/io/PrintWriter;
astore 1 /* out */
7: .line 292
StackMap locals:
StackMap stack:
aload 1 /* out */
invokestatic jdk.nashorn.internal.runtime.linker.LinkerCallSite$ProfilingLinkerCallSite$ProfileDumper.dump:(Ljava/io/PrintWriter;)V
8: .line 293
goto 13
StackMap locals:
StackMap stack: java.lang.Throwable
9: astore 3
10: .line 294
aload 1 /* out */
ifnull 12
iload 2 /* fileOutput */
ifeq 12
11: .line 295
aload 1 /* out */
invokevirtual java.io.PrintWriter.close:()V
12: .line 297
StackMap locals: java.lang.Throwable
StackMap stack:
aload 3
athrow
13: .line 294
StackMap locals:
StackMap stack:
aload 1 /* out */
ifnull 15
iload 2 /* fileOutput */
ifeq 15
14: .line 295
aload 1 /* out */
invokevirtual java.io.PrintWriter.close:()V
15: .line 298
StackMap locals:
StackMap stack:
return
end local 2 // boolean fileOutput
end local 1 // java.io.PrintWriter out
end local 0 // jdk.nashorn.internal.runtime.linker.LinkerCallSite$ProfilingLinkerCallSite$ProfileDumper this
LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Ljdk/nashorn/internal/runtime/linker/LinkerCallSite$ProfilingLinkerCallSite$ProfileDumper;
1 16 1 out Ljava/io/PrintWriter;
2 16 2 fileOutput Z
Exception table:
from to target type
2 4 5 Class java.io.FileNotFoundException
2 9 9 any
private static void dump(java.io.PrintWriter);
descriptor: (Ljava/io/PrintWriter;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=4, args_size=1
start local 0 // java.io.PrintWriter out
0: .line 301
iconst_0
istore 1 /* index */
start local 1 // int index
1: .line 302
getstatic jdk.nashorn.internal.runtime.linker.LinkerCallSite$ProfilingLinkerCallSite.profileCallSites:Ljava/util/LinkedList;
invokevirtual java.util.LinkedList.iterator:()Ljava/util/Iterator;
astore 3
goto 8
StackMap locals: java.io.PrintWriter int top java.util.Iterator
StackMap stack:
2: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast jdk.nashorn.internal.runtime.linker.LinkerCallSite$ProfilingLinkerCallSite
astore 2 /* callSite */
start local 2 // jdk.nashorn.internal.runtime.linker.LinkerCallSite$ProfilingLinkerCallSite callSite
3: .line 303
aload 0 /* out */
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
iload 1 /* index */
iinc 1 /* index */ 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
bipush 9
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
4: .line 304
aload 2 /* callSite */
invokevirtual jdk.nashorn.internal.runtime.linker.LinkerCallSite$ProfilingLinkerCallSite.getDescriptor:()Ljdk/dynalink/CallSiteDescriptor;
invokevirtual jdk.dynalink.CallSiteDescriptor.getOperation:()Ljdk/dynalink/Operation;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
bipush 9
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
5: .line 305
aload 2 /* callSite */
getfield jdk.nashorn.internal.runtime.linker.LinkerCallSite$ProfilingLinkerCallSite.totalTime:J
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
bipush 9
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
6: .line 306
aload 2 /* callSite */
getfield jdk.nashorn.internal.runtime.linker.LinkerCallSite$ProfilingLinkerCallSite.hitCount:J
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
7: .line 303
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
end local 2 // jdk.nashorn.internal.runtime.linker.LinkerCallSite$ProfilingLinkerCallSite callSite
8: .line 302
StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
9: .line 308
return
end local 1 // int index
end local 0 // java.io.PrintWriter out
LocalVariableTable:
Start End Slot Name Signature
0 10 0 out Ljava/io/PrintWriter;
1 10 1 index I
3 8 2 callSite Ljdk/nashorn/internal/runtime/linker/LinkerCallSite$ProfilingLinkerCallSite;
MethodParameters:
Name Flags
out final
}
SourceFile: "LinkerCallSite.java"
NestHost: jdk.nashorn.internal.runtime.linker.LinkerCallSite
InnerClasses:
private ProfilingLinkerCallSite = jdk.nashorn.internal.runtime.linker.LinkerCallSite$ProfilingLinkerCallSite of jdk.nashorn.internal.runtime.linker.LinkerCallSite
ProfileDumper = jdk.nashorn.internal.runtime.linker.LinkerCallSite$ProfilingLinkerCallSite$ProfileDumper of jdk.nashorn.internal.runtime.linker.LinkerCallSite$ProfilingLinkerCallSite