class sun.nio.cs.UTF_8$Decoder extends java.nio.charset.CharsetDecoder
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: sun.nio.cs.UTF_8$Decoder
super_class: java.nio.charset.CharsetDecoder
{
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lsun/nio/cs/UTF_8;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic sun.nio.cs.UTF_8$Decoder.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
private void <init>(java.nio.charset.Charset);
descriptor: (Ljava/nio/charset/Charset;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
fconst_1
fconst_1
invokespecial java.nio.charset.CharsetDecoder.<init>:(Ljava/nio/charset/Charset;FF)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/nio/cs/UTF_8$Decoder;
0 2 1 cs Ljava/nio/charset/Charset;
MethodParameters:
Name Flags
cs
private static boolean isNotContinuation(int);
descriptor: (I)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: iload 0
sipush 192
iand
sipush 128
if_icmpeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 b I
MethodParameters:
Name Flags
b
private static boolean isMalformed2(int, int);
descriptor: (II)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 0
bipush 30
iand
ifeq 1
iload 1
sipush 192
iand
sipush 128
if_icmpne 1
iconst_0
ireturn
StackMap locals:
StackMap stack:
1: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 b1 I
0 2 1 b2 I
MethodParameters:
Name Flags
b1
b2
private static boolean isMalformed3(int, int, int);
descriptor: (III)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 0
bipush -32
if_icmpne 1
iload 1
sipush 224
iand
sipush 128
if_icmpeq 3
1: StackMap locals:
StackMap stack:
iload 1
sipush 192
iand
sipush 128
if_icmpne 3
iload 2
sipush 192
iand
sipush 128
if_icmpne 3
2: iconst_0
ireturn
StackMap locals:
StackMap stack:
3: iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 b1 I
0 4 1 b2 I
0 4 2 b3 I
MethodParameters:
Name Flags
b1
b2
b3
private static boolean isMalformed4(int, int, int);
descriptor: (III)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 0
sipush 192
iand
sipush 128
if_icmpne 3
iload 1
sipush 192
iand
sipush 128
if_icmpne 3
1: iload 2
sipush 192
iand
sipush 128
if_icmpne 3
2: iconst_0
ireturn
StackMap locals:
StackMap stack:
3: iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 b2 I
0 4 1 b3 I
0 4 2 b4 I
MethodParameters:
Name Flags
b2
b3
b4
private static java.nio.charset.CoderResult lookupN(java.nio.ByteBuffer, int);
descriptor: (Ljava/nio/ByteBuffer;I)Ljava/nio/charset/CoderResult;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: iconst_1
istore 2
start local 2 1: goto 5
2: StackMap locals: int
StackMap stack:
aload 0
invokevirtual java.nio.ByteBuffer.get:()B
invokestatic sun.nio.cs.UTF_8$Decoder.isNotContinuation:(I)Z
ifeq 4
3: iload 2
invokestatic java.nio.charset.CoderResult.malformedForLength:(I)Ljava/nio/charset/CoderResult;
areturn
4: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
5: iload 2
iload 1
if_icmplt 2
end local 2 6: iload 1
invokestatic java.nio.charset.CoderResult.malformedForLength:(I)Ljava/nio/charset/CoderResult;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 src Ljava/nio/ByteBuffer;
0 7 1 n I
1 6 2 i I
MethodParameters:
Name Flags
src
n
private static java.nio.charset.CoderResult malformedN(java.nio.ByteBuffer, int);
descriptor: (Ljava/nio/ByteBuffer;I)Ljava/nio/charset/CoderResult;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: iload 1
tableswitch { // 1 - 4
1: 1
2: 11
3: 12
4: 19
default: 29
}
1: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.nio.ByteBuffer.get:()B
istore 2
start local 2 2: iload 2
iconst_2
ishr
bipush -2
if_icmpne 6
3: aload 0
invokevirtual java.nio.ByteBuffer.remaining:()I
iconst_4
if_icmpge 5
4: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
areturn
5: StackMap locals: int
StackMap stack:
aload 0
iconst_5
invokestatic sun.nio.cs.UTF_8$Decoder.lookupN:(Ljava/nio/ByteBuffer;I)Ljava/nio/charset/CoderResult;
areturn
6: StackMap locals:
StackMap stack:
iload 2
iconst_1
ishr
bipush -2
if_icmpne 10
7: aload 0
invokevirtual java.nio.ByteBuffer.remaining:()I
iconst_5
if_icmpge 9
8: getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
areturn
9: StackMap locals:
StackMap stack:
aload 0
bipush 6
invokestatic sun.nio.cs.UTF_8$Decoder.lookupN:(Ljava/nio/ByteBuffer;I)Ljava/nio/charset/CoderResult;
areturn
10: StackMap locals:
StackMap stack:
iconst_1
invokestatic java.nio.charset.CoderResult.malformedForLength:(I)Ljava/nio/charset/CoderResult;
areturn
end local 2 11: StackMap locals:
StackMap stack:
iconst_1
invokestatic java.nio.charset.CoderResult.malformedForLength:(I)Ljava/nio/charset/CoderResult;
areturn
12: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.nio.ByteBuffer.get:()B
istore 2
start local 2 13: aload 0
invokevirtual java.nio.ByteBuffer.get:()B
istore 3
start local 3 14: iload 2
bipush -32
if_icmpne 15
iload 3
sipush 224
iand
sipush 128
if_icmpeq 16
15: StackMap locals: int int
StackMap stack:
iload 3
invokestatic sun.nio.cs.UTF_8$Decoder.isNotContinuation:(I)Z
ifeq 17
StackMap locals:
StackMap stack:
16: iconst_1
goto 18
StackMap locals:
StackMap stack:
17: iconst_2
18: StackMap locals:
StackMap stack: int
invokestatic java.nio.charset.CoderResult.malformedForLength:(I)Ljava/nio/charset/CoderResult;
areturn
end local 3 end local 2 19: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.nio.ByteBuffer.get:()B
sipush 255
iand
istore 2
start local 2 20: aload 0
invokevirtual java.nio.ByteBuffer.get:()B
sipush 255
iand
istore 3
start local 3 21: iload 2
sipush 244
if_icmpgt 25
22: iload 2
sipush 240
if_icmpne 23
iload 3
sipush 144
if_icmplt 25
iload 3
sipush 191
if_icmpgt 25
23: StackMap locals: int int
StackMap stack:
iload 2
sipush 244
if_icmpne 24
iload 3
sipush 240
iand
sipush 128
if_icmpne 25
24: StackMap locals:
StackMap stack:
iload 3
invokestatic sun.nio.cs.UTF_8$Decoder.isNotContinuation:(I)Z
ifeq 26
25: StackMap locals:
StackMap stack:
iconst_1
invokestatic java.nio.charset.CoderResult.malformedForLength:(I)Ljava/nio/charset/CoderResult;
areturn
26: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.nio.ByteBuffer.get:()B
invokestatic sun.nio.cs.UTF_8$Decoder.isNotContinuation:(I)Z
ifeq 28
27: iconst_2
invokestatic java.nio.charset.CoderResult.malformedForLength:(I)Ljava/nio/charset/CoderResult;
areturn
28: StackMap locals:
StackMap stack:
iconst_3
invokestatic java.nio.charset.CoderResult.malformedForLength:(I)Ljava/nio/charset/CoderResult;
areturn
end local 3 end local 2 29: StackMap locals:
StackMap stack:
getstatic sun.nio.cs.UTF_8$Decoder.$assertionsDisabled:Z
ifne 30
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
30: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 src Ljava/nio/ByteBuffer;
0 31 1 nb I
2 11 2 b1 I
13 19 2 b1 I
20 29 2 b1 I
14 19 3 b2 I
21 29 3 b2 I
MethodParameters:
Name Flags
src
nb
private static java.nio.charset.CoderResult malformed(java.nio.ByteBuffer, int, java.nio.CharBuffer, int, int);
descriptor: (Ljava/nio/ByteBuffer;ILjava/nio/CharBuffer;II)Ljava/nio/charset/CoderResult;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
iload 1
aload 0
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
isub
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
1: aload 0
iload 4
invokestatic sun.nio.cs.UTF_8$Decoder.malformedN:(Ljava/nio/ByteBuffer;I)Ljava/nio/charset/CoderResult;
astore 5
start local 5 2: aload 0
iload 1
aload 2
iload 3
invokestatic sun.nio.cs.UTF_8.updatePositions:(Ljava/nio/Buffer;ILjava/nio/Buffer;I)V
3: aload 5
areturn
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 4 0 src Ljava/nio/ByteBuffer;
0 4 1 sp I
0 4 2 dst Ljava/nio/CharBuffer;
0 4 3 dp I
0 4 4 nb I
2 4 5 cr Ljava/nio/charset/CoderResult;
MethodParameters:
Name Flags
src
sp
dst
dp
nb
private static java.nio.charset.CoderResult malformed(java.nio.ByteBuffer, int, int);
descriptor: (Ljava/nio/ByteBuffer;II)Ljava/nio/charset/CoderResult;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 1
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
1: aload 0
iload 2
invokestatic sun.nio.cs.UTF_8$Decoder.malformedN:(Ljava/nio/ByteBuffer;I)Ljava/nio/charset/CoderResult;
astore 3
start local 3 2: aload 0
iload 1
invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
pop
3: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 src Ljava/nio/ByteBuffer;
0 4 1 mark I
0 4 2 nb I
2 4 3 cr Ljava/nio/charset/CoderResult;
MethodParameters:
Name Flags
src
mark
nb
private static java.nio.charset.CoderResult xflow(java.nio.Buffer, int, int, java.nio.Buffer, int, int);
descriptor: (Ljava/nio/Buffer;IILjava/nio/Buffer;II)Ljava/nio/charset/CoderResult;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
iload 1
aload 3
iload 4
invokestatic sun.nio.cs.UTF_8.updatePositions:(Ljava/nio/Buffer;ILjava/nio/Buffer;I)V
1: iload 5
ifeq 2
iload 2
iload 1
isub
iload 5
if_icmpge 3
2: StackMap locals:
StackMap stack:
getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
goto 4
StackMap locals:
StackMap stack:
3: getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
4: StackMap locals:
StackMap stack: java.nio.charset.CoderResult
areturn
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 5 0 src Ljava/nio/Buffer;
0 5 1 sp I
0 5 2 sl I
0 5 3 dst Ljava/nio/Buffer;
0 5 4 dp I
0 5 5 nb I
MethodParameters:
Name Flags
src
sp
sl
dst
dp
nb
private static java.nio.charset.CoderResult xflow(java.nio.Buffer, int, int);
descriptor: (Ljava/nio/Buffer;II)Ljava/nio/charset/CoderResult;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: iload 2
ifeq 1
aload 0
invokevirtual java.nio.Buffer.remaining:()I
iload 2
iconst_1
isub
if_icmpge 2
1: StackMap locals:
StackMap stack:
getstatic java.nio.charset.CoderResult.UNDERFLOW:Ljava/nio/charset/CoderResult;
goto 3
StackMap locals:
StackMap stack:
2: getstatic java.nio.charset.CoderResult.OVERFLOW:Ljava/nio/charset/CoderResult;
3: StackMap locals:
StackMap stack: java.nio.charset.CoderResult
astore 3
start local 3 4: aload 0
iload 1
invokevirtual java.nio.Buffer.position:(I)Ljava/nio/Buffer;
pop
5: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 src Ljava/nio/Buffer;
0 6 1 mark I
0 6 2 nb I
4 6 3 cr Ljava/nio/charset/CoderResult;
MethodParameters:
Name Flags
src
mark
nb
private java.nio.charset.CoderResult decodeArrayLoop(java.nio.ByteBuffer, java.nio.CharBuffer);
descriptor: (Ljava/nio/ByteBuffer;Ljava/nio/CharBuffer;)Ljava/nio/charset/CoderResult;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=15, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual java.nio.ByteBuffer.array:()[B
astore 3
start local 3 1: aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
aload 1
invokevirtual java.nio.ByteBuffer.position:()I
iadd
istore 4
start local 4 2: aload 1
invokevirtual java.nio.ByteBuffer.arrayOffset:()I
aload 1
invokevirtual java.nio.ByteBuffer.limit:()I
iadd
istore 5
start local 5 3: aload 2
invokevirtual java.nio.CharBuffer.array:()[C
astore 6
start local 6 4: aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
aload 2
invokevirtual java.nio.CharBuffer.position:()I
iadd
istore 7
start local 7 5: aload 2
invokevirtual java.nio.CharBuffer.arrayOffset:()I
aload 2
invokevirtual java.nio.CharBuffer.limit:()I
iadd
istore 8
start local 8 6: iload 7
iload 5
iload 4
isub
iload 8
iload 7
isub
invokestatic java.lang.Math.min:(II)I
iadd
istore 9
start local 9 7: goto 9
8: StackMap locals: sun.nio.cs.UTF_8$Decoder java.nio.ByteBuffer java.nio.CharBuffer byte[] int int char[] int int int
StackMap stack:
aload 6
iload 7
iinc 7 1
aload 3
iload 4
iinc 4 1
baload
i2c
castore
9: StackMap locals:
StackMap stack:
iload 7
iload 9
if_icmpge 58
aload 3
iload 4
baload
ifge 8
10: goto 58
11: StackMap locals:
StackMap stack:
aload 3
iload 4
baload
istore 10
start local 10 12: iload 10
iflt 18
13: iload 7
iload 8
if_icmplt 15
14: aload 1
iload 4
iload 5
aload 2
iload 7
iconst_1
invokestatic sun.nio.cs.UTF_8$Decoder.xflow:(Ljava/nio/Buffer;IILjava/nio/Buffer;II)Ljava/nio/charset/CoderResult;
areturn
15: StackMap locals: int
StackMap stack:
aload 6
iload 7
iinc 7 1
iload 10
i2c
castore
16: iinc 4 1
17: goto 58
StackMap locals:
StackMap stack:
18: iload 10
iconst_5
ishr
bipush -2
if_icmpne 27
19: iload 5
iload 4
isub
iconst_2
if_icmplt 20
iload 7
iload 8
if_icmplt 21
20: StackMap locals:
StackMap stack:
aload 1
iload 4
iload 5
aload 2
iload 7
iconst_2
invokestatic sun.nio.cs.UTF_8$Decoder.xflow:(Ljava/nio/Buffer;IILjava/nio/Buffer;II)Ljava/nio/charset/CoderResult;
areturn
21: StackMap locals:
StackMap stack:
aload 3
iload 4
iconst_1
iadd
baload
istore 11
start local 11 22: iload 10
iload 11
invokestatic sun.nio.cs.UTF_8$Decoder.isMalformed2:(II)Z
ifeq 24
23: aload 1
iload 4
aload 2
iload 7
iconst_2
invokestatic sun.nio.cs.UTF_8$Decoder.malformed:(Ljava/nio/ByteBuffer;ILjava/nio/CharBuffer;II)Ljava/nio/charset/CoderResult;
areturn
24: StackMap locals: int
StackMap stack:
aload 6
iload 7
iinc 7 1
iload 10
bipush 6
ishl
iload 11
ixor
sipush 3968
ixor
i2c
castore
25: iinc 4 2
end local 11 26: goto 58
StackMap locals:
StackMap stack:
27: iload 10
iconst_4
ishr
bipush -2
if_icmpne 37
28: iload 5
iload 4
isub
iconst_3
if_icmplt 29
iload 7
iload 8
if_icmplt 30
29: StackMap locals:
StackMap stack:
aload 1
iload 4
iload 5
aload 2
iload 7
iconst_3
invokestatic sun.nio.cs.UTF_8$Decoder.xflow:(Ljava/nio/Buffer;IILjava/nio/Buffer;II)Ljava/nio/charset/CoderResult;
areturn
30: StackMap locals:
StackMap stack:
aload 3
iload 4
iconst_1
iadd
baload
istore 11
start local 11 31: aload 3
iload 4
iconst_2
iadd
baload
istore 12
start local 12 32: iload 10
iload 11
iload 12
invokestatic sun.nio.cs.UTF_8$Decoder.isMalformed3:(III)Z
ifeq 34
33: aload 1
iload 4
aload 2
iload 7
iconst_3
invokestatic sun.nio.cs.UTF_8$Decoder.malformed:(Ljava/nio/ByteBuffer;ILjava/nio/CharBuffer;II)Ljava/nio/charset/CoderResult;
areturn
34: StackMap locals: int int
StackMap stack:
aload 6
iload 7
iinc 7 1
iload 10
bipush 12
ishl
iload 11
bipush 6
ishl
ixor
iload 12
ixor
sipush 8064
ixor
i2c
castore
35: iinc 4 3
end local 12 end local 11 36: goto 58
StackMap locals:
StackMap stack:
37: iload 10
iconst_3
ishr
bipush -2
if_icmpne 57
38: iload 5
iload 4
isub
iconst_4
if_icmplt 39
iload 8
iload 7
isub
iconst_2
if_icmpge 40
39: StackMap locals:
StackMap stack:
aload 1
iload 4
iload 5
aload 2
iload 7
iconst_4
invokestatic sun.nio.cs.UTF_8$Decoder.xflow:(Ljava/nio/Buffer;IILjava/nio/Buffer;II)Ljava/nio/charset/CoderResult;
areturn
40: StackMap locals:
StackMap stack:
aload 3
iload 4
iconst_1
iadd
baload
istore 11
start local 11 41: aload 3
iload 4
iconst_2
iadd
baload
istore 12
start local 12 42: aload 3
iload 4
iconst_3
iadd
baload
istore 13
start local 13 43: iload 10
bipush 7
iand
bipush 18
ishl
44: iload 11
bipush 63
iand
bipush 12
ishl
45: ior
46: iload 12
bipush 63
iand
bipush 6
ishl
47: ior
48: iload 13
bipush 63
iand
49: ior
istore 14
start local 14 50: iload 11
iload 12
iload 13
invokestatic sun.nio.cs.UTF_8$Decoder.isMalformed4:(III)Z
ifne 52
51: iload 14
invokestatic sun.nio.cs.Surrogate.neededFor:(I)Z
ifne 53
52: StackMap locals: sun.nio.cs.UTF_8$Decoder java.nio.ByteBuffer java.nio.CharBuffer byte[] int int char[] int int int int int int int int
StackMap stack:
aload 1
iload 4
aload 2
iload 7
iconst_4
invokestatic sun.nio.cs.UTF_8$Decoder.malformed:(Ljava/nio/ByteBuffer;ILjava/nio/CharBuffer;II)Ljava/nio/charset/CoderResult;
areturn
53: StackMap locals:
StackMap stack:
aload 6
iload 7
iinc 7 1
iload 14
invokestatic sun.nio.cs.Surrogate.high:(I)C
castore
54: aload 6
iload 7
iinc 7 1
iload 14
invokestatic sun.nio.cs.Surrogate.low:(I)C
castore
55: iinc 4 4
end local 14 end local 13 end local 12 end local 11 56: goto 58
57: StackMap locals: sun.nio.cs.UTF_8$Decoder java.nio.ByteBuffer java.nio.CharBuffer byte[] int int char[] int int int int
StackMap stack:
aload 1
iload 4
aload 2
iload 7
iconst_1
invokestatic sun.nio.cs.UTF_8$Decoder.malformed:(Ljava/nio/ByteBuffer;ILjava/nio/CharBuffer;II)Ljava/nio/charset/CoderResult;
areturn
end local 10 58: StackMap locals:
StackMap stack:
iload 4
iload 5
if_icmplt 11
59: aload 1
iload 4
iload 5
aload 2
iload 7
iconst_0
invokestatic sun.nio.cs.UTF_8$Decoder.xflow:(Ljava/nio/Buffer;IILjava/nio/Buffer;II)Ljava/nio/charset/CoderResult;
areturn
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 60 0 this Lsun/nio/cs/UTF_8$Decoder;
0 60 1 src Ljava/nio/ByteBuffer;
0 60 2 dst Ljava/nio/CharBuffer;
1 60 3 sa [B
2 60 4 sp I
3 60 5 sl I
4 60 6 da [C
5 60 7 dp I
6 60 8 dl I
7 60 9 dlASCII I
12 58 10 b1 I
22 26 11 b2 I
31 36 11 b2 I
32 36 12 b3 I
41 56 11 b2 I
42 56 12 b3 I
43 56 13 b4 I
50 56 14 uc I
MethodParameters:
Name Flags
src
dst
private java.nio.charset.CoderResult decodeBufferLoop(java.nio.ByteBuffer, java.nio.CharBuffer);
descriptor: (Ljava/nio/ByteBuffer;Ljava/nio/CharBuffer;)Ljava/nio/charset/CoderResult;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=10, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual java.nio.ByteBuffer.position:()I
istore 3
start local 3 1: aload 1
invokevirtual java.nio.ByteBuffer.limit:()I
istore 4
start local 4 2: goto 50
3: StackMap locals: int int
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.get:()B
istore 5
start local 5 4: iload 5
iflt 10
5: aload 2
invokevirtual java.nio.CharBuffer.remaining:()I
iconst_1
if_icmpge 7
6: aload 1
iload 3
iconst_1
invokestatic sun.nio.cs.UTF_8$Decoder.xflow:(Ljava/nio/Buffer;II)Ljava/nio/charset/CoderResult;
areturn
7: StackMap locals: int
StackMap stack:
aload 2
iload 5
i2c
invokevirtual java.nio.CharBuffer.put:(C)Ljava/nio/CharBuffer;
pop
8: iinc 3 1
9: goto 50
StackMap locals:
StackMap stack:
10: iload 5
iconst_5
ishr
bipush -2
if_icmpne 19
11: iload 4
iload 3
isub
iconst_2
if_icmplt 12
aload 2
invokevirtual java.nio.CharBuffer.remaining:()I
iconst_1
if_icmpge 13
12: StackMap locals:
StackMap stack:
aload 1
iload 3
iconst_2
invokestatic sun.nio.cs.UTF_8$Decoder.xflow:(Ljava/nio/Buffer;II)Ljava/nio/charset/CoderResult;
areturn
13: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.get:()B
istore 6
start local 6 14: iload 5
iload 6
invokestatic sun.nio.cs.UTF_8$Decoder.isMalformed2:(II)Z
ifeq 16
15: aload 1
iload 3
iconst_2
invokestatic sun.nio.cs.UTF_8$Decoder.malformed:(Ljava/nio/ByteBuffer;II)Ljava/nio/charset/CoderResult;
areturn
16: StackMap locals: int
StackMap stack:
aload 2
iload 5
bipush 6
ishl
iload 6
ixor
sipush 3968
ixor
i2c
invokevirtual java.nio.CharBuffer.put:(C)Ljava/nio/CharBuffer;
pop
17: iinc 3 2
end local 6 18: goto 50
StackMap locals:
StackMap stack:
19: iload 5
iconst_4
ishr
bipush -2
if_icmpne 29
20: iload 4
iload 3
isub
iconst_3
if_icmplt 21
aload 2
invokevirtual java.nio.CharBuffer.remaining:()I
iconst_1
if_icmpge 22
21: StackMap locals:
StackMap stack:
aload 1
iload 3
iconst_3
invokestatic sun.nio.cs.UTF_8$Decoder.xflow:(Ljava/nio/Buffer;II)Ljava/nio/charset/CoderResult;
areturn
22: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.get:()B
istore 6
start local 6 23: aload 1
invokevirtual java.nio.ByteBuffer.get:()B
istore 7
start local 7 24: iload 5
iload 6
iload 7
invokestatic sun.nio.cs.UTF_8$Decoder.isMalformed3:(III)Z
ifeq 26
25: aload 1
iload 3
iconst_3
invokestatic sun.nio.cs.UTF_8$Decoder.malformed:(Ljava/nio/ByteBuffer;II)Ljava/nio/charset/CoderResult;
areturn
26: StackMap locals: int int
StackMap stack:
aload 2
iload 5
bipush 12
ishl
iload 6
bipush 6
ishl
ixor
iload 7
ixor
sipush 8064
ixor
i2c
invokevirtual java.nio.CharBuffer.put:(C)Ljava/nio/CharBuffer;
pop
27: iinc 3 3
end local 7 end local 6 28: goto 50
StackMap locals:
StackMap stack:
29: iload 5
iconst_3
ishr
bipush -2
if_icmpne 49
30: iload 4
iload 3
isub
iconst_4
if_icmplt 31
aload 2
invokevirtual java.nio.CharBuffer.remaining:()I
iconst_2
if_icmpge 32
31: StackMap locals:
StackMap stack:
aload 1
iload 3
iconst_4
invokestatic sun.nio.cs.UTF_8$Decoder.xflow:(Ljava/nio/Buffer;II)Ljava/nio/charset/CoderResult;
areturn
32: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.get:()B
istore 6
start local 6 33: aload 1
invokevirtual java.nio.ByteBuffer.get:()B
istore 7
start local 7 34: aload 1
invokevirtual java.nio.ByteBuffer.get:()B
istore 8
start local 8 35: iload 5
bipush 7
iand
bipush 18
ishl
36: iload 6
bipush 63
iand
bipush 12
ishl
37: ior
38: iload 7
bipush 63
iand
bipush 6
ishl
39: ior
40: iload 8
bipush 63
iand
41: ior
istore 9
start local 9 42: iload 6
iload 7
iload 8
invokestatic sun.nio.cs.UTF_8$Decoder.isMalformed4:(III)Z
ifne 44
43: iload 9
invokestatic sun.nio.cs.Surrogate.neededFor:(I)Z
ifne 45
44: StackMap locals: sun.nio.cs.UTF_8$Decoder java.nio.ByteBuffer java.nio.CharBuffer int int int int int int int
StackMap stack:
aload 1
iload 3
iconst_4
invokestatic sun.nio.cs.UTF_8$Decoder.malformed:(Ljava/nio/ByteBuffer;II)Ljava/nio/charset/CoderResult;
areturn
45: StackMap locals:
StackMap stack:
aload 2
iload 9
invokestatic sun.nio.cs.Surrogate.high:(I)C
invokevirtual java.nio.CharBuffer.put:(C)Ljava/nio/CharBuffer;
pop
46: aload 2
iload 9
invokestatic sun.nio.cs.Surrogate.low:(I)C
invokevirtual java.nio.CharBuffer.put:(C)Ljava/nio/CharBuffer;
pop
47: iinc 3 4
end local 9 end local 8 end local 7 end local 6 48: goto 50
49: StackMap locals: sun.nio.cs.UTF_8$Decoder java.nio.ByteBuffer java.nio.CharBuffer int int int
StackMap stack:
aload 1
iload 3
iconst_1
invokestatic sun.nio.cs.UTF_8$Decoder.malformed:(Ljava/nio/ByteBuffer;II)Ljava/nio/charset/CoderResult;
areturn
end local 5 50: StackMap locals:
StackMap stack:
iload 3
iload 4
if_icmplt 3
51: aload 1
iload 3
iconst_0
invokestatic sun.nio.cs.UTF_8$Decoder.xflow:(Ljava/nio/Buffer;II)Ljava/nio/charset/CoderResult;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 52 0 this Lsun/nio/cs/UTF_8$Decoder;
0 52 1 src Ljava/nio/ByteBuffer;
0 52 2 dst Ljava/nio/CharBuffer;
1 52 3 mark I
2 52 4 limit I
4 50 5 b1 I
14 18 6 b2 I
23 28 6 b2 I
24 28 7 b3 I
33 48 6 b2 I
34 48 7 b3 I
35 48 8 b4 I
42 48 9 uc I
MethodParameters:
Name Flags
src
dst
protected java.nio.charset.CoderResult decodeLoop(java.nio.ByteBuffer, java.nio.CharBuffer);
descriptor: (Ljava/nio/ByteBuffer;Ljava/nio/CharBuffer;)Ljava/nio/charset/CoderResult;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual java.nio.ByteBuffer.hasArray:()Z
ifeq 2
aload 2
invokevirtual java.nio.CharBuffer.hasArray:()Z
ifeq 2
1: aload 0
aload 1
aload 2
invokevirtual sun.nio.cs.UTF_8$Decoder.decodeArrayLoop:(Ljava/nio/ByteBuffer;Ljava/nio/CharBuffer;)Ljava/nio/charset/CoderResult;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokevirtual sun.nio.cs.UTF_8$Decoder.decodeBufferLoop:(Ljava/nio/ByteBuffer;Ljava/nio/CharBuffer;)Ljava/nio/charset/CoderResult;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/nio/cs/UTF_8$Decoder;
0 3 1 src Ljava/nio/ByteBuffer;
0 3 2 dst Ljava/nio/CharBuffer;
MethodParameters:
Name Flags
src
dst
}
SourceFile: "UTF_8.java"
NestHost: sun.nio.cs.UTF_8
InnerClasses:
private Decoder = sun.nio.cs.UTF_8$Decoder of sun.nio.cs.UTF_8