final class sun.java2d.marlin.Helpers$IndexStack
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: sun.java2d.marlin.Helpers$IndexStack
  super_class: java.lang.Object
{
  private static final int INITIAL_COUNT;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private int end;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int[] indices;
    descriptor: [I
    flags: (0x0002) ACC_PRIVATE

  private final sun.java2d.marlin.IntArrayCache$Reference indices_ref;
    descriptor: Lsun/java2d/marlin/IntArrayCache$Reference;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private int indicesUseMark;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private final sun.java2d.marlin.stats.StatLong stat_idxstack_indices;
    descriptor: Lsun/java2d/marlin/stats/StatLong;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final sun.java2d.marlin.stats.Histogram hist_idxstack_indices;
    descriptor: Lsun/java2d/marlin/stats/Histogram;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final sun.java2d.marlin.stats.StatLong stat_array_idxstack_indices;
    descriptor: Lsun/java2d/marlin/stats/StatLong;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 862
            getstatic sun.java2d.marlin.Helpers.INITIAL_EDGES_COUNT:I
            iconst_2
            ishr
            putstatic sun.java2d.marlin.Helpers$IndexStack.INITIAL_COUNT:I
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>(sun.java2d.marlin.RendererContext);
    descriptor: (Lsun/java2d/marlin/RendererContext;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // sun.java2d.marlin.Helpers$IndexStack this
        start local 1 // sun.java2d.marlin.RendererContext rdrCtx
         0: .line 878
            aload 0 /* this */
            aload 1 /* rdrCtx */
            aconst_null
            aconst_null
            aconst_null
            invokespecial sun.java2d.marlin.Helpers$IndexStack.<init>:(Lsun/java2d/marlin/RendererContext;Lsun/java2d/marlin/stats/StatLong;Lsun/java2d/marlin/stats/Histogram;Lsun/java2d/marlin/stats/StatLong;)V
         1: .line 879
            return
        end local 1 // sun.java2d.marlin.RendererContext rdrCtx
        end local 0 // sun.java2d.marlin.Helpers$IndexStack this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lsun/java2d/marlin/Helpers$IndexStack;
            0    2     1  rdrCtx  Lsun/java2d/marlin/RendererContext;
    MethodParameters:
        Name  Flags
      rdrCtx  final

  void <init>(sun.java2d.marlin.RendererContext, sun.java2d.marlin.stats.StatLong, sun.java2d.marlin.stats.Histogram, sun.java2d.marlin.stats.StatLong);
    descriptor: (Lsun/java2d/marlin/RendererContext;Lsun/java2d/marlin/stats/StatLong;Lsun/java2d/marlin/stats/Histogram;Lsun/java2d/marlin/stats/StatLong;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=5, args_size=5
        start local 0 // sun.java2d.marlin.Helpers$IndexStack this
        start local 1 // sun.java2d.marlin.RendererContext rdrCtx
        start local 2 // sun.java2d.marlin.stats.StatLong stat_idxstack_indices
        start local 3 // sun.java2d.marlin.stats.Histogram hist_idxstack_indices
        start local 4 // sun.java2d.marlin.stats.StatLong stat_array_idxstack_indices
         0: .line 881
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 886
            aload 0 /* this */
            aload 1 /* rdrCtx */
            getstatic sun.java2d.marlin.Helpers$IndexStack.INITIAL_COUNT:I
            invokevirtual sun.java2d.marlin.RendererContext.newDirtyIntArrayRef:(I)Lsun/java2d/marlin/IntArrayCache$Reference;
            putfield sun.java2d.marlin.Helpers$IndexStack.indices_ref:Lsun/java2d/marlin/IntArrayCache$Reference;
         2: .line 887
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.java2d.marlin.Helpers$IndexStack.indices_ref:Lsun/java2d/marlin/IntArrayCache$Reference;
            getfield sun.java2d.marlin.IntArrayCache$Reference.initial:[I
            putfield sun.java2d.marlin.Helpers$IndexStack.indices:[I
         3: .line 888
            aload 0 /* this */
            iconst_0
            putfield sun.java2d.marlin.Helpers$IndexStack.end:I
         4: .line 890
            getstatic sun.java2d.marlin.Helpers.DO_STATS:Z
            ifeq 6
         5: .line 891
            aload 0 /* this */
            iconst_0
            putfield sun.java2d.marlin.Helpers$IndexStack.indicesUseMark:I
         6: .line 893
      StackMap locals: sun.java2d.marlin.Helpers$IndexStack sun.java2d.marlin.RendererContext sun.java2d.marlin.stats.StatLong sun.java2d.marlin.stats.Histogram sun.java2d.marlin.stats.StatLong
      StackMap stack:
            aload 0 /* this */
            aload 2 /* stat_idxstack_indices */
            putfield sun.java2d.marlin.Helpers$IndexStack.stat_idxstack_indices:Lsun/java2d/marlin/stats/StatLong;
         7: .line 894
            aload 0 /* this */
            aload 3 /* hist_idxstack_indices */
            putfield sun.java2d.marlin.Helpers$IndexStack.hist_idxstack_indices:Lsun/java2d/marlin/stats/Histogram;
         8: .line 895
            aload 0 /* this */
            aload 4 /* stat_array_idxstack_indices */
            putfield sun.java2d.marlin.Helpers$IndexStack.stat_array_idxstack_indices:Lsun/java2d/marlin/stats/StatLong;
         9: .line 896
            return
        end local 4 // sun.java2d.marlin.stats.StatLong stat_array_idxstack_indices
        end local 3 // sun.java2d.marlin.stats.Histogram hist_idxstack_indices
        end local 2 // sun.java2d.marlin.stats.StatLong stat_idxstack_indices
        end local 1 // sun.java2d.marlin.RendererContext rdrCtx
        end local 0 // sun.java2d.marlin.Helpers$IndexStack this
      LocalVariableTable:
        Start  End  Slot                         Name  Signature
            0   10     0                         this  Lsun/java2d/marlin/Helpers$IndexStack;
            0   10     1                       rdrCtx  Lsun/java2d/marlin/RendererContext;
            0   10     2        stat_idxstack_indices  Lsun/java2d/marlin/stats/StatLong;
            0   10     3        hist_idxstack_indices  Lsun/java2d/marlin/stats/Histogram;
            0   10     4  stat_array_idxstack_indices  Lsun/java2d/marlin/stats/StatLong;
    MethodParameters:
                             Name  Flags
      rdrCtx                       final
      stat_idxstack_indices        final
      hist_idxstack_indices        final
      stat_array_idxstack_indices  final

  void dispose();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.java2d.marlin.Helpers$IndexStack this
         0: .line 903
            aload 0 /* this */
            iconst_0
            putfield sun.java2d.marlin.Helpers$IndexStack.end:I
         1: .line 905
            getstatic sun.java2d.marlin.Helpers.DO_STATS:Z
            ifeq 5
         2: .line 906
            aload 0 /* this */
            getfield sun.java2d.marlin.Helpers$IndexStack.stat_idxstack_indices:Lsun/java2d/marlin/stats/StatLong;
            aload 0 /* this */
            getfield sun.java2d.marlin.Helpers$IndexStack.indicesUseMark:I
            invokevirtual sun.java2d.marlin.stats.StatLong.add:(I)V
         3: .line 907
            aload 0 /* this */
            getfield sun.java2d.marlin.Helpers$IndexStack.hist_idxstack_indices:Lsun/java2d/marlin/stats/Histogram;
            aload 0 /* this */
            getfield sun.java2d.marlin.Helpers$IndexStack.indicesUseMark:I
            invokevirtual sun.java2d.marlin.stats.Histogram.add:(I)V
         4: .line 910
            aload 0 /* this */
            iconst_0
            putfield sun.java2d.marlin.Helpers$IndexStack.indicesUseMark:I
         5: .line 915
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.java2d.marlin.Helpers$IndexStack.indices_ref:Lsun/java2d/marlin/IntArrayCache$Reference;
            aload 0 /* this */
            getfield sun.java2d.marlin.Helpers$IndexStack.indices:[I
            invokevirtual sun.java2d.marlin.IntArrayCache$Reference.putArray:([I)[I
            putfield sun.java2d.marlin.Helpers$IndexStack.indices:[I
         6: .line 916
            return
        end local 0 // sun.java2d.marlin.Helpers$IndexStack this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lsun/java2d/marlin/Helpers$IndexStack;

  boolean isEmpty();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.java2d.marlin.Helpers$IndexStack this
         0: .line 919
            aload 0 /* this */
            getfield sun.java2d.marlin.Helpers$IndexStack.end:I
            ifne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // sun.java2d.marlin.Helpers$IndexStack this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/java2d/marlin/Helpers$IndexStack;

  void reset();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.java2d.marlin.Helpers$IndexStack this
         0: .line 923
            aload 0 /* this */
            iconst_0
            putfield sun.java2d.marlin.Helpers$IndexStack.end:I
         1: .line 924
            return
        end local 0 // sun.java2d.marlin.Helpers$IndexStack this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/java2d/marlin/Helpers$IndexStack;

  void push(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=6, locals=4, args_size=2
        start local 0 // sun.java2d.marlin.Helpers$IndexStack this
        start local 1 // int v
         0: .line 928
            aload 0 /* this */
            getfield sun.java2d.marlin.Helpers$IndexStack.indices:[I
            astore 2 /* _values */
        start local 2 // int[] _values
         1: .line 929
            aload 0 /* this */
            getfield sun.java2d.marlin.Helpers$IndexStack.end:I
            istore 3 /* nc */
        start local 3 // int nc
         2: .line 930
            iload 3 /* nc */
            ifeq 6
         3: .line 931
            aload 2 /* _values */
            iload 3 /* nc */
            iconst_1
            isub
            iaload
            iload 1 /* v */
            if_icmpne 6
         4: .line 933
            aload 0 /* this */
            dup
            getfield sun.java2d.marlin.Helpers$IndexStack.end:I
            iconst_1
            isub
            putfield sun.java2d.marlin.Helpers$IndexStack.end:I
         5: .line 934
            return
         6: .line 937
      StackMap locals: int[] int
      StackMap stack:
            aload 2 /* _values */
            arraylength
            iload 3 /* nc */
            if_icmpgt 10
         7: .line 938
            getstatic sun.java2d.marlin.Helpers.DO_STATS:Z
            ifeq 9
         8: .line 939
            aload 0 /* this */
            getfield sun.java2d.marlin.Helpers$IndexStack.stat_array_idxstack_indices:Lsun/java2d/marlin/stats/StatLong;
            iload 3 /* nc */
            iconst_1
            iadd
            invokevirtual sun.java2d.marlin.stats.StatLong.add:(I)V
         9: .line 941
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.java2d.marlin.Helpers$IndexStack.indices_ref:Lsun/java2d/marlin/IntArrayCache$Reference;
            aload 2 /* _values */
            iload 3 /* nc */
            iload 3 /* nc */
            iconst_1
            iadd
            invokevirtual sun.java2d.marlin.IntArrayCache$Reference.widenArray:([III)[I
            dup
            astore 2 /* _values */
            putfield sun.java2d.marlin.Helpers$IndexStack.indices:[I
        10: .line 943
      StackMap locals:
      StackMap stack:
            aload 2 /* _values */
            aload 0 /* this */
            dup
            getfield sun.java2d.marlin.Helpers$IndexStack.end:I
            dup_x1
            iconst_1
            iadd
            putfield sun.java2d.marlin.Helpers$IndexStack.end:I
            iload 1 /* v */
            iastore
        11: .line 945
            getstatic sun.java2d.marlin.Helpers.DO_STATS:Z
            ifeq 14
        12: .line 947
            aload 0 /* this */
            getfield sun.java2d.marlin.Helpers$IndexStack.end:I
            aload 0 /* this */
            getfield sun.java2d.marlin.Helpers$IndexStack.indicesUseMark:I
            if_icmple 14
        13: .line 948
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.java2d.marlin.Helpers$IndexStack.end:I
            putfield sun.java2d.marlin.Helpers$IndexStack.indicesUseMark:I
        14: .line 951
      StackMap locals:
      StackMap stack:
            return
        end local 3 // int nc
        end local 2 // int[] _values
        end local 1 // int v
        end local 0 // sun.java2d.marlin.Helpers$IndexStack this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   15     0     this  Lsun/java2d/marlin/Helpers$IndexStack;
            0   15     1        v  I
            1   15     2  _values  [I
            2   15     3       nc  I
    MethodParameters:
      Name  Flags
      v     final

  void pullAll(double[], sun.java2d.marlin.DPathConsumer2D);
    descriptor: ([DLsun/java2d/marlin/DPathConsumer2D;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=7, args_size=3
        start local 0 // sun.java2d.marlin.Helpers$IndexStack this
        start local 1 // double[] points
        start local 2 // sun.java2d.marlin.DPathConsumer2D io
         0: .line 954
            aload 0 /* this */
            getfield sun.java2d.marlin.Helpers$IndexStack.end:I
            istore 3 /* nc */
        start local 3 // int nc
         1: .line 955
            iload 3 /* nc */
            ifne 3
         2: .line 956
            return
         3: .line 958
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield sun.java2d.marlin.Helpers$IndexStack.indices:[I
            astore 4 /* _values */
        start local 4 // int[] _values
         4: .line 960
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         5: goto 9
         6: .line 961
      StackMap locals: int[] int
      StackMap stack:
            aload 4 /* _values */
            iload 5 /* i */
            iaload
            iconst_1
            ishl
            istore 6 /* j */
        start local 6 // int j
         7: .line 962
            aload 2 /* io */
            aload 1 /* points */
            iload 6 /* j */
            daload
            aload 1 /* points */
            iload 6 /* j */
            iconst_1
            iadd
            daload
            invokeinterface sun.java2d.marlin.DPathConsumer2D.lineTo:(DD)V
         8: .line 960
            iinc 5 /* i */ 1
        end local 6 // int j
      StackMap locals:
      StackMap stack:
         9: iload 5 /* i */
            iload 3 /* nc */
            if_icmplt 6
        end local 5 // int i
        10: .line 964
            aload 0 /* this */
            iconst_0
            putfield sun.java2d.marlin.Helpers$IndexStack.end:I
        11: .line 965
            return
        end local 4 // int[] _values
        end local 3 // int nc
        end local 2 // sun.java2d.marlin.DPathConsumer2D io
        end local 1 // double[] points
        end local 0 // sun.java2d.marlin.Helpers$IndexStack this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0     this  Lsun/java2d/marlin/Helpers$IndexStack;
            0   12     1   points  [D
            0   12     2       io  Lsun/java2d/marlin/DPathConsumer2D;
            1   12     3       nc  I
            4   12     4  _values  [I
            5   10     5        i  I
            7    9     6        j  I
    MethodParameters:
        Name  Flags
      points  final
      io      final
}
SourceFile: "Helpers.java"
NestHost: sun.java2d.marlin.Helpers
InnerClasses:
  final IndexStack = sun.java2d.marlin.Helpers$IndexStack of sun.java2d.marlin.Helpers
  final Reference = sun.java2d.marlin.IntArrayCache$Reference of sun.java2d.marlin.IntArrayCache