public class com.sun.imageio.plugins.common.ReaderUtil
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.sun.imageio.plugins.common.ReaderUtil
super_class: java.lang.Object
{
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // com.sun.imageio.plugins.common.ReaderUtil this
0: .line 40
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // com.sun.imageio.plugins.common.ReaderUtil this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/imageio/plugins/common/ReaderUtil;
private static void computeUpdatedPixels(int, int, int, int, int, int, int, int, int, int[], int);
descriptor: (IIIIIIIII[II)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=18, args_size=11
start local 0 // int sourceOffset
start local 1 // int sourceExtent
start local 2 // int destinationOffset
start local 3 // int dstMin
start local 4 // int dstMax
start local 5 // int sourceSubsampling
start local 6 // int passStart
start local 7 // int passExtent
start local 8 // int passPeriod
start local 9 // int[] vals
start local 10 // int offset
0: .line 84
iconst_0
istore 11 /* gotPixel */
start local 11 // boolean gotPixel
1: .line 85
iconst_m1
istore 12 /* firstDst */
start local 12 // int firstDst
2: .line 86
iconst_m1
istore 13 /* secondDst */
start local 13 // int secondDst
3: .line 87
iconst_m1
istore 14 /* lastDst */
start local 14 // int lastDst
4: .line 89
iconst_0
istore 15 /* i */
start local 15 // int i
5: goto 28
6: .line 90
StackMap locals: int int int int int int int int int int[] int int int int int int
StackMap stack:
iload 6 /* passStart */
iload 15 /* i */
iload 8 /* passPeriod */
imul
iadd
istore 16 /* src */
start local 16 // int src
7: .line 91
iload 16 /* src */
iload 0 /* sourceOffset */
if_icmpge 9
8: .line 92
goto 27
9: .line 94
StackMap locals: int
StackMap stack:
iload 16 /* src */
iload 0 /* sourceOffset */
isub
iload 5 /* sourceSubsampling */
irem
ifeq 11
10: .line 95
goto 27
11: .line 97
StackMap locals:
StackMap stack:
iload 16 /* src */
iload 0 /* sourceOffset */
iload 1 /* sourceExtent */
iadd
if_icmplt 13
12: .line 98
goto 29
13: .line 101
StackMap locals:
StackMap stack:
iload 2 /* destinationOffset */
14: .line 102
iload 16 /* src */
iload 0 /* sourceOffset */
isub
iload 5 /* sourceSubsampling */
idiv
15: .line 101
iadd
istore 17 /* dst */
start local 17 // int dst
16: .line 103
iload 17 /* dst */
iload 3 /* dstMin */
if_icmpge 18
17: .line 104
goto 27
18: .line 106
StackMap locals: int
StackMap stack:
iload 17 /* dst */
iload 4 /* dstMax */
if_icmple 20
19: .line 107
goto 29
20: .line 110
StackMap locals:
StackMap stack:
iload 11 /* gotPixel */
ifne 24
21: .line 111
iload 17 /* dst */
istore 12 /* firstDst */
22: .line 112
iconst_1
istore 11 /* gotPixel */
23: .line 113
goto 26
StackMap locals:
StackMap stack:
24: iload 13 /* secondDst */
iconst_m1
if_icmpne 26
25: .line 114
iload 17 /* dst */
istore 13 /* secondDst */
26: .line 116
StackMap locals:
StackMap stack:
iload 17 /* dst */
istore 14 /* lastDst */
end local 17 // int dst
end local 16 // int src
27: .line 89
StackMap locals:
StackMap stack:
iinc 15 /* i */ 1
StackMap locals:
StackMap stack:
28: iload 15 /* i */
iload 7 /* passExtent */
if_icmplt 6
end local 15 // int i
29: .line 119
StackMap locals:
StackMap stack:
aload 9 /* vals */
iload 10 /* offset */
iload 12 /* firstDst */
iastore
30: .line 122
iload 11 /* gotPixel */
ifne 33
31: .line 123
aload 9 /* vals */
iload 10 /* offset */
iconst_2
iadd
iconst_0
iastore
32: .line 124
goto 34
33: .line 125
StackMap locals:
StackMap stack:
aload 9 /* vals */
iload 10 /* offset */
iconst_2
iadd
iload 14 /* lastDst */
iload 12 /* firstDst */
isub
iconst_1
iadd
iastore
34: .line 129
StackMap locals:
StackMap stack:
aload 9 /* vals */
iload 10 /* offset */
iconst_4
iadd
iload 13 /* secondDst */
iload 12 /* firstDst */
isub
iconst_1
invokestatic java.lang.Math.max:(II)I
iastore
35: .line 130
return
end local 14 // int lastDst
end local 13 // int secondDst
end local 12 // int firstDst
end local 11 // boolean gotPixel
end local 10 // int offset
end local 9 // int[] vals
end local 8 // int passPeriod
end local 7 // int passExtent
end local 6 // int passStart
end local 5 // int sourceSubsampling
end local 4 // int dstMax
end local 3 // int dstMin
end local 2 // int destinationOffset
end local 1 // int sourceExtent
end local 0 // int sourceOffset
LocalVariableTable:
Start End Slot Name Signature
0 36 0 sourceOffset I
0 36 1 sourceExtent I
0 36 2 destinationOffset I
0 36 3 dstMin I
0 36 4 dstMax I
0 36 5 sourceSubsampling I
0 36 6 passStart I
0 36 7 passExtent I
0 36 8 passPeriod I
0 36 9 vals [I
0 36 10 offset I
1 36 11 gotPixel Z
2 36 12 firstDst I
3 36 13 secondDst I
4 36 14 lastDst I
5 29 15 i I
7 27 16 src I
16 27 17 dst I
MethodParameters:
Name Flags
sourceOffset
sourceExtent
destinationOffset
dstMin
dstMax
sourceSubsampling
passStart
passExtent
passPeriod
vals
offset
public static int[] computeUpdatedPixels(java.awt.Rectangle, java.awt.Point, int, int, int, int, int, int, int, int, int, int, int, int);
descriptor: (Ljava/awt/Rectangle;Ljava/awt/Point;IIIIIIIIIIII)[I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=11, locals=15, args_size=14
start local 0 // java.awt.Rectangle sourceRegion
start local 1 // java.awt.Point destinationOffset
start local 2 // int dstMinX
start local 3 // int dstMinY
start local 4 // int dstMaxX
start local 5 // int dstMaxY
start local 6 // int sourceXSubsampling
start local 7 // int sourceYSubsampling
start local 8 // int passXStart
start local 9 // int passYStart
start local 10 // int passWidth
start local 11 // int passHeight
start local 12 // int passPeriodX
start local 13 // int passPeriodY
0: .line 190
bipush 6
newarray 10
astore 14 /* vals */
start local 14 // int[] vals
1: .line 191
aload 0 /* sourceRegion */
getfield java.awt.Rectangle.x:I
aload 0 /* sourceRegion */
getfield java.awt.Rectangle.width:I
2: .line 192
aload 1 /* destinationOffset */
getfield java.awt.Point.x:I
3: .line 193
iload 2 /* dstMinX */
iload 4 /* dstMaxX */
iload 6 /* sourceXSubsampling */
4: .line 194
iload 8 /* passXStart */
iload 10 /* passWidth */
iload 12 /* passPeriodX */
5: .line 195
aload 14 /* vals */
iconst_0
6: .line 191
invokestatic com.sun.imageio.plugins.common.ReaderUtil.computeUpdatedPixels:(IIIIIIIII[II)V
7: .line 196
aload 0 /* sourceRegion */
getfield java.awt.Rectangle.y:I
aload 0 /* sourceRegion */
getfield java.awt.Rectangle.height:I
8: .line 197
aload 1 /* destinationOffset */
getfield java.awt.Point.y:I
9: .line 198
iload 3 /* dstMinY */
iload 5 /* dstMaxY */
iload 7 /* sourceYSubsampling */
10: .line 199
iload 9 /* passYStart */
iload 11 /* passHeight */
iload 13 /* passPeriodY */
11: .line 200
aload 14 /* vals */
iconst_1
12: .line 196
invokestatic com.sun.imageio.plugins.common.ReaderUtil.computeUpdatedPixels:(IIIIIIIII[II)V
13: .line 201
aload 14 /* vals */
areturn
end local 14 // int[] vals
end local 13 // int passPeriodY
end local 12 // int passPeriodX
end local 11 // int passHeight
end local 10 // int passWidth
end local 9 // int passYStart
end local 8 // int passXStart
end local 7 // int sourceYSubsampling
end local 6 // int sourceXSubsampling
end local 5 // int dstMaxY
end local 4 // int dstMaxX
end local 3 // int dstMinY
end local 2 // int dstMinX
end local 1 // java.awt.Point destinationOffset
end local 0 // java.awt.Rectangle sourceRegion
LocalVariableTable:
Start End Slot Name Signature
0 14 0 sourceRegion Ljava/awt/Rectangle;
0 14 1 destinationOffset Ljava/awt/Point;
0 14 2 dstMinX I
0 14 3 dstMinY I
0 14 4 dstMaxX I
0 14 5 dstMaxY I
0 14 6 sourceXSubsampling I
0 14 7 sourceYSubsampling I
0 14 8 passXStart I
0 14 9 passYStart I
0 14 10 passWidth I
0 14 11 passHeight I
0 14 12 passPeriodX I
0 14 13 passPeriodY I
1 14 14 vals [I
MethodParameters:
Name Flags
sourceRegion
destinationOffset
dstMinX
dstMinY
dstMaxX
dstMaxY
sourceXSubsampling
sourceYSubsampling
passXStart
passYStart
passWidth
passHeight
passPeriodX
passPeriodY
public static int readMultiByteInteger(javax.imageio.stream.ImageInputStream);
descriptor: (Ljavax/imageio/stream/ImageInputStream;)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=1
start local 0 // javax.imageio.stream.ImageInputStream iis
0: .line 207
aload 0 /* iis */
invokeinterface javax.imageio.stream.ImageInputStream.readByte:()B
istore 1 /* value */
start local 1 // int value
1: .line 208
iload 1 /* value */
bipush 127
iand
istore 2 /* result */
start local 2 // int result
2: .line 209
goto 6
3: .line 210
StackMap locals: int int
StackMap stack:
iload 2 /* result */
bipush 7
ishl
istore 2 /* result */
4: .line 211
aload 0 /* iis */
invokeinterface javax.imageio.stream.ImageInputStream.readByte:()B
istore 1 /* value */
5: .line 212
iload 2 /* result */
iload 1 /* value */
bipush 127
iand
ior
istore 2 /* result */
6: .line 209
StackMap locals:
StackMap stack:
iload 1 /* value */
sipush 128
iand
sipush 128
if_icmpeq 3
7: .line 214
iload 2 /* result */
ireturn
end local 2 // int result
end local 1 // int value
end local 0 // javax.imageio.stream.ImageInputStream iis
LocalVariableTable:
Start End Slot Name Signature
0 8 0 iis Ljavax/imageio/stream/ImageInputStream;
1 8 1 value I
2 8 2 result I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
iis
}
SourceFile: "ReaderUtil.java"