public class org.openjdk.jmh.profile.GCProfiler implements org.openjdk.jmh.profile.InternalProfiler
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.openjdk.jmh.profile.GCProfiler
  super_class: java.lang.Object
{
  private long beforeTime;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private long beforeGCCount;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private long beforeGCTime;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private org.openjdk.jmh.profile.GCProfiler$HotspotAllocationSnapshot beforeAllocated;
    descriptor: Lorg/openjdk/jmh/profile/GCProfiler$HotspotAllocationSnapshot;
    flags: (0x0002) ACC_PRIVATE

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.openjdk.jmh.profile.GCProfiler this
         0: .line 51
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 52
            return
        end local 0 // org.openjdk.jmh.profile.GCProfiler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/openjdk/jmh/profile/GCProfiler;
    Exceptions:
      throws org.openjdk.jmh.profile.ProfilerException

  public java.lang.String getDescription();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.openjdk.jmh.profile.GCProfiler this
         0: .line 56
            ldc "GC profiling via standard MBeans"
            areturn
        end local 0 // org.openjdk.jmh.profile.GCProfiler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/openjdk/jmh/profile/GCProfiler;

  public void beforeIteration(org.openjdk.jmh.infra.BenchmarkParams, org.openjdk.jmh.infra.IterationParams);
    descriptor: (Lorg/openjdk/jmh/infra/BenchmarkParams;Lorg/openjdk/jmh/infra/IterationParams;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=9, args_size=3
        start local 0 // org.openjdk.jmh.profile.GCProfiler this
        start local 1 // org.openjdk.jmh.infra.BenchmarkParams benchmarkParams
        start local 2 // org.openjdk.jmh.infra.IterationParams iterationParams
         0: .line 61
            invokestatic org.openjdk.jmh.profile.GCProfiler$VMSupport.startChurnProfile:()V
         1: .line 63
            lconst_0
            lstore 3 /* gcTime */
        start local 3 // long gcTime
         2: .line 64
            lconst_0
            lstore 5 /* gcCount */
        start local 5 // long gcCount
         3: .line 65
            invokestatic java.lang.management.ManagementFactory.getGarbageCollectorMXBeans:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 8
            goto 7
      StackMap locals: org.openjdk.jmh.profile.GCProfiler org.openjdk.jmh.infra.BenchmarkParams org.openjdk.jmh.infra.IterationParams long long top java.util.Iterator
      StackMap stack:
         4: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.management.GarbageCollectorMXBean
            astore 7 /* bean */
        start local 7 // java.lang.management.GarbageCollectorMXBean bean
         5: .line 66
            lload 5 /* gcCount */
            aload 7 /* bean */
            invokeinterface java.lang.management.GarbageCollectorMXBean.getCollectionCount:()J
            ladd
            lstore 5 /* gcCount */
         6: .line 67
            lload 3 /* gcTime */
            aload 7 /* bean */
            invokeinterface java.lang.management.GarbageCollectorMXBean.getCollectionTime:()J
            ladd
            lstore 3 /* gcTime */
        end local 7 // java.lang.management.GarbageCollectorMXBean bean
         7: .line 65
      StackMap locals:
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
         8: .line 69
            aload 0 /* this */
            lload 5 /* gcCount */
            putfield org.openjdk.jmh.profile.GCProfiler.beforeGCCount:J
         9: .line 70
            aload 0 /* this */
            lload 3 /* gcTime */
            putfield org.openjdk.jmh.profile.GCProfiler.beforeGCTime:J
        10: .line 71
            aload 0 /* this */
            invokestatic org.openjdk.jmh.profile.GCProfiler$VMSupport.getSnapshot:()Lorg/openjdk/jmh/profile/GCProfiler$HotspotAllocationSnapshot;
            putfield org.openjdk.jmh.profile.GCProfiler.beforeAllocated:Lorg/openjdk/jmh/profile/GCProfiler$HotspotAllocationSnapshot;
        11: .line 72
            aload 0 /* this */
            invokestatic java.lang.System.nanoTime:()J
            putfield org.openjdk.jmh.profile.GCProfiler.beforeTime:J
        12: .line 73
            return
        end local 5 // long gcCount
        end local 3 // long gcTime
        end local 2 // org.openjdk.jmh.infra.IterationParams iterationParams
        end local 1 // org.openjdk.jmh.infra.BenchmarkParams benchmarkParams
        end local 0 // org.openjdk.jmh.profile.GCProfiler this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   13     0             this  Lorg/openjdk/jmh/profile/GCProfiler;
            0   13     1  benchmarkParams  Lorg/openjdk/jmh/infra/BenchmarkParams;
            0   13     2  iterationParams  Lorg/openjdk/jmh/infra/IterationParams;
            2   13     3           gcTime  J
            3   13     5          gcCount  J
            5    7     7             bean  Ljava/lang/management/GarbageCollectorMXBean;
    MethodParameters:
                 Name  Flags
      benchmarkParams  
      iterationParams  

  public java.util.Collection<? extends org.openjdk.jmh.results.Result> afterIteration(org.openjdk.jmh.infra.BenchmarkParams, org.openjdk.jmh.infra.IterationParams, org.openjdk.jmh.results.IterationResult);
    descriptor: (Lorg/openjdk/jmh/infra/BenchmarkParams;Lorg/openjdk/jmh/infra/IterationParams;Lorg/openjdk/jmh/results/IterationResult;)Ljava/util/Collection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=19, args_size=4
        start local 0 // org.openjdk.jmh.profile.GCProfiler this
        start local 1 // org.openjdk.jmh.infra.BenchmarkParams benchmarkParams
        start local 2 // org.openjdk.jmh.infra.IterationParams iterationParams
        start local 3 // org.openjdk.jmh.results.IterationResult iResult
         0: .line 77
            invokestatic org.openjdk.jmh.profile.GCProfiler$VMSupport.finishChurnProfile:()V
         1: .line 78
            invokestatic java.lang.System.nanoTime:()J
            lstore 4 /* afterTime */
        start local 4 // long afterTime
         2: .line 80
            lconst_0
            lstore 6 /* gcTime */
        start local 6 // long gcTime
         3: .line 81
            lconst_0
            lstore 8 /* gcCount */
        start local 8 // long gcCount
         4: .line 82
            invokestatic java.lang.management.ManagementFactory.getGarbageCollectorMXBeans:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 11
            goto 8
      StackMap locals: org.openjdk.jmh.profile.GCProfiler org.openjdk.jmh.infra.BenchmarkParams org.openjdk.jmh.infra.IterationParams org.openjdk.jmh.results.IterationResult long long long top java.util.Iterator
      StackMap stack:
         5: aload 11
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.management.GarbageCollectorMXBean
            astore 10 /* bean */
        start local 10 // java.lang.management.GarbageCollectorMXBean bean
         6: .line 83
            lload 8 /* gcCount */
            aload 10 /* bean */
            invokeinterface java.lang.management.GarbageCollectorMXBean.getCollectionCount:()J
            ladd
            lstore 8 /* gcCount */
         7: .line 84
            lload 6 /* gcTime */
            aload 10 /* bean */
            invokeinterface java.lang.management.GarbageCollectorMXBean.getCollectionTime:()J
            ladd
            lstore 6 /* gcTime */
        end local 10 // java.lang.management.GarbageCollectorMXBean bean
         8: .line 82
      StackMap locals:
      StackMap stack:
            aload 11
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
         9: .line 87
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 10 /* results */
        start local 10 // java.util.List results
        10: .line 89
            aload 0 /* this */
            getfield org.openjdk.jmh.profile.GCProfiler.beforeAllocated:Lorg/openjdk/jmh/profile/GCProfiler$HotspotAllocationSnapshot;
            getstatic org.openjdk.jmh.profile.GCProfiler$HotspotAllocationSnapshot.EMPTY:Lorg/openjdk/jmh/profile/GCProfiler$HotspotAllocationSnapshot;
            if_acmpne 16
        11: .line 91
            aload 10 /* results */
            new org.openjdk.jmh.results.ScalarResult
            dup
            ldc "\u00B7gc.alloc.rate"
        12: .line 92
            ldc NaN
        13: .line 93
            ldc "MB/sec"
            getstatic org.openjdk.jmh.results.AggregationPolicy.AVG:Lorg/openjdk/jmh/results/AggregationPolicy;
            invokespecial org.openjdk.jmh.results.ScalarResult.<init>:(Ljava/lang/String;DLjava/lang/String;Lorg/openjdk/jmh/results/AggregationPolicy;)V
        14: .line 91
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        15: .line 94
            goto 34
        16: .line 95
      StackMap locals: org.openjdk.jmh.profile.GCProfiler org.openjdk.jmh.infra.BenchmarkParams org.openjdk.jmh.infra.IterationParams org.openjdk.jmh.results.IterationResult long long long java.util.List
      StackMap stack:
            invokestatic org.openjdk.jmh.profile.GCProfiler$VMSupport.getSnapshot:()Lorg/openjdk/jmh/profile/GCProfiler$HotspotAllocationSnapshot;
            astore 11 /* newSnapshot */
        start local 11 // org.openjdk.jmh.profile.GCProfiler$HotspotAllocationSnapshot newSnapshot
        17: .line 96
            aload 11 /* newSnapshot */
            aload 0 /* this */
            getfield org.openjdk.jmh.profile.GCProfiler.beforeAllocated:Lorg/openjdk/jmh/profile/GCProfiler$HotspotAllocationSnapshot;
            invokevirtual org.openjdk.jmh.profile.GCProfiler$HotspotAllocationSnapshot.subtract:(Lorg/openjdk/jmh/profile/GCProfiler$HotspotAllocationSnapshot;)J
            lstore 12 /* allocated */
        start local 12 // long allocated
        18: .line 98
            aload 10 /* results */
        19: new org.openjdk.jmh.results.ScalarResult
            dup
            ldc "\u00B7gc.alloc.rate"
        20: .line 99
            lload 4 /* afterTime */
            aload 0 /* this */
            getfield org.openjdk.jmh.profile.GCProfiler.beforeTime:J
            lcmp
            ifeq 22
        21: .line 100
            dconst_1
            lload 12 /* allocated */
            l2d
            dmul
            ldc 1024.0
            ddiv
            ldc 1024.0
            ddiv
            getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
            lconst_1
            invokevirtual java.util.concurrent.TimeUnit.toNanos:(J)J
            l2d
            dmul
            lload 4 /* afterTime */
            aload 0 /* this */
            getfield org.openjdk.jmh.profile.GCProfiler.beforeTime:J
            lsub
            l2d
            ddiv
            goto 23
        22: .line 101
      StackMap locals: org.openjdk.jmh.profile.GCProfiler org.openjdk.jmh.infra.BenchmarkParams org.openjdk.jmh.infra.IterationParams org.openjdk.jmh.results.IterationResult long long long java.util.List org.openjdk.jmh.profile.GCProfiler$HotspotAllocationSnapshot long
      StackMap stack: java.util.List new 19 new 19 java.lang.String
            ldc NaN
        23: .line 102
      StackMap locals: org.openjdk.jmh.profile.GCProfiler org.openjdk.jmh.infra.BenchmarkParams org.openjdk.jmh.infra.IterationParams org.openjdk.jmh.results.IterationResult long long long java.util.List org.openjdk.jmh.profile.GCProfiler$HotspotAllocationSnapshot long
      StackMap stack: java.util.List new 19 new 19 java.lang.String double
            ldc "MB/sec"
            getstatic org.openjdk.jmh.results.AggregationPolicy.AVG:Lorg/openjdk/jmh/results/AggregationPolicy;
            invokespecial org.openjdk.jmh.results.ScalarResult.<init>:(Ljava/lang/String;DLjava/lang/String;Lorg/openjdk/jmh/results/AggregationPolicy;)V
        24: .line 98
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        25: .line 103
            lload 12 /* allocated */
            lconst_0
            lcmp
            ifeq 34
        26: .line 104
            aload 3 /* iResult */
            invokevirtual org.openjdk.jmh.results.IterationResult.getMetadata:()Lorg/openjdk/jmh/results/IterationResultMetaData;
            invokevirtual org.openjdk.jmh.results.IterationResultMetaData.getAllOps:()J
            lstore 14 /* allOps */
        start local 14 // long allOps
        27: .line 105
            aload 10 /* results */
        28: new org.openjdk.jmh.results.ScalarResult
            dup
            ldc "\u00B7gc.alloc.rate.norm"
        29: .line 106
            lload 14 /* allOps */
            lconst_0
            lcmp
            ifeq 31
        30: .line 107
            dconst_1
            lload 12 /* allocated */
            l2d
            dmul
            lload 14 /* allOps */
            l2d
            ddiv
            goto 32
        31: .line 108
      StackMap locals: org.openjdk.jmh.profile.GCProfiler org.openjdk.jmh.infra.BenchmarkParams org.openjdk.jmh.infra.IterationParams org.openjdk.jmh.results.IterationResult long long long java.util.List org.openjdk.jmh.profile.GCProfiler$HotspotAllocationSnapshot long long
      StackMap stack: java.util.List new 28 new 28 java.lang.String
            ldc NaN
        32: .line 109
      StackMap locals: org.openjdk.jmh.profile.GCProfiler org.openjdk.jmh.infra.BenchmarkParams org.openjdk.jmh.infra.IterationParams org.openjdk.jmh.results.IterationResult long long long java.util.List org.openjdk.jmh.profile.GCProfiler$HotspotAllocationSnapshot long long
      StackMap stack: java.util.List new 28 new 28 java.lang.String double
            ldc "B/op"
            getstatic org.openjdk.jmh.results.AggregationPolicy.AVG:Lorg/openjdk/jmh/results/AggregationPolicy;
            invokespecial org.openjdk.jmh.results.ScalarResult.<init>:(Ljava/lang/String;DLjava/lang/String;Lorg/openjdk/jmh/results/AggregationPolicy;)V
        33: .line 105
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 14 // long allOps
        end local 12 // long allocated
        end local 11 // org.openjdk.jmh.profile.GCProfiler$HotspotAllocationSnapshot newSnapshot
        34: .line 113
      StackMap locals:
      StackMap stack:
            aload 10 /* results */
            new org.openjdk.jmh.results.ScalarResult
            dup
        35: .line 114
            ldc "\u00B7gc.count"
        36: .line 115
            lload 8 /* gcCount */
            aload 0 /* this */
            getfield org.openjdk.jmh.profile.GCProfiler.beforeGCCount:J
            lsub
            l2d
        37: .line 116
            ldc "counts"
        38: .line 117
            getstatic org.openjdk.jmh.results.AggregationPolicy.SUM:Lorg/openjdk/jmh/results/AggregationPolicy;
            invokespecial org.openjdk.jmh.results.ScalarResult.<init>:(Ljava/lang/String;DLjava/lang/String;Lorg/openjdk/jmh/results/AggregationPolicy;)V
        39: .line 113
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        40: .line 119
            lload 8 /* gcCount */
            aload 0 /* this */
            getfield org.openjdk.jmh.profile.GCProfiler.beforeGCCount:J
            lcmp
            ifne 41
            lload 6 /* gcTime */
            aload 0 /* this */
            getfield org.openjdk.jmh.profile.GCProfiler.beforeGCTime:J
            lcmp
            ifeq 47
        41: .line 120
      StackMap locals:
      StackMap stack:
            aload 10 /* results */
            new org.openjdk.jmh.results.ScalarResult
            dup
        42: .line 121
            ldc "\u00B7gc.time"
        43: .line 122
            lload 6 /* gcTime */
            aload 0 /* this */
            getfield org.openjdk.jmh.profile.GCProfiler.beforeGCTime:J
            lsub
            l2d
        44: .line 123
            ldc "ms"
        45: .line 124
            getstatic org.openjdk.jmh.results.AggregationPolicy.SUM:Lorg/openjdk/jmh/results/AggregationPolicy;
            invokespecial org.openjdk.jmh.results.ScalarResult.<init>:(Ljava/lang/String;DLjava/lang/String;Lorg/openjdk/jmh/results/AggregationPolicy;)V
        46: .line 120
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        47: .line 127
      StackMap locals:
      StackMap stack:
            invokestatic org.openjdk.jmh.profile.GCProfiler$VMSupport.getChurn:()Lorg/openjdk/jmh/util/Multiset;
            astore 11 /* churn */
        start local 11 // org.openjdk.jmh.util.Multiset churn
        48: .line 128
            aload 11 /* churn */
            invokeinterface org.openjdk.jmh.util.Multiset.keys:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 13
            goto 68
      StackMap locals: org.openjdk.jmh.profile.GCProfiler org.openjdk.jmh.infra.BenchmarkParams org.openjdk.jmh.infra.IterationParams org.openjdk.jmh.results.IterationResult long long long java.util.List org.openjdk.jmh.util.Multiset top java.util.Iterator
      StackMap stack:
        49: aload 13
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 12 /* space */
        start local 12 // java.lang.String space
        50: .line 129
            lload 4 /* afterTime */
            aload 0 /* this */
            getfield org.openjdk.jmh.profile.GCProfiler.beforeTime:J
            lcmp
            ifeq 52
        51: .line 130
            dconst_1
            aload 11 /* churn */
            aload 12 /* space */
            invokeinterface org.openjdk.jmh.util.Multiset.count:(Ljava/lang/Object;)J
            l2d
            dmul
            getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
            lconst_1
            invokevirtual java.util.concurrent.TimeUnit.toNanos:(J)J
            l2d
            dmul
            lload 4 /* afterTime */
            aload 0 /* this */
            getfield org.openjdk.jmh.profile.GCProfiler.beforeTime:J
            lsub
            l2d
            ddiv
            ldc 1024.0
            ddiv
            ldc 1024.0
            ddiv
            goto 53
        52: .line 131
      StackMap locals: org.openjdk.jmh.profile.GCProfiler org.openjdk.jmh.infra.BenchmarkParams org.openjdk.jmh.infra.IterationParams org.openjdk.jmh.results.IterationResult long long long java.util.List org.openjdk.jmh.util.Multiset java.lang.String java.util.Iterator
      StackMap stack:
            ldc NaN
        53: .line 129
      StackMap locals:
      StackMap stack: double
            dstore 14 /* churnRate */
        start local 14 // double churnRate
        54: .line 133
            dconst_1
            aload 11 /* churn */
            aload 12 /* space */
            invokeinterface org.openjdk.jmh.util.Multiset.count:(Ljava/lang/Object;)J
            l2d
            dmul
            aload 3 /* iResult */
            invokevirtual org.openjdk.jmh.results.IterationResult.getMetadata:()Lorg/openjdk/jmh/results/IterationResultMetaData;
            invokevirtual org.openjdk.jmh.results.IterationResultMetaData.getAllOps:()J
            l2d
            ddiv
            dstore 16 /* churnNorm */
        start local 16 // double churnNorm
        55: .line 135
            aload 12 /* space */
            ldc " "
            ldc "_"
            invokevirtual java.lang.String.replaceAll:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 18 /* spaceName */
        start local 18 // java.lang.String spaceName
        56: .line 137
            aload 10 /* results */
            new org.openjdk.jmh.results.ScalarResult
            dup
        57: .line 138
            new java.lang.StringBuilder
            dup
            ldc "\u00B7gc.churn."
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 18 /* spaceName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        58: .line 139
            dload 14 /* churnRate */
        59: .line 140
            ldc "MB/sec"
        60: .line 141
            getstatic org.openjdk.jmh.results.AggregationPolicy.AVG:Lorg/openjdk/jmh/results/AggregationPolicy;
            invokespecial org.openjdk.jmh.results.ScalarResult.<init>:(Ljava/lang/String;DLjava/lang/String;Lorg/openjdk/jmh/results/AggregationPolicy;)V
        61: .line 137
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        62: .line 143
            aload 10 /* results */
            new org.openjdk.jmh.results.ScalarResult
            dup
        63: .line 144
            new java.lang.StringBuilder
            dup
            ldc "\u00B7gc.churn."
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 18 /* spaceName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ".norm"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        64: .line 145
            dload 16 /* churnNorm */
        65: .line 146
            ldc "B/op"
        66: .line 147
            getstatic org.openjdk.jmh.results.AggregationPolicy.AVG:Lorg/openjdk/jmh/results/AggregationPolicy;
            invokespecial org.openjdk.jmh.results.ScalarResult.<init>:(Ljava/lang/String;DLjava/lang/String;Lorg/openjdk/jmh/results/AggregationPolicy;)V
        67: .line 143
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 18 // java.lang.String spaceName
        end local 16 // double churnNorm
        end local 14 // double churnRate
        end local 12 // java.lang.String space
        68: .line 128
      StackMap locals: org.openjdk.jmh.profile.GCProfiler org.openjdk.jmh.infra.BenchmarkParams org.openjdk.jmh.infra.IterationParams org.openjdk.jmh.results.IterationResult long long long java.util.List org.openjdk.jmh.util.Multiset top java.util.Iterator
      StackMap stack:
            aload 13
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 49
        69: .line 150
            aload 10 /* results */
            areturn
        end local 11 // org.openjdk.jmh.util.Multiset churn
        end local 10 // java.util.List results
        end local 8 // long gcCount
        end local 6 // long gcTime
        end local 4 // long afterTime
        end local 3 // org.openjdk.jmh.results.IterationResult iResult
        end local 2 // org.openjdk.jmh.infra.IterationParams iterationParams
        end local 1 // org.openjdk.jmh.infra.BenchmarkParams benchmarkParams
        end local 0 // org.openjdk.jmh.profile.GCProfiler this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   70     0             this  Lorg/openjdk/jmh/profile/GCProfiler;
            0   70     1  benchmarkParams  Lorg/openjdk/jmh/infra/BenchmarkParams;
            0   70     2  iterationParams  Lorg/openjdk/jmh/infra/IterationParams;
            0   70     3          iResult  Lorg/openjdk/jmh/results/IterationResult;
            2   70     4        afterTime  J
            3   70     6           gcTime  J
            4   70     8          gcCount  J
            6    8    10             bean  Ljava/lang/management/GarbageCollectorMXBean;
           10   70    10          results  Ljava/util/List<Lorg/openjdk/jmh/results/ScalarResult;>;
           17   34    11      newSnapshot  Lorg/openjdk/jmh/profile/GCProfiler$HotspotAllocationSnapshot;
           18   34    12        allocated  J
           27   34    14           allOps  J
           48   70    11            churn  Lorg/openjdk/jmh/util/Multiset<Ljava/lang/String;>;
           50   68    12            space  Ljava/lang/String;
           54   68    14        churnRate  D
           55   68    16        churnNorm  D
           56   68    18        spaceName  Ljava/lang/String;
    Signature: (Lorg/openjdk/jmh/infra/BenchmarkParams;Lorg/openjdk/jmh/infra/IterationParams;Lorg/openjdk/jmh/results/IterationResult;)Ljava/util/Collection<+Lorg/openjdk/jmh/results/Result;>;
    MethodParameters:
                 Name  Flags
      benchmarkParams  
      iterationParams  
      iResult          
}
SourceFile: "GCProfiler.java"
NestMembers:
  org.openjdk.jmh.profile.GCProfiler$HotspotAllocationSnapshot  org.openjdk.jmh.profile.GCProfiler$VMSupport  org.openjdk.jmh.profile.GCProfiler$VMSupport$1
InnerClasses:
  HotspotAllocationSnapshot = org.openjdk.jmh.profile.GCProfiler$HotspotAllocationSnapshot of org.openjdk.jmh.profile.GCProfiler
  VMSupport = org.openjdk.jmh.profile.GCProfiler$VMSupport of org.openjdk.jmh.profile.GCProfiler