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: 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 start local 1 0: aload 0
aload 1
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: return
end local 1 end local 0 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 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
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: aload 0
aload 0
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: aload 0
iconst_0
putfield sun.java2d.marlin.Helpers$IndexStack.end:I
4: getstatic sun.java2d.marlin.Helpers.DO_STATS:Z
ifeq 6
5: aload 0
iconst_0
putfield sun.java2d.marlin.Helpers$IndexStack.indicesUseMark:I
6: 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
aload 2
putfield sun.java2d.marlin.Helpers$IndexStack.stat_idxstack_indices:Lsun/java2d/marlin/stats/StatLong;
7: aload 0
aload 3
putfield sun.java2d.marlin.Helpers$IndexStack.hist_idxstack_indices:Lsun/java2d/marlin/stats/Histogram;
8: aload 0
aload 4
putfield sun.java2d.marlin.Helpers$IndexStack.stat_array_idxstack_indices:Lsun/java2d/marlin/stats/StatLong;
9: return
end local 4 end local 3 end local 2 end local 1 end local 0 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 0: aload 0
iconst_0
putfield sun.java2d.marlin.Helpers$IndexStack.end:I
1: getstatic sun.java2d.marlin.Helpers.DO_STATS:Z
ifeq 5
2: aload 0
getfield sun.java2d.marlin.Helpers$IndexStack.stat_idxstack_indices:Lsun/java2d/marlin/stats/StatLong;
aload 0
getfield sun.java2d.marlin.Helpers$IndexStack.indicesUseMark:I
invokevirtual sun.java2d.marlin.stats.StatLong.add:(I)V
3: aload 0
getfield sun.java2d.marlin.Helpers$IndexStack.hist_idxstack_indices:Lsun/java2d/marlin/stats/Histogram;
aload 0
getfield sun.java2d.marlin.Helpers$IndexStack.indicesUseMark:I
invokevirtual sun.java2d.marlin.stats.Histogram.add:(I)V
4: aload 0
iconst_0
putfield sun.java2d.marlin.Helpers$IndexStack.indicesUseMark:I
5: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield sun.java2d.marlin.Helpers$IndexStack.indices_ref:Lsun/java2d/marlin/IntArrayCache$Reference;
aload 0
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: return
end local 0 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 0: aload 0
getfield sun.java2d.marlin.Helpers$IndexStack.end:I
ifne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 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 0: aload 0
iconst_0
putfield sun.java2d.marlin.Helpers$IndexStack.end:I
1: return
end local 0 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 start local 1 0: aload 0
getfield sun.java2d.marlin.Helpers$IndexStack.indices:[I
astore 2
start local 2 1: aload 0
getfield sun.java2d.marlin.Helpers$IndexStack.end:I
istore 3
start local 3 2: iload 3
ifeq 6
3: aload 2
iload 3
iconst_1
isub
iaload
iload 1
if_icmpne 6
4: aload 0
dup
getfield sun.java2d.marlin.Helpers$IndexStack.end:I
iconst_1
isub
putfield sun.java2d.marlin.Helpers$IndexStack.end:I
5: return
6: StackMap locals: int[] int
StackMap stack:
aload 2
arraylength
iload 3
if_icmpgt 10
7: getstatic sun.java2d.marlin.Helpers.DO_STATS:Z
ifeq 9
8: aload 0
getfield sun.java2d.marlin.Helpers$IndexStack.stat_array_idxstack_indices:Lsun/java2d/marlin/stats/StatLong;
iload 3
iconst_1
iadd
invokevirtual sun.java2d.marlin.stats.StatLong.add:(I)V
9: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield sun.java2d.marlin.Helpers$IndexStack.indices_ref:Lsun/java2d/marlin/IntArrayCache$Reference;
aload 2
iload 3
iload 3
iconst_1
iadd
invokevirtual sun.java2d.marlin.IntArrayCache$Reference.widenArray:([III)[I
dup
astore 2
putfield sun.java2d.marlin.Helpers$IndexStack.indices:[I
10: StackMap locals:
StackMap stack:
aload 2
aload 0
dup
getfield sun.java2d.marlin.Helpers$IndexStack.end:I
dup_x1
iconst_1
iadd
putfield sun.java2d.marlin.Helpers$IndexStack.end:I
iload 1
iastore
11: getstatic sun.java2d.marlin.Helpers.DO_STATS:Z
ifeq 14
12: aload 0
getfield sun.java2d.marlin.Helpers$IndexStack.end:I
aload 0
getfield sun.java2d.marlin.Helpers$IndexStack.indicesUseMark:I
if_icmple 14
13: aload 0
aload 0
getfield sun.java2d.marlin.Helpers$IndexStack.end:I
putfield sun.java2d.marlin.Helpers$IndexStack.indicesUseMark:I
14: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 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 start local 1 start local 2 0: aload 0
getfield sun.java2d.marlin.Helpers$IndexStack.end:I
istore 3
start local 3 1: iload 3
ifne 3
2: return
3: StackMap locals: int
StackMap stack:
aload 0
getfield sun.java2d.marlin.Helpers$IndexStack.indices:[I
astore 4
start local 4 4: iconst_0
istore 5
start local 5 5: goto 9
6: StackMap locals: int[] int
StackMap stack:
aload 4
iload 5
iaload
iconst_1
ishl
istore 6
start local 6 7: aload 2
aload 1
iload 6
daload
aload 1
iload 6
iconst_1
iadd
daload
invokeinterface sun.java2d.marlin.DPathConsumer2D.lineTo:(DD)V
8: iinc 5 1
end local 6 StackMap locals:
StackMap stack:
9: iload 5
iload 3
if_icmplt 6
end local 5 10: aload 0
iconst_0
putfield sun.java2d.marlin.Helpers$IndexStack.end:I
11: return
end local 4 end local 3 end local 2 end local 1 end local 0 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