public class org.openjdk.jmh.profile.LinuxPerfNormProfiler implements org.openjdk.jmh.profile.ExternalProfiler
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.openjdk.jmh.profile.LinuxPerfNormProfiler
super_class: java.lang.Object
{
private static final java.lang.String[] interestingEvents;
descriptor: [Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final int delayMs;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int lengthMs;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final boolean useDefaultStats;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final long highPassFilter;
descriptor: J
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int incrementInterval;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final boolean isIncrementable;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.Collection<java.lang.String> supportedEvents;
descriptor: Ljava/util/Collection;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Collection<Ljava/lang/String;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: bipush 22
anewarray java.lang.String
dup
iconst_0
1: ldc "cycles"
aastore
dup
iconst_1
ldc "instructions"
aastore
dup
iconst_2
2: ldc "branches"
aastore
dup
iconst_3
ldc "branch-misses"
aastore
dup
iconst_4
3: ldc "L1-dcache-loads"
aastore
dup
iconst_5
ldc "L1-dcache-load-misses"
aastore
dup
bipush 6
4: ldc "L1-dcache-stores"
aastore
dup
bipush 7
ldc "L1-dcache-store-misses"
aastore
dup
bipush 8
5: ldc "L1-icache-loads"
aastore
dup
bipush 9
ldc "L1-icache-load-misses"
aastore
dup
bipush 10
6: ldc "LLC-loads"
aastore
dup
bipush 11
ldc "LLC-load-misses"
aastore
dup
bipush 12
7: ldc "LLC-stores"
aastore
dup
bipush 13
ldc "LLC-store-misses"
aastore
dup
bipush 14
8: ldc "dTLB-loads"
aastore
dup
bipush 15
ldc "dTLB-load-misses"
aastore
dup
bipush 16
9: ldc "dTLB-stores"
aastore
dup
bipush 17
ldc "dTLB-store-misses"
aastore
dup
bipush 18
10: ldc "iTLB-loads"
aastore
dup
bipush 19
ldc "iTLB-load-misses"
aastore
dup
bipush 20
11: ldc "stalled-cycles-frontend"
aastore
dup
bipush 21
ldc "stalled-cycles-backend"
aastore
12: putstatic org.openjdk.jmh.profile.LinuxPerfNormProfiler.interestingEvents:[Ljava/lang/String;
13: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=18, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield org.openjdk.jmh.profile.LinuxPerfNormProfiler.supportedEvents:Ljava/util/Collection;
2: new joptsimple.OptionParser
dup
invokespecial joptsimple.OptionParser.<init>:()V
astore 2
start local 2 3: aload 2
new org.openjdk.jmh.profile.ProfilerOptionFormatter
dup
ldc "perfnorm"
invokespecial org.openjdk.jmh.profile.ProfilerOptionFormatter.<init>:(Ljava/lang/String;)V
invokevirtual joptsimple.OptionParser.formatHelpWith:(Ljoptsimple/HelpFormatter;)V
4: aload 2
ldc "events"
5: ldc "Events to gather."
6: invokevirtual joptsimple.OptionParser.accepts:(Ljava/lang/String;Ljava/lang/String;)Ljoptsimple/OptionSpecBuilder;
7: invokevirtual joptsimple.OptionSpecBuilder.withRequiredArg:()Ljoptsimple/ArgumentAcceptingOptionSpec;
ldc Ljava/lang/String;
invokevirtual joptsimple.ArgumentAcceptingOptionSpec.ofType:(Ljava/lang/Class;)Ljoptsimple/ArgumentAcceptingOptionSpec;
ldc ","
invokevirtual joptsimple.ArgumentAcceptingOptionSpec.withValuesSeparatedBy:(Ljava/lang/String;)Ljoptsimple/ArgumentAcceptingOptionSpec;
ldc "event+"
invokevirtual joptsimple.ArgumentAcceptingOptionSpec.describedAs:(Ljava/lang/String;)Ljoptsimple/ArgumentAcceptingOptionSpec;
8: astore 3
start local 3 9: aload 2
ldc "delay"
10: ldc "Delay collection for a given time, in milliseconds; -1 to detect automatically."
11: invokevirtual joptsimple.OptionParser.accepts:(Ljava/lang/String;Ljava/lang/String;)Ljoptsimple/OptionSpecBuilder;
12: invokevirtual joptsimple.OptionSpecBuilder.withRequiredArg:()Ljoptsimple/ArgumentAcceptingOptionSpec;
ldc Ljava/lang/Integer;
invokevirtual joptsimple.ArgumentAcceptingOptionSpec.ofType:(Ljava/lang/Class;)Ljoptsimple/ArgumentAcceptingOptionSpec;
ldc "ms"
invokevirtual joptsimple.ArgumentAcceptingOptionSpec.describedAs:(Ljava/lang/String;)Ljoptsimple/ArgumentAcceptingOptionSpec;
iconst_m1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
iconst_0
anewarray java.lang.Integer
invokevirtual joptsimple.ArgumentAcceptingOptionSpec.defaultsTo:(Ljava/lang/Object;[Ljava/lang/Object;)Ljoptsimple/ArgumentAcceptingOptionSpec;
13: astore 4
start local 4 14: aload 2
ldc "length"
15: ldc "Do the collection for a given time, in milliseconds; -1 to detect automatically."
16: invokevirtual joptsimple.OptionParser.accepts:(Ljava/lang/String;Ljava/lang/String;)Ljoptsimple/OptionSpecBuilder;
17: invokevirtual joptsimple.OptionSpecBuilder.withRequiredArg:()Ljoptsimple/ArgumentAcceptingOptionSpec;
ldc Ljava/lang/Integer;
invokevirtual joptsimple.ArgumentAcceptingOptionSpec.ofType:(Ljava/lang/Class;)Ljoptsimple/ArgumentAcceptingOptionSpec;
ldc "ms"
invokevirtual joptsimple.ArgumentAcceptingOptionSpec.describedAs:(Ljava/lang/String;)Ljoptsimple/ArgumentAcceptingOptionSpec;
iconst_m1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
iconst_0
anewarray java.lang.Integer
invokevirtual joptsimple.ArgumentAcceptingOptionSpec.defaultsTo:(Ljava/lang/Object;[Ljava/lang/Object;)Ljoptsimple/ArgumentAcceptingOptionSpec;
18: astore 5
start local 5 19: aload 2
ldc "interval"
20: ldc "The interval between incremental updates from a concurrently running perf. Lower values may improve accuracy, while increasing the profiling overhead."
21: invokevirtual joptsimple.OptionParser.accepts:(Ljava/lang/String;Ljava/lang/String;)Ljoptsimple/OptionSpecBuilder;
22: invokevirtual joptsimple.OptionSpecBuilder.withRequiredArg:()Ljoptsimple/ArgumentAcceptingOptionSpec;
ldc Ljava/lang/Integer;
invokevirtual joptsimple.ArgumentAcceptingOptionSpec.ofType:(Ljava/lang/Class;)Ljoptsimple/ArgumentAcceptingOptionSpec;
ldc "ms"
invokevirtual joptsimple.ArgumentAcceptingOptionSpec.describedAs:(Ljava/lang/String;)Ljoptsimple/ArgumentAcceptingOptionSpec;
bipush 100
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
iconst_0
anewarray java.lang.Integer
invokevirtual joptsimple.ArgumentAcceptingOptionSpec.defaultsTo:(Ljava/lang/Object;[Ljava/lang/Object;)Ljoptsimple/ArgumentAcceptingOptionSpec;
23: astore 6
start local 6 24: aload 2
ldc "highPassFilter"
25: ldc "Ignore event increments larger that this."
26: invokevirtual joptsimple.OptionParser.accepts:(Ljava/lang/String;Ljava/lang/String;)Ljoptsimple/OptionSpecBuilder;
27: invokevirtual joptsimple.OptionSpecBuilder.withRequiredArg:()Ljoptsimple/ArgumentAcceptingOptionSpec;
ldc Ljava/lang/Long;
invokevirtual joptsimple.ArgumentAcceptingOptionSpec.ofType:(Ljava/lang/Class;)Ljoptsimple/ArgumentAcceptingOptionSpec;
ldc "#"
invokevirtual joptsimple.ArgumentAcceptingOptionSpec.describedAs:(Ljava/lang/String;)Ljoptsimple/ArgumentAcceptingOptionSpec;
ldc 100000000000
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
iconst_0
anewarray java.lang.Long
invokevirtual joptsimple.ArgumentAcceptingOptionSpec.defaultsTo:(Ljava/lang/Object;[Ljava/lang/Object;)Ljoptsimple/ArgumentAcceptingOptionSpec;
28: astore 7
start local 7 29: aload 2
ldc "useDefaultStat"
30: ldc "Use \"perf stat -d -d -d\" instead of explicit counter list."
31: invokevirtual joptsimple.OptionParser.accepts:(Ljava/lang/String;Ljava/lang/String;)Ljoptsimple/OptionSpecBuilder;
32: invokevirtual joptsimple.OptionSpecBuilder.withRequiredArg:()Ljoptsimple/ArgumentAcceptingOptionSpec;
ldc Ljava/lang/Boolean;
invokevirtual joptsimple.ArgumentAcceptingOptionSpec.ofType:(Ljava/lang/Class;)Ljoptsimple/ArgumentAcceptingOptionSpec;
ldc "bool"
invokevirtual joptsimple.ArgumentAcceptingOptionSpec.describedAs:(Ljava/lang/String;)Ljoptsimple/ArgumentAcceptingOptionSpec;
iconst_0
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
iconst_0
anewarray java.lang.Boolean
invokevirtual joptsimple.ArgumentAcceptingOptionSpec.defaultsTo:(Ljava/lang/Object;[Ljava/lang/Object;)Ljoptsimple/ArgumentAcceptingOptionSpec;
33: astore 8
start local 8 34: aload 1
aload 2
invokestatic org.openjdk.jmh.profile.ProfilerUtils.parseInitLine:(Ljava/lang/String;Ljoptsimple/OptionParser;)Ljoptsimple/OptionSet;
astore 9
start local 9 35: aload 0
aload 9
aload 4
invokevirtual joptsimple.OptionSet.valueOf:(Ljoptsimple/OptionSpec;)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
putfield org.openjdk.jmh.profile.LinuxPerfNormProfiler.delayMs:I
36: aload 0
aload 9
aload 5
invokevirtual joptsimple.OptionSet.valueOf:(Ljoptsimple/OptionSpec;)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
putfield org.openjdk.jmh.profile.LinuxPerfNormProfiler.lengthMs:I
37: aload 0
aload 9
aload 6
invokevirtual joptsimple.OptionSet.valueOf:(Ljoptsimple/OptionSpec;)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
putfield org.openjdk.jmh.profile.LinuxPerfNormProfiler.incrementInterval:I
38: aload 0
aload 9
aload 7
invokevirtual joptsimple.OptionSet.valueOf:(Ljoptsimple/OptionSpec;)Ljava/lang/Object;
checkcast java.lang.Long
invokevirtual java.lang.Long.longValue:()J
putfield org.openjdk.jmh.profile.LinuxPerfNormProfiler.highPassFilter:J
39: aload 0
aload 9
aload 8
invokevirtual joptsimple.OptionSet.valueOf:(Ljoptsimple/OptionSpec;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
putfield org.openjdk.jmh.profile.LinuxPerfNormProfiler.useDefaultStats:Z
40: aload 9
aload 3
invokevirtual joptsimple.OptionSet.valuesOf:(Ljoptsimple/OptionSpec;)Ljava/util/List;
astore 10
start local 10 41: goto 44
end local 10 StackMap locals: org.openjdk.jmh.profile.LinuxPerfNormProfiler java.lang.String joptsimple.OptionParser joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSet
StackMap stack: joptsimple.OptionException
42: astore 11
start local 11 43: new org.openjdk.jmh.profile.ProfilerException
dup
aload 11
invokevirtual joptsimple.OptionException.getMessage:()Ljava/lang/String;
invokespecial org.openjdk.jmh.profile.ProfilerException.<init>:(Ljava/lang/String;)V
athrow
end local 11 start local 10 44: StackMap locals: java.util.Collection
StackMap stack:
bipush 8
anewarray java.lang.String
dup
iconst_0
getstatic org.openjdk.jmh.profile.PerfSupport.PERF_EXEC:Ljava/lang/String;
aastore
dup
iconst_1
ldc "stat"
aastore
dup
iconst_2
ldc "--log-fd"
aastore
dup
iconst_3
ldc "2"
aastore
dup
iconst_4
ldc "--field-separator"
aastore
dup
iconst_5
ldc ","
aastore
dup
bipush 6
ldc "echo"
aastore
dup
bipush 7
ldc "1"
aastore
invokestatic org.openjdk.jmh.util.Utils.tryWith:([Ljava/lang/String;)Ljava/util/Collection;
astore 11
start local 11 45: aload 11
invokeinterface java.util.Collection.isEmpty:()Z
ifne 47
46: new org.openjdk.jmh.profile.ProfilerException
dup
aload 11
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokespecial org.openjdk.jmh.profile.ProfilerException.<init>:(Ljava/lang/String;)V
athrow
47: StackMap locals: java.util.Collection
StackMap stack:
bipush 10
anewarray java.lang.String
dup
iconst_0
getstatic org.openjdk.jmh.profile.PerfSupport.PERF_EXEC:Ljava/lang/String;
aastore
dup
iconst_1
ldc "stat"
aastore
dup
iconst_2
ldc "--log-fd"
aastore
dup
iconst_3
ldc "2"
aastore
dup
iconst_4
ldc "--field-separator"
aastore
dup
iconst_5
ldc ","
aastore
dup
bipush 6
ldc "--interval-print"
aastore
dup
bipush 7
aload 0
getfield org.openjdk.jmh.profile.LinuxPerfNormProfiler.incrementInterval:I
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
aastore
dup
bipush 8
ldc "echo"
aastore
dup
bipush 9
ldc "1"
aastore
invokestatic org.openjdk.jmh.util.Utils.tryWith:([Ljava/lang/String;)Ljava/util/Collection;
astore 12
start local 12 48: aload 0
aload 12
invokeinterface java.util.Collection.isEmpty:()Z
putfield org.openjdk.jmh.profile.LinuxPerfNormProfiler.isIncrementable:Z
49: aload 10
ifnull 55
50: aload 10
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 14
goto 54
StackMap locals: org.openjdk.jmh.profile.LinuxPerfNormProfiler java.lang.String joptsimple.OptionParser joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSet java.util.Collection java.util.Collection java.util.Collection top java.util.Iterator
StackMap stack:
51: aload 14
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 13
start local 13 52: aload 13
invokevirtual java.lang.String.trim:()Ljava/lang/String;
invokevirtual java.lang.String.isEmpty:()Z
ifeq 53
goto 54
53: StackMap locals: org.openjdk.jmh.profile.LinuxPerfNormProfiler java.lang.String joptsimple.OptionParser joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSet java.util.Collection java.util.Collection java.util.Collection java.lang.String java.util.Iterator
StackMap stack:
aload 0
getfield org.openjdk.jmh.profile.LinuxPerfNormProfiler.supportedEvents:Ljava/util/Collection;
aload 13
invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
pop
end local 13 54: StackMap locals: org.openjdk.jmh.profile.LinuxPerfNormProfiler java.lang.String joptsimple.OptionParser joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSet java.util.Collection java.util.Collection java.util.Collection top java.util.Iterator
StackMap stack:
aload 14
invokeinterface java.util.Iterator.hasNext:()Z
ifne 51
55: StackMap locals: org.openjdk.jmh.profile.LinuxPerfNormProfiler java.lang.String joptsimple.OptionParser joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSet java.util.Collection java.util.Collection java.util.Collection
StackMap stack:
aload 0
getfield org.openjdk.jmh.profile.LinuxPerfNormProfiler.supportedEvents:Ljava/util/Collection;
invokeinterface java.util.Collection.isEmpty:()Z
ifeq 63
56: getstatic org.openjdk.jmh.profile.LinuxPerfNormProfiler.interestingEvents:[Ljava/lang/String;
dup
astore 16
arraylength
istore 15
iconst_0
istore 14
goto 62
StackMap locals: org.openjdk.jmh.profile.LinuxPerfNormProfiler java.lang.String joptsimple.OptionParser joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSet java.util.Collection java.util.Collection java.util.Collection top int int java.lang.String[]
StackMap stack:
57: aload 16
iload 14
aaload
astore 13
start local 13 58: bipush 10
anewarray java.lang.String
dup
iconst_0
getstatic org.openjdk.jmh.profile.PerfSupport.PERF_EXEC:Ljava/lang/String;
aastore
dup
iconst_1
ldc "stat"
aastore
dup
iconst_2
ldc "--log-fd"
aastore
dup
iconst_3
ldc "2"
aastore
dup
iconst_4
ldc "--field-separator"
aastore
dup
iconst_5
ldc ","
aastore
dup
bipush 6
ldc "--event"
aastore
dup
bipush 7
aload 13
aastore
dup
bipush 8
ldc "echo"
aastore
dup
bipush 9
ldc "1"
aastore
invokestatic org.openjdk.jmh.util.Utils.tryWith:([Ljava/lang/String;)Ljava/util/Collection;
astore 17
start local 17 59: aload 17
invokeinterface java.util.Collection.isEmpty:()Z
ifeq 61
60: aload 0
getfield org.openjdk.jmh.profile.LinuxPerfNormProfiler.supportedEvents:Ljava/util/Collection;
aload 13
invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
pop
end local 17 end local 13 61: StackMap locals:
StackMap stack:
iinc 14 1
StackMap locals:
StackMap stack:
62: iload 14
iload 15
if_icmplt 57
63: StackMap locals: org.openjdk.jmh.profile.LinuxPerfNormProfiler java.lang.String joptsimple.OptionParser joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSpec joptsimple.OptionSet java.util.Collection java.util.Collection java.util.Collection
StackMap stack:
return
end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 64 0 this Lorg/openjdk/jmh/profile/LinuxPerfNormProfiler;
0 64 1 initLine Ljava/lang/String;
3 64 2 parser Ljoptsimple/OptionParser;
9 64 3 optEvents Ljoptsimple/OptionSpec<Ljava/lang/String;>;
14 64 4 optDelay Ljoptsimple/OptionSpec<Ljava/lang/Integer;>;
19 64 5 optLength Ljoptsimple/OptionSpec<Ljava/lang/Integer;>;
24 64 6 optIncrementInterval Ljoptsimple/OptionSpec<Ljava/lang/Integer;>;
29 64 7 optHighPassFilter Ljoptsimple/OptionSpec<Ljava/lang/Long;>;
34 64 8 optDefaultStat Ljoptsimple/OptionSpec<Ljava/lang/Boolean;>;
35 64 9 set Ljoptsimple/OptionSet;
41 42 10 userEvents Ljava/util/Collection<Ljava/lang/String;>;
44 64 10 userEvents Ljava/util/Collection<Ljava/lang/String;>;
43 44 11 e Ljoptsimple/OptionException;
45 64 11 msgs Ljava/util/Collection<Ljava/lang/String;>;
48 64 12 incremental Ljava/util/Collection<Ljava/lang/String;>;
52 54 13 ev Ljava/lang/String;
58 61 13 ev Ljava/lang/String;
59 61 17 res Ljava/util/Collection<Ljava/lang/String;>;
Exception table:
from to target type
35 41 42 Class joptsimple.OptionException
Exceptions:
throws org.openjdk.jmh.profile.ProfilerException
MethodParameters:
Name Flags
initLine
public java.util.Collection<java.lang.String> addJVMInvokeOptions(org.openjdk.jmh.infra.BenchmarkParams);
descriptor: (Lorg/openjdk/jmh/infra/BenchmarkParams;)Ljava/util/Collection;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 2
start local 2 1: aload 0
getfield org.openjdk.jmh.profile.LinuxPerfNormProfiler.useDefaultStats:Z
ifeq 4
2: aload 2
bipush 9
anewarray java.lang.String
dup
iconst_0
getstatic org.openjdk.jmh.profile.PerfSupport.PERF_EXEC:Ljava/lang/String;
aastore
dup
iconst_1
ldc "stat"
aastore
dup
iconst_2
ldc "--log-fd"
aastore
dup
iconst_3
ldc "2"
aastore
dup
iconst_4
ldc "--field-separator"
aastore
dup
iconst_5
ldc ","
aastore
dup
bipush 6
ldc "--detailed"
aastore
dup
bipush 7
ldc "--detailed"
aastore
dup
bipush 8
ldc "--detailed"
aastore
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
pop
3: goto 5
4: StackMap locals: java.util.List
StackMap stack:
aload 2
bipush 8
anewarray java.lang.String
dup
iconst_0
getstatic org.openjdk.jmh.profile.PerfSupport.PERF_EXEC:Ljava/lang/String;
aastore
dup
iconst_1
ldc "stat"
aastore
dup
iconst_2
ldc "--log-fd"
aastore
dup
iconst_3
ldc "2"
aastore
dup
iconst_4
ldc "--field-separator"
aastore
dup
iconst_5
ldc ","
aastore
dup
bipush 6
ldc "--event"
aastore
dup
bipush 7
aload 0
getfield org.openjdk.jmh.profile.LinuxPerfNormProfiler.supportedEvents:Ljava/util/Collection;
ldc ","
invokestatic org.openjdk.jmh.util.Utils.join:(Ljava/util/Collection;Ljava/lang/String;)Ljava/lang/String;
aastore
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
pop
5: StackMap locals:
StackMap stack:
aload 0
getfield org.openjdk.jmh.profile.LinuxPerfNormProfiler.isIncrementable:Z
ifeq 7
6: aload 2
iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "-I"
aastore
dup
iconst_1
aload 0
getfield org.openjdk.jmh.profile.LinuxPerfNormProfiler.incrementInterval:I
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
aastore
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
pop
7: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/openjdk/jmh/profile/LinuxPerfNormProfiler;
0 8 1 params Lorg/openjdk/jmh/infra/BenchmarkParams;
1 8 2 cmd Ljava/util/List<Ljava/lang/String;>;
Signature: (Lorg/openjdk/jmh/infra/BenchmarkParams;)Ljava/util/Collection<Ljava/lang/String;>;
MethodParameters:
Name Flags
params
public java.util.Collection<java.lang.String> addJVMOptions(org.openjdk.jmh.infra.BenchmarkParams);
descriptor: (Lorg/openjdk/jmh/infra/BenchmarkParams;)Ljava/util/Collection;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: invokestatic java.util.Collections.emptyList:()Ljava/util/List;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/openjdk/jmh/profile/LinuxPerfNormProfiler;
0 1 1 params Lorg/openjdk/jmh/infra/BenchmarkParams;
Signature: (Lorg/openjdk/jmh/infra/BenchmarkParams;)Ljava/util/Collection<Ljava/lang/String;>;
MethodParameters:
Name Flags
params
public void beforeTrial(org.openjdk.jmh.infra.BenchmarkParams);
descriptor: (Lorg/openjdk/jmh/infra/BenchmarkParams;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=2, args_size=2
start local 0 start local 1 0: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/openjdk/jmh/profile/LinuxPerfNormProfiler;
0 1 1 params Lorg/openjdk/jmh/infra/BenchmarkParams;
MethodParameters:
Name Flags
params
public java.util.Collection<? extends org.openjdk.jmh.results.Result> afterTrial(org.openjdk.jmh.results.BenchmarkResult, long, java.io.File, java.io.File);
descriptor: (Lorg/openjdk/jmh/results/BenchmarkResult;JLjava/io/File;Ljava/io/File;)Ljava/util/Collection;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 4 start local 5 0: aload 0
aload 1
aload 4
aload 5
invokevirtual org.openjdk.jmh.profile.LinuxPerfNormProfiler.process:(Lorg/openjdk/jmh/results/BenchmarkResult;Ljava/io/File;Ljava/io/File;)Ljava/util/Collection;
areturn
end local 5 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/openjdk/jmh/profile/LinuxPerfNormProfiler;
0 1 1 br Lorg/openjdk/jmh/results/BenchmarkResult;
0 1 2 pid J
0 1 4 stdOut Ljava/io/File;
0 1 5 stdErr Ljava/io/File;
Signature: (Lorg/openjdk/jmh/results/BenchmarkResult;JLjava/io/File;Ljava/io/File;)Ljava/util/Collection<+Lorg/openjdk/jmh/results/Result;>;
MethodParameters:
Name Flags
br
pid
stdOut
stdErr
public boolean allowPrintOut();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/openjdk/jmh/profile/LinuxPerfNormProfiler;
public boolean allowPrintErr();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/openjdk/jmh/profile/LinuxPerfNormProfiler;
public java.lang.String getDescription();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: ldc "Linux perf statistics, normalized by operation count"
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/openjdk/jmh/profile/LinuxPerfNormProfiler;
private java.util.Collection<? extends org.openjdk.jmh.results.Result> process(org.openjdk.jmh.results.BenchmarkResult, java.io.File, java.io.File);
descriptor: (Lorg/openjdk/jmh/results/BenchmarkResult;Ljava/io/File;Ljava/io/File;)Ljava/util/Collection;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=31, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new org.openjdk.jmh.util.HashMultiset
dup
invokespecial org.openjdk.jmh.util.HashMultiset.<init>:()V
astore 4
start local 4 1: aconst_null
astore 5
aconst_null
astore 6
2: new java.io.FileReader
dup
aload 3
invokespecial java.io.FileReader.<init>:(Ljava/io/File;)V
astore 7
start local 7 3: new java.io.BufferedReader
dup
aload 7
invokespecial java.io.BufferedReader.<init>:(Ljava/io/Reader;)V
astore 8
start local 8 4: aload 0
getfield org.openjdk.jmh.profile.LinuxPerfNormProfiler.delayMs:I
iconst_m1
if_icmpne 7
5: aload 1
invokestatic org.openjdk.jmh.profile.ProfilerUtils.measurementDelayMs:(Lorg/openjdk/jmh/results/BenchmarkResult;)J
lstore 9
start local 9 6: goto 8
end local 9 7: StackMap locals: org.openjdk.jmh.profile.LinuxPerfNormProfiler org.openjdk.jmh.results.BenchmarkResult java.io.File java.io.File org.openjdk.jmh.util.Multiset java.lang.Throwable java.lang.Throwable java.io.FileReader java.io.BufferedReader
StackMap stack:
aload 0
getfield org.openjdk.jmh.profile.LinuxPerfNormProfiler.delayMs:I
i2l
lstore 9
start local 9 8: StackMap locals: long
StackMap stack:
aload 0
getfield org.openjdk.jmh.profile.LinuxPerfNormProfiler.lengthMs:I
iconst_m1
if_icmpne 11
9: aload 1
invokestatic org.openjdk.jmh.profile.ProfilerUtils.measuredTimeMs:(Lorg/openjdk/jmh/results/BenchmarkResult;)J
l2d
dstore 11
start local 11 10: goto 12
end local 11 11: StackMap locals:
StackMap stack:
aload 0
getfield org.openjdk.jmh.profile.LinuxPerfNormProfiler.lengthMs:I
i2d
dstore 11
start local 11 12: StackMap locals: double
StackMap stack:
lload 9
l2d
ldc 1000.0
ddiv
dstore 13
start local 13 13: lload 9
l2d
dload 11
dadd
ldc 1000.0
ddiv
dstore 15
start local 15 14: lload 9
l2d
dload 11
dadd
aload 0
getfield org.openjdk.jmh.profile.LinuxPerfNormProfiler.incrementInterval:I
i2d
dadd
ldc 1000.0
ddiv
dstore 17
start local 17 15: invokestatic java.text.NumberFormat.getInstance:()Ljava/text/NumberFormat;
astore 19
start local 19 16: goto 59
start local 20 17: StackMap locals: org.openjdk.jmh.profile.LinuxPerfNormProfiler org.openjdk.jmh.results.BenchmarkResult java.io.File java.io.File org.openjdk.jmh.util.Multiset java.lang.Throwable java.lang.Throwable java.io.FileReader java.io.BufferedReader long double double double double java.text.NumberFormat java.lang.String
StackMap stack:
aload 20
ldc "#"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 18
goto 59
18: StackMap locals:
StackMap stack:
aload 0
getfield org.openjdk.jmh.profile.LinuxPerfNormProfiler.isIncrementable:Z
ifeq 51
19: aload 20
ldc ","
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
astore 21
start local 21 20: aload 21
arraylength
iconst_3
if_icmpne 25
21: aload 21
iconst_0
aaload
invokevirtual java.lang.String.trim:()Ljava/lang/String;
astore 22
start local 22 22: aload 21
iconst_1
aaload
invokevirtual java.lang.String.trim:()Ljava/lang/String;
astore 23
start local 23 23: aload 21
iconst_2
aaload
invokevirtual java.lang.String.trim:()Ljava/lang/String;
astore 24
start local 24 24: goto 29
end local 24 end local 23 end local 22 StackMap locals: java.lang.String[]
StackMap stack:
25: aload 21
arraylength
iconst_4
if_icmplt 59
26: aload 21
iconst_0
aaload
invokevirtual java.lang.String.trim:()Ljava/lang/String;
astore 22
start local 22 27: aload 21
iconst_1
aaload
invokevirtual java.lang.String.trim:()Ljava/lang/String;
astore 23
start local 23 28: aload 21
iconst_3
aaload
invokevirtual java.lang.String.trim:()Ljava/lang/String;
astore 24
start local 24 29: StackMap locals: java.lang.String java.lang.String java.lang.String
StackMap stack:
dconst_1
dstore 25
start local 25 30: aload 19
aload 22
invokevirtual java.text.NumberFormat.parse:(Ljava/lang/String;)Ljava/lang/Number;
invokevirtual java.lang.Number.doubleValue:()D
dstore 27
start local 27 31: dload 27
dload 13
dcmpg
ifge 33
32: goto 59
33: StackMap locals: double double
StackMap stack:
dload 27
dload 17
dcmpl
ifle 35
34: goto 59
35: StackMap locals:
StackMap stack:
aload 0
getfield org.openjdk.jmh.profile.LinuxPerfNormProfiler.incrementInterval:I
i2d
ldc 1000.0
ddiv
dstore 29
start local 29 36: dload 27
dload 29
dsub
dload 13
dcmpg
ifge 38
37: dload 27
dload 13
dsub
dload 29
ddiv
dstore 25
38: StackMap locals: double
StackMap stack:
dload 27
dload 15
dcmpl
ifle 40
39: dconst_1
dload 27
dload 15
dsub
dload 29
ddiv
dsub
dstore 25
40: StackMap locals:
StackMap stack:
dconst_1
dconst_0
dload 25
invokestatic java.lang.Math.min:(DD)D
invokestatic java.lang.Math.max:(DD)D
dstore 25
end local 29 end local 27 41: goto 44
StackMap locals: org.openjdk.jmh.profile.LinuxPerfNormProfiler org.openjdk.jmh.results.BenchmarkResult java.io.File java.io.File org.openjdk.jmh.util.Multiset java.lang.Throwable java.lang.Throwable java.io.FileReader java.io.BufferedReader long double double double double java.text.NumberFormat java.lang.String java.lang.String[] java.lang.String java.lang.String java.lang.String double
StackMap stack: java.text.ParseException
42: pop
43: goto 59
44: StackMap locals:
StackMap stack:
aload 19
aload 23
invokevirtual java.text.NumberFormat.parse:(Ljava/lang/String;)Ljava/lang/Number;
invokevirtual java.lang.Number.longValue:()J
lstore 27
start local 27 45: lload 27
aload 0
getfield org.openjdk.jmh.profile.LinuxPerfNormProfiler.highPassFilter:J
lcmp
ifle 47
46: goto 59
47: StackMap locals: long
StackMap stack:
aload 4
aload 24
lload 27
l2d
dload 25
dmul
d2l
invokeinterface org.openjdk.jmh.util.Multiset.add:(Ljava/lang/Object;J)V
end local 27 48: goto 59
StackMap locals: org.openjdk.jmh.profile.LinuxPerfNormProfiler org.openjdk.jmh.results.BenchmarkResult java.io.File java.io.File org.openjdk.jmh.util.Multiset java.lang.Throwable java.lang.Throwable java.io.FileReader java.io.BufferedReader long double double double double java.text.NumberFormat java.lang.String java.lang.String[] java.lang.String java.lang.String java.lang.String double
StackMap stack: java.text.ParseException
49: pop
50: goto 59
end local 25 end local 24 end local 23 end local 22 end local 21 51: StackMap locals: org.openjdk.jmh.profile.LinuxPerfNormProfiler org.openjdk.jmh.results.BenchmarkResult java.io.File java.io.File org.openjdk.jmh.util.Multiset java.lang.Throwable java.lang.Throwable java.io.FileReader java.io.BufferedReader long double double double double java.text.NumberFormat java.lang.String
StackMap stack:
aload 20
ldc ","
invokevirtual java.lang.String.lastIndexOf:(Ljava/lang/String;)I
istore 21
start local 21 52: iload 21
iconst_m1
if_icmpne 53
goto 59
53: StackMap locals: int
StackMap stack:
aload 20
iconst_0
iload 21
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
invokevirtual java.lang.String.trim:()Ljava/lang/String;
astore 22
start local 22 54: aload 20
iload 21
iconst_1
iadd
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
invokevirtual java.lang.String.trim:()Ljava/lang/String;
astore 23
start local 23 55: aload 19
aload 22
invokevirtual java.text.NumberFormat.parse:(Ljava/lang/String;)Ljava/lang/Number;
invokevirtual java.lang.Number.longValue:()J
lstore 24
start local 24 56: aload 4
aload 23
lload 24
invokeinterface org.openjdk.jmh.util.Multiset.add:(Ljava/lang/Object;J)V
end local 24 57: goto 59
StackMap locals: org.openjdk.jmh.profile.LinuxPerfNormProfiler org.openjdk.jmh.results.BenchmarkResult java.io.File java.io.File org.openjdk.jmh.util.Multiset java.lang.Throwable java.lang.Throwable java.io.FileReader java.io.BufferedReader long double double double double java.text.NumberFormat java.lang.String int java.lang.String java.lang.String
StackMap stack: java.text.ParseException
58: pop
end local 23 end local 22 end local 21 end local 20 59: StackMap locals: org.openjdk.jmh.profile.LinuxPerfNormProfiler org.openjdk.jmh.results.BenchmarkResult java.io.File java.io.File org.openjdk.jmh.util.Multiset java.lang.Throwable java.lang.Throwable java.io.FileReader java.io.BufferedReader long double double double double java.text.NumberFormat
StackMap stack:
aload 8
invokevirtual java.io.BufferedReader.readLine:()Ljava/lang/String;
dup
astore 20
start local 20 60: ifnonnull 17
61: aload 0
getfield org.openjdk.jmh.profile.LinuxPerfNormProfiler.isIncrementable:Z
ifne 65
62: getstatic java.lang.System.out:Ljava/io/PrintStream;
invokevirtual java.io.PrintStream.println:()V
63: getstatic java.lang.System.out:Ljava/io/PrintStream;
invokevirtual java.io.PrintStream.println:()V
64: getstatic java.lang.System.out:Ljava/io/PrintStream;
ldc "WARNING: Your system uses old \"perf\", which cannot print data incrementally (-I).\nTherefore, perf performance data includes benchmark warmup."
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
65: StackMap locals: java.lang.String
StackMap stack:
aload 1
invokevirtual org.openjdk.jmh.results.BenchmarkResult.getMetadata:()Lorg/openjdk/jmh/results/BenchmarkResultMetaData;
astore 23
start local 23 66: aload 23
ifnull 84
67: aload 0
getfield org.openjdk.jmh.profile.LinuxPerfNormProfiler.isIncrementable:Z
ifeq 70
68: aload 23
invokevirtual org.openjdk.jmh.results.BenchmarkResultMetaData.getMeasurementOps:()J
lstore 21
start local 21 69: goto 71
end local 21 70: StackMap locals: org.openjdk.jmh.profile.LinuxPerfNormProfiler org.openjdk.jmh.results.BenchmarkResult java.io.File java.io.File org.openjdk.jmh.util.Multiset java.lang.Throwable java.lang.Throwable java.io.FileReader java.io.BufferedReader long double double double double java.text.NumberFormat java.lang.String top top org.openjdk.jmh.results.BenchmarkResultMetaData
StackMap stack:
aload 23
invokevirtual org.openjdk.jmh.results.BenchmarkResultMetaData.getWarmupOps:()J
aload 23
invokevirtual org.openjdk.jmh.results.BenchmarkResultMetaData.getMeasurementOps:()J
ladd
lstore 21
start local 21 71: StackMap locals: org.openjdk.jmh.profile.LinuxPerfNormProfiler org.openjdk.jmh.results.BenchmarkResult java.io.File java.io.File org.openjdk.jmh.util.Multiset java.lang.Throwable java.lang.Throwable java.io.FileReader java.io.BufferedReader long double double double double java.text.NumberFormat java.lang.String long org.openjdk.jmh.results.BenchmarkResultMetaData
StackMap stack:
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 24
start local 24 72: aload 4
invokeinterface org.openjdk.jmh.util.Multiset.keys:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 26
goto 75
StackMap locals: org.openjdk.jmh.profile.LinuxPerfNormProfiler org.openjdk.jmh.results.BenchmarkResult java.io.File java.io.File org.openjdk.jmh.util.Multiset java.lang.Throwable java.lang.Throwable java.io.FileReader java.io.BufferedReader long double double double double java.text.NumberFormat java.lang.String long org.openjdk.jmh.results.BenchmarkResultMetaData java.util.Collection top java.util.Iterator
StackMap stack:
73: aload 26
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 25
start local 25 74: aload 24
new org.openjdk.jmh.profile.LinuxPerfNormProfiler$PerfResult
dup
aload 25
aload 4
aload 25
invokeinterface org.openjdk.jmh.util.Multiset.count:(Ljava/lang/Object;)J
l2d
dconst_1
dmul
lload 21
l2d
ddiv
invokespecial org.openjdk.jmh.profile.LinuxPerfNormProfiler$PerfResult.<init>:(Ljava/lang/String;D)V
invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
pop
end local 25 75: StackMap locals:
StackMap stack:
aload 26
invokeinterface java.util.Iterator.hasNext:()Z
ifne 73
76: aload 4
ldc "cycles"
invokeinterface org.openjdk.jmh.util.Multiset.count:(Ljava/lang/Object;)J
lstore 25
start local 25 77: aload 4
ldc "instructions"
invokeinterface org.openjdk.jmh.util.Multiset.count:(Ljava/lang/Object;)J
lstore 27
start local 27 78: lload 25
lconst_0
lcmp
ifeq 80
lload 27
lconst_0
lcmp
ifeq 80
79: aload 24
new org.openjdk.jmh.profile.LinuxPerfNormProfiler$PerfResult
dup
ldc "CPI"
dconst_1
lload 25
l2d
dmul
lload 27
l2d
ddiv
invokespecial org.openjdk.jmh.profile.LinuxPerfNormProfiler$PerfResult.<init>:(Ljava/lang/String;D)V
invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
pop
end local 27 end local 25 80: StackMap locals: org.openjdk.jmh.profile.LinuxPerfNormProfiler org.openjdk.jmh.results.BenchmarkResult java.io.File java.io.File org.openjdk.jmh.util.Multiset java.lang.Throwable java.lang.Throwable java.io.FileReader java.io.BufferedReader long double double double double java.text.NumberFormat java.lang.String long org.openjdk.jmh.results.BenchmarkResultMetaData java.util.Collection
StackMap stack:
aload 24
81: aload 8
ifnull 82
aload 8
invokevirtual java.io.BufferedReader.close:()V
StackMap locals:
StackMap stack: java.util.Collection
82: aload 7
ifnull 83
aload 7
invokevirtual java.io.FileReader.close:()V
83: StackMap locals:
StackMap stack: java.util.Collection
areturn
end local 24 end local 21 84: StackMap locals: org.openjdk.jmh.profile.LinuxPerfNormProfiler org.openjdk.jmh.results.BenchmarkResult java.io.File java.io.File org.openjdk.jmh.util.Multiset java.lang.Throwable java.lang.Throwable java.io.FileReader java.io.BufferedReader long double double double double java.text.NumberFormat java.lang.String top top org.openjdk.jmh.results.BenchmarkResultMetaData
StackMap stack:
new org.openjdk.jmh.profile.LinuxPerfNormProfiler$PerfResult
dup
ldc "N/A"
ldc NaN
invokespecial org.openjdk.jmh.profile.LinuxPerfNormProfiler$PerfResult.<init>:(Ljava/lang/String;D)V
invokestatic java.util.Collections.singleton:(Ljava/lang/Object;)Ljava/util/Set;
85: aload 8
ifnull 86
aload 8
invokevirtual java.io.BufferedReader.close:()V
StackMap locals:
StackMap stack: java.util.Set
86: aload 7
ifnull 87
aload 7
invokevirtual java.io.FileReader.close:()V
87: StackMap locals:
StackMap stack: java.util.Set
areturn
end local 23 end local 20 end local 19 end local 17 end local 15 end local 13 end local 11 end local 9 StackMap locals: org.openjdk.jmh.profile.LinuxPerfNormProfiler org.openjdk.jmh.results.BenchmarkResult java.io.File java.io.File org.openjdk.jmh.util.Multiset java.lang.Throwable java.lang.Throwable java.io.FileReader java.io.BufferedReader
StackMap stack: java.lang.Throwable
88: astore 5
89: aload 8
ifnull 90
aload 8
invokevirtual java.io.BufferedReader.close:()V
end local 8 StackMap locals:
StackMap stack:
90: aload 5
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
91: astore 6
aload 5
ifnonnull 92
aload 6
astore 5
goto 93
StackMap locals:
StackMap stack:
92: aload 5
aload 6
if_acmpeq 93
aload 5
aload 6
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
93: aload 7
ifnull 94
aload 7
invokevirtual java.io.FileReader.close:()V
end local 7 StackMap locals:
StackMap stack:
94: aload 5
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
95: astore 6
aload 5
ifnonnull 96
aload 6
astore 5
goto 97
StackMap locals:
StackMap stack:
96: aload 5
aload 6
if_acmpeq 97
aload 5
aload 6
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
97: aload 5
athrow
StackMap locals: org.openjdk.jmh.profile.LinuxPerfNormProfiler org.openjdk.jmh.results.BenchmarkResult java.io.File java.io.File org.openjdk.jmh.util.Multiset
StackMap stack: java.io.IOException
98: astore 5
start local 5 99: new java.lang.IllegalStateException
dup
aload 5
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 100 0 this Lorg/openjdk/jmh/profile/LinuxPerfNormProfiler;
0 100 1 br Lorg/openjdk/jmh/results/BenchmarkResult;
0 100 2 stdOut Ljava/io/File;
0 100 3 stdErr Ljava/io/File;
1 100 4 events Lorg/openjdk/jmh/util/Multiset<Ljava/lang/String;>;
3 94 7 fr Ljava/io/FileReader;
4 90 8 reader Ljava/io/BufferedReader;
6 7 9 skipMs J
8 88 9 skipMs J
10 11 11 lenMs D
12 88 11 lenMs D
13 88 13 readFrom D
14 88 15 softTo D
15 88 17 readTo D
16 88 19 nf Ljava/text/NumberFormat;
17 59 20 line Ljava/lang/String;
60 88 20 line Ljava/lang/String;
20 51 21 split [Ljava/lang/String;
22 25 22 time Ljava/lang/String;
27 51 22 time Ljava/lang/String;
23 25 23 count Ljava/lang/String;
28 51 23 count Ljava/lang/String;
24 25 24 event Ljava/lang/String;
29 51 24 event Ljava/lang/String;
30 51 25 multiplier D
31 41 27 timeSec D
36 41 29 intervalSec D
45 48 27 lValue J
52 59 21 idx I
54 59 22 count Ljava/lang/String;
55 59 23 event Ljava/lang/String;
56 57 24 lValue J
69 70 21 totalOpts J
71 84 21 totalOpts J
66 88 23 md Lorg/openjdk/jmh/results/BenchmarkResultMetaData;
72 84 24 results Ljava/util/Collection<Lorg/openjdk/jmh/results/Result;>;
74 75 25 key Ljava/lang/String;
77 80 25 cycles J
78 80 27 instructions J
99 100 5 e Ljava/io/IOException;
Exception table:
from to target type
30 32 42 Class java.text.ParseException
33 34 42 Class java.text.ParseException
35 41 42 Class java.text.ParseException
44 46 49 Class java.text.ParseException
47 48 49 Class java.text.ParseException
55 57 58 Class java.text.ParseException
4 81 88 any
84 85 88 any
3 82 91 any
84 86 91 any
88 91 91 any
2 83 95 any
84 87 95 any
88 95 95 any
1 83 98 Class java.io.IOException
84 87 98 Class java.io.IOException
88 98 98 Class java.io.IOException
Signature: (Lorg/openjdk/jmh/results/BenchmarkResult;Ljava/io/File;Ljava/io/File;)Ljava/util/Collection<+Lorg/openjdk/jmh/results/Result;>;
MethodParameters:
Name Flags
br
stdOut
stdErr
}
SourceFile: "LinuxPerfNormProfiler.java"
NestMembers:
org.openjdk.jmh.profile.LinuxPerfNormProfiler$PerfResult
InnerClasses:
PerfResult = org.openjdk.jmh.profile.LinuxPerfNormProfiler$PerfResult of org.openjdk.jmh.profile.LinuxPerfNormProfiler