final class java.lang.StringLatin1
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: java.lang.StringLatin1
super_class: java.lang.Object
{
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: .line 44
ldc Ljava/lang/StringLatin1;
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 java.lang.StringLatin1.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 // java.lang.StringLatin1 this
0: .line 44
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // java.lang.StringLatin1 this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/lang/StringLatin1;
public static char charAt(byte[], int);
descriptor: ([BI)C
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 // byte[] value
start local 1 // int index
0: .line 47
iload 1 /* index */
iflt 1
iload 1 /* index */
aload 0 /* value */
arraylength
if_icmplt 2
1: .line 48
StackMap locals:
StackMap stack:
new java.lang.StringIndexOutOfBoundsException
dup
iload 1 /* index */
invokespecial java.lang.StringIndexOutOfBoundsException.<init>:(I)V
athrow
2: .line 50
StackMap locals:
StackMap stack:
aload 0 /* value */
iload 1 /* index */
baload
sipush 255
iand
i2c
ireturn
end local 1 // int index
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 3 0 value [B
0 3 1 index I
MethodParameters:
Name Flags
value
index
public static boolean canEncode(int);
descriptor: (I)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 // int cp
0: .line 54
iload 0 /* cp */
bipush 8
iushr
ifne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 // int cp
LocalVariableTable:
Start End Slot Name Signature
0 2 0 cp I
MethodParameters:
Name Flags
cp
public static int length(byte[]);
descriptor: ([B)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 // byte[] value
0: .line 58
aload 0 /* value */
arraylength
ireturn
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 1 0 value [B
MethodParameters:
Name Flags
value
public static int codePointAt(byte[], int, int);
descriptor: ([BII)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=3, args_size=3
start local 0 // byte[] value
start local 1 // int index
start local 2 // int end
0: .line 62
aload 0 /* value */
iload 1 /* index */
baload
sipush 255
iand
ireturn
end local 2 // int end
end local 1 // int index
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 1 0 value [B
0 1 1 index I
0 1 2 end I
MethodParameters:
Name Flags
value
index
end
public static int codePointBefore(byte[], int);
descriptor: ([BI)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 // byte[] value
start local 1 // int index
0: .line 66
aload 0 /* value */
iload 1 /* index */
iconst_1
isub
baload
sipush 255
iand
ireturn
end local 1 // int index
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 1 0 value [B
0 1 1 index I
MethodParameters:
Name Flags
value
index
public static int codePointCount(byte[], int, int);
descriptor: ([BII)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=3, args_size=3
start local 0 // byte[] value
start local 1 // int beginIndex
start local 2 // int endIndex
0: .line 70
iload 2 /* endIndex */
iload 1 /* beginIndex */
isub
ireturn
end local 2 // int endIndex
end local 1 // int beginIndex
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 1 0 value [B
0 1 1 beginIndex I
0 1 2 endIndex I
MethodParameters:
Name Flags
value
beginIndex
endIndex
public static char[] toChars(byte[]);
descriptor: ([B)[C
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=2, args_size=1
start local 0 // byte[] value
0: .line 74
aload 0 /* value */
arraylength
newarray 5
astore 1 /* dst */
start local 1 // char[] dst
1: .line 75
aload 0 /* value */
iconst_0
aload 1 /* dst */
iconst_0
aload 0 /* value */
arraylength
invokestatic java.lang.StringLatin1.inflate:([BI[CII)V
2: .line 76
aload 1 /* dst */
areturn
end local 1 // char[] dst
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 3 0 value [B
1 3 1 dst [C
MethodParameters:
Name Flags
value
public static byte[] inflate(byte[], int, int);
descriptor: ([BII)[B
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=4, args_size=3
start local 0 // byte[] value
start local 1 // int off
start local 2 // int len
0: .line 80
iload 2 /* len */
invokestatic java.lang.StringUTF16.newBytesFor:(I)[B
astore 3 /* ret */
start local 3 // byte[] ret
1: .line 81
aload 0 /* value */
iload 1 /* off */
aload 3 /* ret */
iconst_0
iload 2 /* len */
invokestatic java.lang.StringLatin1.inflate:([BI[BII)V
2: .line 82
aload 3 /* ret */
areturn
end local 3 // byte[] ret
end local 2 // int len
end local 1 // int off
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 3 0 value [B
0 3 1 off I
0 3 2 len I
1 3 3 ret [B
MethodParameters:
Name Flags
value
off
len
public static void getChars(byte[], int, int, char[], int);
descriptor: ([BII[CI)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=5, args_size=5
start local 0 // byte[] value
start local 1 // int srcBegin
start local 2 // int srcEnd
start local 3 // char[] dst
start local 4 // int dstBegin
0: .line 86
aload 0 /* value */
iload 1 /* srcBegin */
aload 3 /* dst */
iload 4 /* dstBegin */
iload 2 /* srcEnd */
iload 1 /* srcBegin */
isub
invokestatic java.lang.StringLatin1.inflate:([BI[CII)V
1: .line 87
return
end local 4 // int dstBegin
end local 3 // char[] dst
end local 2 // int srcEnd
end local 1 // int srcBegin
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 2 0 value [B
0 2 1 srcBegin I
0 2 2 srcEnd I
0 2 3 dst [C
0 2 4 dstBegin I
MethodParameters:
Name Flags
value
srcBegin
srcEnd
dst
dstBegin
public static void getBytes(byte[], int, int, byte[], int);
descriptor: ([BII[BI)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=5, args_size=5
start local 0 // byte[] value
start local 1 // int srcBegin
start local 2 // int srcEnd
start local 3 // byte[] dst
start local 4 // int dstBegin
0: .line 90
aload 0 /* value */
iload 1 /* srcBegin */
aload 3 /* dst */
iload 4 /* dstBegin */
iload 2 /* srcEnd */
iload 1 /* srcBegin */
isub
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
1: .line 91
return
end local 4 // int dstBegin
end local 3 // byte[] dst
end local 2 // int srcEnd
end local 1 // int srcBegin
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 2 0 value [B
0 2 1 srcBegin I
0 2 2 srcEnd I
0 2 3 dst [B
0 2 4 dstBegin I
MethodParameters:
Name Flags
value
srcBegin
srcEnd
dst
dstBegin
public static boolean equals(byte[], byte[]);
descriptor: ([B[B)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 // byte[] value
start local 1 // byte[] other
0: .line 95
aload 0 /* value */
arraylength
aload 1 /* other */
arraylength
if_icmpne 8
1: .line 96
iconst_0
istore 2 /* i */
start local 2 // int i
2: goto 6
3: .line 97
StackMap locals: int
StackMap stack:
aload 0 /* value */
iload 2 /* i */
baload
aload 1 /* other */
iload 2 /* i */
baload
if_icmpeq 5
4: .line 98
iconst_0
ireturn
5: .line 96
StackMap locals:
StackMap stack:
iinc 2 /* i */ 1
StackMap locals:
StackMap stack:
6: iload 2 /* i */
aload 0 /* value */
arraylength
if_icmplt 3
end local 2 // int i
7: .line 101
iconst_1
ireturn
8: .line 103
StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 // byte[] other
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 9 0 value [B
0 9 1 other [B
2 7 2 i I
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
value
other
public static int compareTo(byte[], byte[]);
descriptor: ([B[B)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 // byte[] value
start local 1 // byte[] other
0: .line 108
aload 0 /* value */
arraylength
istore 2 /* len1 */
start local 2 // int len1
1: .line 109
aload 1 /* other */
arraylength
istore 3 /* len2 */
start local 3 // int len2
2: .line 110
aload 0 /* value */
aload 1 /* other */
iload 2 /* len1 */
iload 3 /* len2 */
invokestatic java.lang.StringLatin1.compareTo:([B[BII)I
ireturn
end local 3 // int len2
end local 2 // int len1
end local 1 // byte[] other
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 3 0 value [B
0 3 1 other [B
1 3 2 len1 I
2 3 3 len2 I
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
value
other
public static int compareTo(byte[], byte[], int, int);
descriptor: ([B[BII)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=6, args_size=4
start local 0 // byte[] value
start local 1 // byte[] other
start local 2 // int len1
start local 3 // int len2
0: .line 114
iload 2 /* len1 */
iload 3 /* len2 */
invokestatic java.lang.Math.min:(II)I
istore 4 /* lim */
start local 4 // int lim
1: .line 115
iconst_0
istore 5 /* k */
start local 5 // int k
2: goto 6
3: .line 116
StackMap locals: int int
StackMap stack:
aload 0 /* value */
iload 5 /* k */
baload
aload 1 /* other */
iload 5 /* k */
baload
if_icmpeq 5
4: .line 117
aload 0 /* value */
iload 5 /* k */
invokestatic java.lang.StringLatin1.getChar:([BI)C
aload 1 /* other */
iload 5 /* k */
invokestatic java.lang.StringLatin1.getChar:([BI)C
isub
ireturn
5: .line 115
StackMap locals:
StackMap stack:
iinc 5 /* k */ 1
StackMap locals:
StackMap stack:
6: iload 5 /* k */
iload 4 /* lim */
if_icmplt 3
end local 5 // int k
7: .line 120
iload 2 /* len1 */
iload 3 /* len2 */
isub
ireturn
end local 4 // int lim
end local 3 // int len2
end local 2 // int len1
end local 1 // byte[] other
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 8 0 value [B
0 8 1 other [B
0 8 2 len1 I
0 8 3 len2 I
1 8 4 lim I
2 7 5 k I
MethodParameters:
Name Flags
value
other
len1
len2
public static int compareToUTF16(byte[], byte[]);
descriptor: ([B[B)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 // byte[] value
start local 1 // byte[] other
0: .line 125
aload 0 /* value */
invokestatic java.lang.StringLatin1.length:([B)I
istore 2 /* len1 */
start local 2 // int len1
1: .line 126
aload 1 /* other */
invokestatic java.lang.StringUTF16.length:([B)I
istore 3 /* len2 */
start local 3 // int len2
2: .line 127
aload 0 /* value */
aload 1 /* other */
iload 2 /* len1 */
iload 3 /* len2 */
invokestatic java.lang.StringLatin1.compareToUTF16Values:([B[BII)I
ireturn
end local 3 // int len2
end local 2 // int len1
end local 1 // byte[] other
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 3 0 value [B
0 3 1 other [B
1 3 2 len1 I
2 3 3 len2 I
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
value
other
public static int compareToUTF16(byte[], byte[], int, int);
descriptor: ([B[BII)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=4
start local 0 // byte[] value
start local 1 // byte[] other
start local 2 // int len1
start local 3 // int len2
0: .line 134
iload 2 /* len1 */
aload 0 /* value */
invokestatic java.lang.StringLatin1.length:([B)I
invokestatic java.lang.String.checkOffset:(II)V
1: .line 135
iload 3 /* len2 */
aload 1 /* other */
invokestatic java.lang.StringUTF16.length:([B)I
invokestatic java.lang.String.checkOffset:(II)V
2: .line 137
aload 0 /* value */
aload 1 /* other */
iload 2 /* len1 */
iload 3 /* len2 */
invokestatic java.lang.StringLatin1.compareToUTF16Values:([B[BII)I
ireturn
end local 3 // int len2
end local 2 // int len1
end local 1 // byte[] other
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 3 0 value [B
0 3 1 other [B
0 3 2 len1 I
0 3 3 len2 I
MethodParameters:
Name Flags
value
other
len1
len2
private static int compareToUTF16Values(byte[], byte[], int, int);
descriptor: ([B[BII)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=8, args_size=4
start local 0 // byte[] value
start local 1 // byte[] other
start local 2 // int len1
start local 3 // int len2
0: .line 141
iload 2 /* len1 */
iload 3 /* len2 */
invokestatic java.lang.Math.min:(II)I
istore 4 /* lim */
start local 4 // int lim
1: .line 142
iconst_0
istore 5 /* k */
start local 5 // int k
2: goto 8
3: .line 143
StackMap locals: int int
StackMap stack:
aload 0 /* value */
iload 5 /* k */
invokestatic java.lang.StringLatin1.getChar:([BI)C
istore 6 /* c1 */
start local 6 // char c1
4: .line 144
aload 1 /* other */
iload 5 /* k */
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 7 /* c2 */
start local 7 // char c2
5: .line 145
iload 6 /* c1 */
iload 7 /* c2 */
if_icmpeq 7
6: .line 146
iload 6 /* c1 */
iload 7 /* c2 */
isub
ireturn
end local 7 // char c2
end local 6 // char c1
7: .line 142
StackMap locals:
StackMap stack:
iinc 5 /* k */ 1
StackMap locals:
StackMap stack:
8: iload 5 /* k */
iload 4 /* lim */
if_icmplt 3
end local 5 // int k
9: .line 149
iload 2 /* len1 */
iload 3 /* len2 */
isub
ireturn
end local 4 // int lim
end local 3 // int len2
end local 2 // int len1
end local 1 // byte[] other
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 10 0 value [B
0 10 1 other [B
0 10 2 len1 I
0 10 3 len2 I
1 10 4 lim I
2 9 5 k I
4 7 6 c1 C
5 7 7 c2 C
MethodParameters:
Name Flags
value
other
len1
len2
public static int compareToCI(byte[], byte[]);
descriptor: ([B[B)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=8, args_size=2
start local 0 // byte[] value
start local 1 // byte[] other
0: .line 153
aload 0 /* value */
arraylength
istore 2 /* len1 */
start local 2 // int len1
1: .line 154
aload 1 /* other */
arraylength
istore 3 /* len2 */
start local 3 // int len2
2: .line 155
iload 2 /* len1 */
iload 3 /* len2 */
invokestatic java.lang.Math.min:(II)I
istore 4 /* lim */
start local 4 // int lim
3: .line 156
iconst_0
istore 5 /* k */
start local 5 // int k
4: goto 14
5: .line 157
StackMap locals: byte[] byte[] int int int int
StackMap stack:
aload 0 /* value */
iload 5 /* k */
baload
aload 1 /* other */
iload 5 /* k */
baload
if_icmpeq 13
6: .line 158
getstatic java.lang.CharacterDataLatin1.instance:Ljava/lang/CharacterDataLatin1;
aload 0 /* value */
iload 5 /* k */
invokestatic java.lang.StringLatin1.getChar:([BI)C
invokevirtual java.lang.CharacterDataLatin1.toUpperCase:(I)I
i2c
istore 6 /* c1 */
start local 6 // char c1
7: .line 159
getstatic java.lang.CharacterDataLatin1.instance:Ljava/lang/CharacterDataLatin1;
aload 1 /* other */
iload 5 /* k */
invokestatic java.lang.StringLatin1.getChar:([BI)C
invokevirtual java.lang.CharacterDataLatin1.toUpperCase:(I)I
i2c
istore 7 /* c2 */
start local 7 // char c2
8: .line 160
iload 6 /* c1 */
iload 7 /* c2 */
if_icmpeq 13
9: .line 161
iload 6 /* c1 */
invokestatic java.lang.Character.toLowerCase:(C)C
istore 6 /* c1 */
10: .line 162
iload 7 /* c2 */
invokestatic java.lang.Character.toLowerCase:(C)C
istore 7 /* c2 */
11: .line 163
iload 6 /* c1 */
iload 7 /* c2 */
if_icmpeq 13
12: .line 164
iload 6 /* c1 */
iload 7 /* c2 */
isub
ireturn
end local 7 // char c2
end local 6 // char c1
13: .line 156
StackMap locals:
StackMap stack:
iinc 5 /* k */ 1
StackMap locals:
StackMap stack:
14: iload 5 /* k */
iload 4 /* lim */
if_icmplt 5
end local 5 // int k
15: .line 169
iload 2 /* len1 */
iload 3 /* len2 */
isub
ireturn
end local 4 // int lim
end local 3 // int len2
end local 2 // int len1
end local 1 // byte[] other
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 16 0 value [B
0 16 1 other [B
1 16 2 len1 I
2 16 3 len2 I
3 16 4 lim I
4 15 5 k I
7 13 6 c1 C
8 13 7 c2 C
MethodParameters:
Name Flags
value
other
public static int compareToCI_UTF16(byte[], byte[]);
descriptor: ([B[B)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=8, args_size=2
start local 0 // byte[] value
start local 1 // byte[] other
0: .line 173
aload 0 /* value */
invokestatic java.lang.StringLatin1.length:([B)I
istore 2 /* len1 */
start local 2 // int len1
1: .line 174
aload 1 /* other */
invokestatic java.lang.StringUTF16.length:([B)I
istore 3 /* len2 */
start local 3 // int len2
2: .line 175
iload 2 /* len1 */
iload 3 /* len2 */
invokestatic java.lang.Math.min:(II)I
istore 4 /* lim */
start local 4 // int lim
3: .line 176
iconst_0
istore 5 /* k */
start local 5 // int k
4: goto 16
5: .line 177
StackMap locals: byte[] byte[] int int int int
StackMap stack:
aload 0 /* value */
iload 5 /* k */
invokestatic java.lang.StringLatin1.getChar:([BI)C
istore 6 /* c1 */
start local 6 // char c1
6: .line 178
aload 1 /* other */
iload 5 /* k */
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 7 /* c2 */
start local 7 // char c2
7: .line 179
iload 6 /* c1 */
iload 7 /* c2 */
if_icmpeq 15
8: .line 180
getstatic java.lang.CharacterDataLatin1.instance:Ljava/lang/CharacterDataLatin1;
iload 6 /* c1 */
invokevirtual java.lang.CharacterDataLatin1.toUpperCase:(I)I
i2c
istore 6 /* c1 */
9: .line 181
iload 7 /* c2 */
invokestatic java.lang.Character.toUpperCase:(C)C
istore 7 /* c2 */
10: .line 182
iload 6 /* c1 */
iload 7 /* c2 */
if_icmpeq 15
11: .line 183
iload 6 /* c1 */
invokestatic java.lang.Character.toLowerCase:(C)C
istore 6 /* c1 */
12: .line 184
iload 7 /* c2 */
invokestatic java.lang.Character.toLowerCase:(C)C
istore 7 /* c2 */
13: .line 185
iload 6 /* c1 */
iload 7 /* c2 */
if_icmpeq 15
14: .line 186
iload 6 /* c1 */
iload 7 /* c2 */
isub
ireturn
end local 7 // char c2
end local 6 // char c1
15: .line 176
StackMap locals:
StackMap stack:
iinc 5 /* k */ 1
StackMap locals:
StackMap stack:
16: iload 5 /* k */
iload 4 /* lim */
if_icmplt 5
end local 5 // int k
17: .line 191
iload 2 /* len1 */
iload 3 /* len2 */
isub
ireturn
end local 4 // int lim
end local 3 // int len2
end local 2 // int len1
end local 1 // byte[] other
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 18 0 value [B
0 18 1 other [B
1 18 2 len1 I
2 18 3 len2 I
3 18 4 lim I
4 17 5 k I
6 15 6 c1 C
7 15 7 c2 C
MethodParameters:
Name Flags
value
other
public static int hashCode(byte[]);
descriptor: ([B)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=6, args_size=1
start local 0 // byte[] value
0: .line 195
iconst_0
istore 1 /* h */
start local 1 // int h
1: .line 196
aload 0 /* value */
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 5
StackMap locals: byte[] int top int int byte[]
StackMap stack:
2: aload 5
iload 3
baload
istore 2 /* v */
start local 2 // byte v
3: .line 197
bipush 31
iload 1 /* h */
imul
iload 2 /* v */
sipush 255
iand
iadd
istore 1 /* h */
end local 2 // byte v
4: .line 196
iinc 3 1
StackMap locals:
StackMap stack:
5: iload 3
iload 4
if_icmplt 2
6: .line 199
iload 1 /* h */
ireturn
end local 1 // int h
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 7 0 value [B
1 7 1 h I
3 4 2 v B
MethodParameters:
Name Flags
value
public static int indexOf(byte[], int, int);
descriptor: ([BII)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=6, args_size=3
start local 0 // byte[] value
start local 1 // int ch
start local 2 // int fromIndex
0: .line 203
iload 1 /* ch */
invokestatic java.lang.StringLatin1.canEncode:(I)Z
ifne 2
1: .line 204
iconst_m1
ireturn
2: .line 206
StackMap locals:
StackMap stack:
aload 0 /* value */
arraylength
istore 3 /* max */
start local 3 // int max
3: .line 207
iload 2 /* fromIndex */
ifge 6
4: .line 208
iconst_0
istore 2 /* fromIndex */
5: .line 209
goto 8
StackMap locals: int
StackMap stack:
6: iload 2 /* fromIndex */
iload 3 /* max */
if_icmplt 8
7: .line 211
iconst_m1
ireturn
8: .line 213
StackMap locals:
StackMap stack:
iload 1 /* ch */
i2b
istore 4 /* c */
start local 4 // byte c
9: .line 214
iload 2 /* fromIndex */
istore 5 /* i */
start local 5 // int i
10: goto 14
11: .line 215
StackMap locals: int int
StackMap stack:
aload 0 /* value */
iload 5 /* i */
baload
iload 4 /* c */
if_icmpne 13
12: .line 216
iload 5 /* i */
ireturn
13: .line 214
StackMap locals:
StackMap stack:
iinc 5 /* i */ 1
StackMap locals:
StackMap stack:
14: iload 5 /* i */
iload 3 /* max */
if_icmplt 11
end local 5 // int i
15: .line 219
iconst_m1
ireturn
end local 4 // byte c
end local 3 // int max
end local 2 // int fromIndex
end local 1 // int ch
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 16 0 value [B
0 16 1 ch I
0 16 2 fromIndex I
3 16 3 max I
9 16 4 c B
10 15 5 i I
MethodParameters:
Name Flags
value
ch
fromIndex
public static int indexOf(byte[], byte[]);
descriptor: ([B[B)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=2, args_size=2
start local 0 // byte[] value
start local 1 // byte[] str
0: .line 224
aload 1 /* str */
arraylength
ifne 2
1: .line 225
iconst_0
ireturn
2: .line 227
StackMap locals:
StackMap stack:
aload 0 /* value */
arraylength
ifne 4
3: .line 228
iconst_m1
ireturn
4: .line 230
StackMap locals:
StackMap stack:
aload 0 /* value */
aload 0 /* value */
arraylength
aload 1 /* str */
aload 1 /* str */
arraylength
iconst_0
invokestatic java.lang.StringLatin1.indexOf:([BI[BII)I
ireturn
end local 1 // byte[] str
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 5 0 value [B
0 5 1 str [B
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
value
str
public static int indexOf(byte[], int, byte[], int, int);
descriptor: ([BI[BII)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=11, args_size=5
start local 0 // byte[] value
start local 1 // int valueCount
start local 2 // byte[] str
start local 3 // int strCount
start local 4 // int fromIndex
0: .line 235
aload 2 /* str */
iconst_0
baload
istore 5 /* first */
start local 5 // byte first
1: .line 236
iload 1 /* valueCount */
iload 3 /* strCount */
isub
istore 6 /* max */
start local 6 // int max
2: .line 237
iload 4 /* fromIndex */
istore 7 /* i */
start local 7 // int i
3: goto 16
4: .line 239
StackMap locals: int int int
StackMap stack:
aload 0 /* value */
iload 7 /* i */
baload
iload 5 /* first */
if_icmpeq 6
5: .line 240
StackMap locals:
StackMap stack:
iinc 7 /* i */ 1
iload 7 /* i */
iload 6 /* max */
if_icmpgt 6
aload 0 /* value */
iload 7 /* i */
baload
iload 5 /* first */
if_icmpne 5
6: .line 243
StackMap locals:
StackMap stack:
iload 7 /* i */
iload 6 /* max */
if_icmpgt 15
7: .line 244
iload 7 /* i */
iconst_1
iadd
istore 8 /* j */
start local 8 // int j
8: .line 245
iload 8 /* j */
iload 3 /* strCount */
iadd
iconst_1
isub
istore 9 /* end */
start local 9 // int end
9: .line 246
iconst_1
istore 10 /* k */
start local 10 // int k
10: goto 12
StackMap locals: int int int
StackMap stack:
11: iinc 8 /* j */ 1
iinc 10 /* k */ 1
StackMap locals:
StackMap stack:
12: iload 8 /* j */
iload 9 /* end */
if_icmpge 13
aload 0 /* value */
iload 8 /* j */
baload
aload 2 /* str */
iload 10 /* k */
baload
if_icmpeq 11
end local 10 // int k
13: .line 247
StackMap locals:
StackMap stack:
iload 8 /* j */
iload 9 /* end */
if_icmpne 15
14: .line 249
iload 7 /* i */
ireturn
end local 9 // int end
end local 8 // int j
15: .line 237
StackMap locals:
StackMap stack:
iinc 7 /* i */ 1
StackMap locals:
StackMap stack:
16: iload 7 /* i */
iload 6 /* max */
if_icmple 4
end local 7 // int i
17: .line 253
iconst_m1
ireturn
end local 6 // int max
end local 5 // byte first
end local 4 // int fromIndex
end local 3 // int strCount
end local 2 // byte[] str
end local 1 // int valueCount
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 18 0 value [B
0 18 1 valueCount I
0 18 2 str [B
0 18 3 strCount I
0 18 4 fromIndex I
1 18 5 first B
2 18 6 max I
3 17 7 i I
8 15 8 j I
9 15 9 end I
10 13 10 k I
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
value
valueCount
str
strCount
fromIndex
public static int lastIndexOf(byte[], int, byte[], int, int);
descriptor: ([BI[BII)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=12, args_size=5
start local 0 // byte[] src
start local 1 // int srcCount
start local 2 // byte[] tgt
start local 3 // int tgtCount
start local 4 // int fromIndex
0: .line 258
iload 3 /* tgtCount */
iconst_1
isub
istore 5 /* min */
start local 5 // int min
1: .line 259
iload 5 /* min */
iload 4 /* fromIndex */
iadd
istore 6 /* i */
start local 6 // int i
2: .line 260
iload 3 /* tgtCount */
iconst_1
isub
istore 7 /* strLastIndex */
start local 7 // int strLastIndex
3: .line 261
aload 2 /* tgt */
iload 7 /* strLastIndex */
baload
sipush 255
iand
i2c
istore 8 /* strLastChar */
start local 8 // char strLastChar
4: .line 265
goto 6
5: .line 266
StackMap locals: byte[] int byte[] int int int int int int
StackMap stack:
iinc 6 /* i */ -1
6: .line 265
StackMap locals:
StackMap stack:
iload 6 /* i */
iload 5 /* min */
if_icmplt 7
aload 0 /* src */
iload 6 /* i */
baload
sipush 255
iand
iload 8 /* strLastChar */
if_icmpne 5
7: .line 268
StackMap locals:
StackMap stack:
iload 6 /* i */
iload 5 /* min */
if_icmpge 9
8: .line 269
iconst_m1
ireturn
9: .line 271
StackMap locals:
StackMap stack:
iload 6 /* i */
iconst_1
isub
istore 9 /* j */
start local 9 // int j
10: .line 272
iload 9 /* j */
iload 7 /* strLastIndex */
isub
istore 10 /* start */
start local 10 // int start
11: .line 273
iload 7 /* strLastIndex */
iconst_1
isub
istore 11 /* k */
start local 11 // int k
12: .line 274
goto 16
13: .line 275
StackMap locals: int int int
StackMap stack:
aload 0 /* src */
iload 9 /* j */
iinc 9 /* j */ -1
baload
sipush 255
iand
aload 2 /* tgt */
iload 11 /* k */
iinc 11 /* k */ -1
baload
sipush 255
iand
if_icmpeq 16
14: .line 276
iinc 6 /* i */ -1
15: .line 277
goto 18
16: .line 274
StackMap locals:
StackMap stack:
iload 9 /* j */
iload 10 /* start */
if_icmpgt 13
17: .line 280
iload 10 /* start */
iconst_1
iadd
ireturn
end local 11 // int k
end local 10 // int start
end local 9 // int j
18: .line 264
StackMap locals:
StackMap stack:
goto 6
end local 8 // char strLastChar
end local 7 // int strLastIndex
end local 6 // int i
end local 5 // int min
end local 4 // int fromIndex
end local 3 // int tgtCount
end local 2 // byte[] tgt
end local 1 // int srcCount
end local 0 // byte[] src
LocalVariableTable:
Start End Slot Name Signature
0 19 0 src [B
0 19 1 srcCount I
0 19 2 tgt [B
0 19 3 tgtCount I
0 19 4 fromIndex I
1 19 5 min I
2 19 6 i I
3 19 7 strLastIndex I
4 19 8 strLastChar C
10 18 9 j I
11 18 10 start I
12 18 11 k I
MethodParameters:
Name Flags
src
srcCount
tgt
tgtCount
fromIndex
public static int lastIndexOf(byte[], int, int);
descriptor: ([BII)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=4, args_size=3
start local 0 // byte[] value
start local 1 // int ch
start local 2 // int fromIndex
0: .line 285
iload 1 /* ch */
invokestatic java.lang.StringLatin1.canEncode:(I)Z
ifne 2
1: .line 286
iconst_m1
ireturn
2: .line 288
StackMap locals:
StackMap stack:
iload 2 /* fromIndex */
aload 0 /* value */
arraylength
iconst_1
isub
invokestatic java.lang.Math.min:(II)I
istore 3 /* off */
start local 3 // int off
3: .line 289
goto 7
4: .line 290
StackMap locals: int
StackMap stack:
aload 0 /* value */
iload 3 /* off */
baload
iload 1 /* ch */
i2b
if_icmpne 6
5: .line 291
iload 3 /* off */
ireturn
6: .line 289
StackMap locals:
StackMap stack:
iinc 3 /* off */ -1
StackMap locals:
StackMap stack:
7: iload 3 /* off */
ifge 4
8: .line 294
iconst_m1
ireturn
end local 3 // int off
end local 2 // int fromIndex
end local 1 // int ch
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 9 0 value [B
0 9 1 ch I
0 9 2 fromIndex I
3 9 3 off I
MethodParameters:
Name Flags
value final
ch
fromIndex
public static java.lang.String replace(byte[], char, char);
descriptor: ([BCC)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=7, args_size=3
start local 0 // byte[] value
start local 1 // char oldChar
start local 2 // char newChar
0: .line 298
iload 1 /* oldChar */
invokestatic java.lang.StringLatin1.canEncode:(I)Z
ifeq 33
1: .line 299
aload 0 /* value */
arraylength
istore 3 /* len */
start local 3 // int len
2: .line 300
iconst_m1
istore 4 /* i */
start local 4 // int i
3: .line 301
goto 6
4: .line 302
StackMap locals: int int
StackMap stack:
aload 0 /* value */
iload 4 /* i */
baload
iload 1 /* oldChar */
i2b
if_icmpne 6
5: .line 303
goto 7
6: .line 301
StackMap locals:
StackMap stack:
iinc 4 /* i */ 1
iload 4 /* i */
iload 3 /* len */
if_icmplt 4
7: .line 306
StackMap locals:
StackMap stack:
iload 4 /* i */
iload 3 /* len */
if_icmpge 33
8: .line 307
iload 2 /* newChar */
invokestatic java.lang.StringLatin1.canEncode:(I)Z
ifeq 23
9: .line 308
iload 3 /* len */
i2l
invokestatic java.lang.StringConcatHelper.newArray:(J)[B
astore 5 /* buf */
start local 5 // byte[] buf
10: .line 309
iconst_0
istore 6 /* j */
start local 6 // int j
11: goto 14
12: .line 310
StackMap locals: byte[] int
StackMap stack:
aload 5 /* buf */
iload 6 /* j */
aload 0 /* value */
iload 6 /* j */
baload
bastore
13: .line 309
iinc 6 /* j */ 1
StackMap locals:
StackMap stack:
14: iload 6 /* j */
iload 4 /* i */
if_icmplt 12
end local 6 // int j
15: .line 312
goto 21
16: .line 313
StackMap locals:
StackMap stack:
aload 0 /* value */
iload 4 /* i */
baload
istore 6 /* c */
start local 6 // byte c
17: .line 314
aload 5 /* buf */
iload 4 /* i */
iload 6 /* c */
iload 1 /* oldChar */
i2b
if_icmpne 18
iload 2 /* newChar */
i2b
goto 19
StackMap locals: byte[] int int int int byte[] int
StackMap stack: byte[] int
18: iload 6 /* c */
StackMap locals: byte[] int int int int byte[] int
StackMap stack: byte[] int int
19: bastore
20: .line 315
iinc 4 /* i */ 1
end local 6 // byte c
21: .line 312
StackMap locals:
StackMap stack:
iload 4 /* i */
iload 3 /* len */
if_icmplt 16
22: .line 317
new java.lang.String
dup
aload 5 /* buf */
iconst_0
invokespecial java.lang.String.<init>:([BB)V
areturn
end local 5 // byte[] buf
23: .line 319
StackMap locals:
StackMap stack:
iload 3 /* len */
invokestatic java.lang.StringUTF16.newBytesFor:(I)[B
astore 5 /* buf */
start local 5 // byte[] buf
24: .line 321
aload 0 /* value */
iconst_0
aload 5 /* buf */
iconst_0
iload 4 /* i */
invokestatic java.lang.StringLatin1.inflate:([BI[BII)V
25: .line 322
goto 31
26: .line 323
StackMap locals: byte[]
StackMap stack:
aload 0 /* value */
iload 4 /* i */
baload
sipush 255
iand
i2c
istore 6 /* c */
start local 6 // char c
27: .line 324
aload 5 /* buf */
iload 4 /* i */
iload 6 /* c */
iload 1 /* oldChar */
if_icmpne 28
iload 2 /* newChar */
goto 29
StackMap locals: byte[] int int int int byte[] int
StackMap stack: byte[] int
28: iload 6 /* c */
StackMap locals: byte[] int int int int byte[] int
StackMap stack: byte[] int int
29: invokestatic java.lang.StringUTF16.putChar:([BII)V
30: .line 325
iinc 4 /* i */ 1
end local 6 // char c
31: .line 322
StackMap locals:
StackMap stack:
iload 4 /* i */
iload 3 /* len */
if_icmplt 26
32: .line 327
new java.lang.String
dup
aload 5 /* buf */
iconst_1
invokespecial java.lang.String.<init>:([BB)V
areturn
end local 5 // byte[] buf
end local 4 // int i
end local 3 // int len
33: .line 331
StackMap locals:
StackMap stack:
aconst_null
areturn
end local 2 // char newChar
end local 1 // char oldChar
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 34 0 value [B
0 34 1 oldChar C
0 34 2 newChar C
2 33 3 len I
3 33 4 i I
10 23 5 buf [B
11 15 6 j I
17 21 6 c B
24 33 5 buf [B
27 31 6 c C
MethodParameters:
Name Flags
value
oldChar
newChar
public static java.lang.String replace(byte[], int, byte[], int, byte[], int);
descriptor: ([BI[BI[BI)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=17, args_size=6
start local 0 // byte[] value
start local 1 // int valLen
start local 2 // byte[] targ
start local 3 // int targLen
start local 4 // byte[] repl
start local 5 // int replLen
0: .line 337
getstatic java.lang.StringLatin1.$assertionsDisabled:Z
ifne 1
iload 3 /* targLen */
ifgt 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: .line 338
StackMap locals:
StackMap stack:
iconst_0
istore 8 /* p */
start local 8 // int p
2: .line 339
iload 1 /* valLen */
ifeq 4
aload 0 /* value */
iload 1 /* valLen */
aload 2 /* targ */
iload 3 /* targLen */
iconst_0
invokestatic java.lang.StringLatin1.indexOf:([BI[BII)I
dup
istore 6 /* i */
start local 6 // int i
3: ifge 5
end local 6 // int i
4: .line 340
StackMap locals: byte[] int byte[] int byte[] int top top int
StackMap stack:
aconst_null
areturn
start local 6 // int i
5: .line 344
StackMap locals: byte[] int byte[] int byte[] int int top int
StackMap stack:
bipush 16
newarray 10
astore 9 /* pos */
start local 9 // int[] pos
6: .line 345
aload 9 /* pos */
iconst_0
iload 6 /* i */
iastore
7: .line 346
iload 6 /* i */
iload 3 /* targLen */
iadd
istore 6 /* i */
8: .line 347
goto 13
start local 7 // int j
9: .line 348
StackMap locals: byte[] int byte[] int byte[] int int int int int[]
StackMap stack:
iinc 8 /* p */ 1
iload 8 /* p */
aload 9 /* pos */
arraylength
if_icmpne 11
10: .line 349
aload 9 /* pos */
iload 8 /* p */
iconst_1
iload 8 /* p */
iconst_1
ishr
invokestatic jdk.internal.util.ArraysSupport.newLength:(III)I
invokestatic java.util.Arrays.copyOf:([II)[I
astore 9 /* pos */
11: .line 351
StackMap locals:
StackMap stack:
aload 9 /* pos */
iload 8 /* p */
iload 7 /* j */
iastore
12: .line 352
iload 7 /* j */
iload 3 /* targLen */
iadd
istore 6 /* i */
end local 7 // int j
13: .line 347
StackMap locals: byte[] int byte[] int byte[] int int top int int[]
StackMap stack:
aload 0 /* value */
iload 1 /* valLen */
aload 2 /* targ */
iload 3 /* targLen */
iload 6 /* i */
invokestatic java.lang.StringLatin1.indexOf:([BI[BII)I
dup
istore 7 /* j */
start local 7 // int j
14: ifgt 9
15: .line 357
iload 1 /* valLen */
16: .line 358
iinc 8 /* p */ 1
iload 8 /* p */
iload 5 /* replLen */
iload 3 /* targLen */
isub
invokestatic java.lang.Math.multiplyExact:(II)I
17: .line 357
invokestatic java.lang.Math.addExact:(II)I
istore 10 /* resultLen */
start local 10 // int resultLen
18: .line 359
goto 21
end local 10 // int resultLen
StackMap locals: byte[] int byte[] int byte[] int int int int int[]
StackMap stack: java.lang.ArithmeticException
19: pop
20: .line 360
new java.lang.OutOfMemoryError
dup
ldc "Required length exceeds implementation limit"
invokespecial java.lang.OutOfMemoryError.<init>:(Ljava/lang/String;)V
athrow
start local 10 // int resultLen
21: .line 362
StackMap locals: int
StackMap stack:
iload 10 /* resultLen */
ifne 23
22: .line 363
ldc ""
areturn
23: .line 366
StackMap locals:
StackMap stack:
iload 10 /* resultLen */
i2l
invokestatic java.lang.StringConcatHelper.newArray:(J)[B
astore 11 /* result */
start local 11 // byte[] result
24: .line 367
iconst_0
istore 12 /* posFrom */
start local 12 // int posFrom
25: iconst_0
istore 13 /* posTo */
start local 13 // int posTo
26: .line 368
iconst_0
istore 14 /* q */
start local 14 // int q
27: goto 39
28: .line 369
StackMap locals: byte[] int byte[] int byte[] int int int int int[] int byte[] int int int
StackMap stack:
aload 9 /* pos */
iload 14 /* q */
iaload
istore 15 /* nextPos */
start local 15 // int nextPos
29: .line 370
goto 31
30: .line 371
StackMap locals: int
StackMap stack:
aload 11 /* result */
iload 13 /* posTo */
iinc 13 /* posTo */ 1
aload 0 /* value */
iload 12 /* posFrom */
iinc 12 /* posFrom */ 1
baload
bastore
31: .line 370
StackMap locals:
StackMap stack:
iload 12 /* posFrom */
iload 15 /* nextPos */
if_icmplt 30
32: .line 373
iload 12 /* posFrom */
iload 3 /* targLen */
iadd
istore 12 /* posFrom */
33: .line 374
iconst_0
istore 16 /* k */
start local 16 // int k
34: goto 37
35: .line 375
StackMap locals: int
StackMap stack:
aload 11 /* result */
iload 13 /* posTo */
iinc 13 /* posTo */ 1
aload 4 /* repl */
iload 16 /* k */
baload
bastore
36: .line 374
iinc 16 /* k */ 1
StackMap locals:
StackMap stack:
37: iload 16 /* k */
iload 5 /* replLen */
if_icmplt 35
end local 16 // int k
end local 15 // int nextPos
38: .line 368
iinc 14 /* q */ 1
StackMap locals:
StackMap stack:
39: iload 14 /* q */
iload 8 /* p */
if_icmplt 28
end local 14 // int q
40: .line 378
goto 42
41: .line 379
StackMap locals:
StackMap stack:
aload 11 /* result */
iload 13 /* posTo */
iinc 13 /* posTo */ 1
aload 0 /* value */
iload 12 /* posFrom */
iinc 12 /* posFrom */ 1
baload
bastore
42: .line 378
StackMap locals:
StackMap stack:
iload 12 /* posFrom */
iload 1 /* valLen */
if_icmplt 41
43: .line 381
new java.lang.String
dup
aload 11 /* result */
iconst_0
invokespecial java.lang.String.<init>:([BB)V
areturn
end local 13 // int posTo
end local 12 // int posFrom
end local 11 // byte[] result
end local 10 // int resultLen
end local 9 // int[] pos
end local 8 // int p
end local 7 // int j
end local 6 // int i
end local 5 // int replLen
end local 4 // byte[] repl
end local 3 // int targLen
end local 2 // byte[] targ
end local 1 // int valLen
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 44 0 value [B
0 44 1 valLen I
0 44 2 targ [B
0 44 3 targLen I
0 44 4 repl [B
0 44 5 replLen I
3 4 6 i I
5 44 6 i I
9 13 7 j I
14 44 7 j I
2 44 8 p I
6 44 9 pos [I
18 19 10 resultLen I
21 44 10 resultLen I
24 44 11 result [B
25 44 12 posFrom I
26 44 13 posTo I
27 40 14 q I
29 38 15 nextPos I
34 38 16 k I
Exception table:
from to target type
15 18 19 Class java.lang.ArithmeticException
MethodParameters:
Name Flags
value
valLen
targ
targLen
repl
replLen
public static boolean regionMatchesCI(byte[], int, byte[], int, int);
descriptor: ([BI[BII)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=10, args_size=5
start local 0 // byte[] value
start local 1 // int toffset
start local 2 // byte[] other
start local 3 // int ooffset
start local 4 // int len
0: .line 387
iload 1 /* toffset */
iload 4 /* len */
iadd
istore 5 /* last */
start local 5 // int last
1: .line 388
goto 13
2: .line 389
StackMap locals: int
StackMap stack:
aload 0 /* value */
iload 1 /* toffset */
iinc 1 /* toffset */ 1
baload
sipush 255
iand
i2c
istore 6 /* c1 */
start local 6 // char c1
3: .line 390
aload 2 /* other */
iload 3 /* ooffset */
iinc 3 /* ooffset */ 1
baload
sipush 255
iand
i2c
istore 7 /* c2 */
start local 7 // char c2
4: .line 391
iload 6 /* c1 */
iload 7 /* c2 */
if_icmpne 6
5: .line 392
goto 13
6: .line 394
StackMap locals: int int
StackMap stack:
getstatic java.lang.CharacterDataLatin1.instance:Ljava/lang/CharacterDataLatin1;
iload 6 /* c1 */
invokevirtual java.lang.CharacterDataLatin1.toUpperCase:(I)I
istore 8 /* u1 */
start local 8 // int u1
7: .line 395
getstatic java.lang.CharacterDataLatin1.instance:Ljava/lang/CharacterDataLatin1;
iload 7 /* c2 */
invokevirtual java.lang.CharacterDataLatin1.toUpperCase:(I)I
istore 9 /* u2 */
start local 9 // int u2
8: .line 396
iload 8 /* u1 */
iload 9 /* u2 */
if_icmpne 10
9: .line 397
goto 13
10: .line 399
StackMap locals: int int
StackMap stack:
iload 8 /* u1 */
invokestatic java.lang.Character.toLowerCase:(I)I
iload 9 /* u2 */
invokestatic java.lang.Character.toLowerCase:(I)I
if_icmpne 12
11: .line 400
goto 13
12: .line 402
StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 9 // int u2
end local 8 // int u1
end local 7 // char c2
end local 6 // char c1
13: .line 388
StackMap locals: byte[] int byte[] int int int
StackMap stack:
iload 1 /* toffset */
iload 5 /* last */
if_icmplt 2
14: .line 404
iconst_1
ireturn
end local 5 // int last
end local 4 // int len
end local 3 // int ooffset
end local 2 // byte[] other
end local 1 // int toffset
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 15 0 value [B
0 15 1 toffset I
0 15 2 other [B
0 15 3 ooffset I
0 15 4 len I
1 15 5 last I
3 13 6 c1 C
4 13 7 c2 C
7 13 8 u1 I
8 13 9 u2 I
MethodParameters:
Name Flags
value
toffset
other
ooffset
len
public static boolean regionMatchesCI_UTF16(byte[], int, byte[], int, int);
descriptor: ([BI[BII)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=10, args_size=5
start local 0 // byte[] value
start local 1 // int toffset
start local 2 // byte[] other
start local 3 // int ooffset
start local 4 // int len
0: .line 409
iload 1 /* toffset */
iload 4 /* len */
iadd
istore 5 /* last */
start local 5 // int last
1: .line 410
goto 13
2: .line 411
StackMap locals: int
StackMap stack:
aload 0 /* value */
iload 1 /* toffset */
iinc 1 /* toffset */ 1
baload
sipush 255
iand
i2c
istore 6 /* c1 */
start local 6 // char c1
3: .line 412
aload 2 /* other */
iload 3 /* ooffset */
iinc 3 /* ooffset */ 1
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 7 /* c2 */
start local 7 // char c2
4: .line 413
iload 6 /* c1 */
iload 7 /* c2 */
if_icmpne 6
5: .line 414
goto 13
6: .line 416
StackMap locals: int int
StackMap stack:
getstatic java.lang.CharacterDataLatin1.instance:Ljava/lang/CharacterDataLatin1;
iload 6 /* c1 */
invokevirtual java.lang.CharacterDataLatin1.toUpperCase:(I)I
i2c
istore 8 /* u1 */
start local 8 // char u1
7: .line 417
iload 7 /* c2 */
invokestatic java.lang.Character.toUpperCase:(C)C
istore 9 /* u2 */
start local 9 // char u2
8: .line 418
iload 8 /* u1 */
iload 9 /* u2 */
if_icmpne 10
9: .line 419
goto 13
10: .line 421
StackMap locals: int int
StackMap stack:
iload 8 /* u1 */
invokestatic java.lang.Character.toLowerCase:(C)C
iload 9 /* u2 */
invokestatic java.lang.Character.toLowerCase:(C)C
if_icmpne 12
11: .line 422
goto 13
12: .line 424
StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 9 // char u2
end local 8 // char u1
end local 7 // char c2
end local 6 // char c1
13: .line 410
StackMap locals: byte[] int byte[] int int int
StackMap stack:
iload 1 /* toffset */
iload 5 /* last */
if_icmplt 2
14: .line 426
iconst_1
ireturn
end local 5 // int last
end local 4 // int len
end local 3 // int ooffset
end local 2 // byte[] other
end local 1 // int toffset
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 15 0 value [B
0 15 1 toffset I
0 15 2 other [B
0 15 3 ooffset I
0 15 4 len I
1 15 5 last I
3 13 6 c1 C
4 13 7 c2 C
7 13 8 u1 C
8 13 9 u2 C
MethodParameters:
Name Flags
value
toffset
other
ooffset
len
public static java.lang.String toLowerCase(java.lang.String, byte[], java.util.Locale);
descriptor: (Ljava/lang/String;[BLjava/util/Locale;)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=9, args_size=3
start local 0 // java.lang.String str
start local 1 // byte[] value
start local 2 // java.util.Locale locale
0: .line 430
aload 2 /* locale */
ifnonnull 2
1: .line 431
new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: .line 434
StackMap locals:
StackMap stack:
aload 1 /* value */
arraylength
istore 4 /* len */
start local 4 // int len
3: .line 436
iconst_0
istore 3 /* first */
start local 3 // int first
4: goto 9
5: .line 437
StackMap locals: int int
StackMap stack:
aload 1 /* value */
iload 3 /* first */
baload
sipush 255
iand
istore 5 /* cp */
start local 5 // int cp
6: .line 438
iload 5 /* cp */
getstatic java.lang.CharacterDataLatin1.instance:Ljava/lang/CharacterDataLatin1;
iload 5 /* cp */
invokevirtual java.lang.CharacterDataLatin1.toLowerCase:(I)I
if_icmpeq 8
7: .line 439
goto 10
end local 5 // int cp
8: .line 436
StackMap locals:
StackMap stack:
iinc 3 /* first */ 1
StackMap locals:
StackMap stack:
9: iload 3 /* first */
iload 4 /* len */
if_icmplt 5
10: .line 442
StackMap locals:
StackMap stack:
iload 3 /* first */
iload 4 /* len */
if_icmpne 12
11: .line 443
aload 0 /* str */
areturn
12: .line 444
StackMap locals:
StackMap stack:
aload 2 /* locale */
invokevirtual java.util.Locale.getLanguage:()Ljava/lang/String;
astore 5 /* lang */
start local 5 // java.lang.String lang
13: .line 445
aload 5 /* lang */
ldc "tr"
if_acmpeq 14
aload 5 /* lang */
ldc "az"
if_acmpeq 14
aload 5 /* lang */
ldc "lt"
if_acmpne 15
14: .line 446
StackMap locals: java.lang.String
StackMap stack:
aload 0 /* str */
aload 1 /* value */
iload 3 /* first */
aload 2 /* locale */
iconst_1
invokestatic java.lang.StringLatin1.toLowerCaseEx:(Ljava/lang/String;[BILjava/util/Locale;Z)Ljava/lang/String;
areturn
15: .line 448
StackMap locals:
StackMap stack:
iload 4 /* len */
newarray 8
astore 6 /* result */
start local 6 // byte[] result
16: .line 449
aload 1 /* value */
iconst_0
aload 6 /* result */
iconst_0
iload 3 /* first */
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
17: .line 451
iload 3 /* first */
istore 7 /* i */
start local 7 // int i
18: goto 25
19: .line 452
StackMap locals: byte[] int
StackMap stack:
aload 1 /* value */
iload 7 /* i */
baload
sipush 255
iand
istore 8 /* cp */
start local 8 // int cp
20: .line 453
getstatic java.lang.CharacterDataLatin1.instance:Ljava/lang/CharacterDataLatin1;
iload 8 /* cp */
invokevirtual java.lang.CharacterDataLatin1.toLowerCase:(I)I
istore 8 /* cp */
21: .line 454
iload 8 /* cp */
invokestatic java.lang.StringLatin1.canEncode:(I)Z
ifne 23
22: .line 455
aload 0 /* str */
aload 1 /* value */
iload 3 /* first */
aload 2 /* locale */
iconst_0
invokestatic java.lang.StringLatin1.toLowerCaseEx:(Ljava/lang/String;[BILjava/util/Locale;Z)Ljava/lang/String;
areturn
23: .line 457
StackMap locals: int
StackMap stack:
aload 6 /* result */
iload 7 /* i */
iload 8 /* cp */
i2b
bastore
end local 8 // int cp
24: .line 451
iinc 7 /* i */ 1
StackMap locals:
StackMap stack:
25: iload 7 /* i */
iload 4 /* len */
if_icmplt 19
end local 7 // int i
26: .line 459
new java.lang.String
dup
aload 6 /* result */
iconst_0
invokespecial java.lang.String.<init>:([BB)V
areturn
end local 6 // byte[] result
end local 5 // java.lang.String lang
end local 4 // int len
end local 3 // int first
end local 2 // java.util.Locale locale
end local 1 // byte[] value
end local 0 // java.lang.String str
LocalVariableTable:
Start End Slot Name Signature
0 27 0 str Ljava/lang/String;
0 27 1 value [B
0 27 2 locale Ljava/util/Locale;
4 27 3 first I
3 27 4 len I
6 8 5 cp I
13 27 5 lang Ljava/lang/String;
16 27 6 result [B
18 26 7 i I
20 24 8 cp I
MethodParameters:
Name Flags
str
value
locale
private static java.lang.String toLowerCaseEx(java.lang.String, byte[], int, java.util.Locale, boolean);
descriptor: (Ljava/lang/String;[BILjava/util/Locale;Z)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=13, args_size=5
start local 0 // java.lang.String str
start local 1 // byte[] value
start local 2 // int first
start local 3 // java.util.Locale locale
start local 4 // boolean localeDependent
0: .line 465
aload 1 /* value */
arraylength
invokestatic java.lang.StringUTF16.newBytesFor:(I)[B
astore 5 /* result */
start local 5 // byte[] result
1: .line 466
iconst_0
istore 6 /* resultOffset */
start local 6 // int resultOffset
2: .line 467
iconst_0
istore 7 /* i */
start local 7 // int i
3: goto 6
4: .line 468
StackMap locals: byte[] int int
StackMap stack:
aload 5 /* result */
iload 6 /* resultOffset */
iinc 6 /* resultOffset */ 1
aload 1 /* value */
iload 7 /* i */
baload
sipush 255
iand
invokestatic java.lang.StringUTF16.putChar:([BII)V
5: .line 467
iinc 7 /* i */ 1
StackMap locals:
StackMap stack:
6: iload 7 /* i */
iload 2 /* first */
if_icmplt 4
end local 7 // int i
7: .line 470
iload 2 /* first */
istore 7 /* i */
start local 7 // int i
8: goto 32
9: .line 471
StackMap locals:
StackMap stack:
aload 1 /* value */
iload 7 /* i */
baload
sipush 255
iand
istore 8 /* srcChar */
start local 8 // int srcChar
10: .line 474
iload 4 /* localeDependent */
ifeq 13
11: .line 475
aload 0 /* str */
iload 7 /* i */
aload 3 /* locale */
invokestatic java.lang.ConditionalSpecialCasing.toLowerCaseEx:(Ljava/lang/String;ILjava/util/Locale;)I
istore 9 /* lowerChar */
start local 9 // int lowerChar
12: .line 476
goto 14
end local 9 // int lowerChar
13: .line 477
StackMap locals: int
StackMap stack:
getstatic java.lang.CharacterDataLatin1.instance:Ljava/lang/CharacterDataLatin1;
iload 8 /* srcChar */
invokevirtual java.lang.CharacterDataLatin1.toLowerCase:(I)I
istore 9 /* lowerChar */
start local 9 // int lowerChar
14: .line 479
StackMap locals: int
StackMap stack:
iload 9 /* lowerChar */
invokestatic java.lang.Character.isBmpCodePoint:(I)Z
ifeq 17
15: .line 480
aload 5 /* result */
iload 6 /* resultOffset */
iinc 6 /* resultOffset */ 1
iload 9 /* lowerChar */
invokestatic java.lang.StringUTF16.putChar:([BII)V
16: .line 481
goto 31
17: .line 482
StackMap locals:
StackMap stack:
iload 9 /* lowerChar */
iconst_m1
if_icmpne 20
18: .line 483
aload 0 /* str */
iload 7 /* i */
aload 3 /* locale */
invokestatic java.lang.ConditionalSpecialCasing.toLowerCaseCharArray:(Ljava/lang/String;ILjava/util/Locale;)[C
astore 10 /* lowerCharArray */
start local 10 // char[] lowerCharArray
19: .line 484
goto 21
end local 10 // char[] lowerCharArray
20: .line 485
StackMap locals:
StackMap stack:
iload 9 /* lowerChar */
invokestatic java.lang.Character.toChars:(I)[C
astore 10 /* lowerCharArray */
start local 10 // char[] lowerCharArray
21: .line 488
StackMap locals: char[]
StackMap stack:
aload 10 /* lowerCharArray */
arraylength
istore 11 /* mapLen */
start local 11 // int mapLen
22: .line 489
iload 11 /* mapLen */
iconst_1
if_icmple 26
23: .line 490
aload 5 /* result */
arraylength
iconst_1
ishr
iload 11 /* mapLen */
iadd
iconst_1
isub
invokestatic java.lang.StringUTF16.newBytesFor:(I)[B
astore 12 /* result2 */
start local 12 // byte[] result2
24: .line 491
aload 5 /* result */
iconst_0
aload 12 /* result2 */
iconst_0
iload 6 /* resultOffset */
iconst_1
ishl
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
25: .line 492
aload 12 /* result2 */
astore 5 /* result */
end local 12 // byte[] result2
26: .line 494
StackMap locals: int
StackMap stack:
iconst_0
istore 12 /* x */
start local 12 // int x
27: goto 30
28: .line 495
StackMap locals: int
StackMap stack:
aload 5 /* result */
iload 6 /* resultOffset */
iinc 6 /* resultOffset */ 1
aload 10 /* lowerCharArray */
iload 12 /* x */
caload
invokestatic java.lang.StringUTF16.putChar:([BII)V
29: .line 494
iinc 12 /* x */ 1
StackMap locals:
StackMap stack:
30: iload 12 /* x */
iload 11 /* mapLen */
if_icmplt 28
end local 12 // int x
end local 11 // int mapLen
end local 10 // char[] lowerCharArray
end local 9 // int lowerChar
end local 8 // int srcChar
31: .line 470
StackMap locals: java.lang.String byte[] int java.util.Locale int byte[] int int
StackMap stack:
iinc 7 /* i */ 1
StackMap locals:
StackMap stack:
32: iload 7 /* i */
aload 1 /* value */
arraylength
if_icmplt 9
end local 7 // int i
33: .line 499
aload 5 /* result */
iconst_0
iload 6 /* resultOffset */
invokestatic java.lang.StringUTF16.newString:([BII)Ljava/lang/String;
areturn
end local 6 // int resultOffset
end local 5 // byte[] result
end local 4 // boolean localeDependent
end local 3 // java.util.Locale locale
end local 2 // int first
end local 1 // byte[] value
end local 0 // java.lang.String str
LocalVariableTable:
Start End Slot Name Signature
0 34 0 str Ljava/lang/String;
0 34 1 value [B
0 34 2 first I
0 34 3 locale Ljava/util/Locale;
0 34 4 localeDependent Z
1 34 5 result [B
2 34 6 resultOffset I
3 7 7 i I
8 33 7 i I
10 31 8 srcChar I
12 13 9 lowerChar I
14 31 9 lowerChar I
19 20 10 lowerCharArray [C
21 31 10 lowerCharArray [C
22 31 11 mapLen I
24 26 12 result2 [B
27 31 12 x I
MethodParameters:
Name Flags
str
value
first
locale
localeDependent
public static java.lang.String toUpperCase(java.lang.String, byte[], java.util.Locale);
descriptor: (Ljava/lang/String;[BLjava/util/Locale;)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=9, args_size=3
start local 0 // java.lang.String str
start local 1 // byte[] value
start local 2 // java.util.Locale locale
0: .line 503
aload 2 /* locale */
ifnonnull 2
1: .line 504
new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: .line 507
StackMap locals:
StackMap stack:
aload 1 /* value */
arraylength
istore 4 /* len */
start local 4 // int len
3: .line 510
iconst_0
istore 3 /* first */
start local 3 // int first
4: goto 9
5: .line 511
StackMap locals: int int
StackMap stack:
aload 1 /* value */
iload 3 /* first */
baload
sipush 255
iand
istore 5 /* cp */
start local 5 // int cp
6: .line 512
iload 5 /* cp */
getstatic java.lang.CharacterDataLatin1.instance:Ljava/lang/CharacterDataLatin1;
iload 5 /* cp */
invokevirtual java.lang.CharacterDataLatin1.toUpperCaseEx:(I)I
if_icmpeq 8
7: .line 513
goto 10
end local 5 // int cp
8: .line 510
StackMap locals:
StackMap stack:
iinc 3 /* first */ 1
StackMap locals:
StackMap stack:
9: iload 3 /* first */
iload 4 /* len */
if_icmplt 5
10: .line 516
StackMap locals:
StackMap stack:
iload 3 /* first */
iload 4 /* len */
if_icmpne 12
11: .line 517
aload 0 /* str */
areturn
12: .line 519
StackMap locals:
StackMap stack:
aload 2 /* locale */
invokevirtual java.util.Locale.getLanguage:()Ljava/lang/String;
astore 5 /* lang */
start local 5 // java.lang.String lang
13: .line 520
aload 5 /* lang */
ldc "tr"
if_acmpeq 14
aload 5 /* lang */
ldc "az"
if_acmpeq 14
aload 5 /* lang */
ldc "lt"
if_acmpne 15
14: .line 521
StackMap locals: java.lang.String
StackMap stack:
aload 0 /* str */
aload 1 /* value */
iload 3 /* first */
aload 2 /* locale */
iconst_1
invokestatic java.lang.StringLatin1.toUpperCaseEx:(Ljava/lang/String;[BILjava/util/Locale;Z)Ljava/lang/String;
areturn
15: .line 523
StackMap locals:
StackMap stack:
iload 4 /* len */
newarray 8
astore 6 /* result */
start local 6 // byte[] result
16: .line 524
aload 1 /* value */
iconst_0
aload 6 /* result */
iconst_0
iload 3 /* first */
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
17: .line 526
iload 3 /* first */
istore 7 /* i */
start local 7 // int i
18: goto 25
19: .line 527
StackMap locals: byte[] int
StackMap stack:
aload 1 /* value */
iload 7 /* i */
baload
sipush 255
iand
istore 8 /* cp */
start local 8 // int cp
20: .line 528
getstatic java.lang.CharacterDataLatin1.instance:Ljava/lang/CharacterDataLatin1;
iload 8 /* cp */
invokevirtual java.lang.CharacterDataLatin1.toUpperCaseEx:(I)I
istore 8 /* cp */
21: .line 529
iload 8 /* cp */
invokestatic java.lang.StringLatin1.canEncode:(I)Z
ifne 23
22: .line 530
aload 0 /* str */
aload 1 /* value */
iload 3 /* first */
aload 2 /* locale */
iconst_0
invokestatic java.lang.StringLatin1.toUpperCaseEx:(Ljava/lang/String;[BILjava/util/Locale;Z)Ljava/lang/String;
areturn
23: .line 532
StackMap locals: int
StackMap stack:
aload 6 /* result */
iload 7 /* i */
iload 8 /* cp */
i2b
bastore
end local 8 // int cp
24: .line 526
iinc 7 /* i */ 1
StackMap locals:
StackMap stack:
25: iload 7 /* i */
iload 4 /* len */
if_icmplt 19
end local 7 // int i
26: .line 534
new java.lang.String
dup
aload 6 /* result */
iconst_0
invokespecial java.lang.String.<init>:([BB)V
areturn
end local 6 // byte[] result
end local 5 // java.lang.String lang
end local 4 // int len
end local 3 // int first
end local 2 // java.util.Locale locale
end local 1 // byte[] value
end local 0 // java.lang.String str
LocalVariableTable:
Start End Slot Name Signature
0 27 0 str Ljava/lang/String;
0 27 1 value [B
0 27 2 locale Ljava/util/Locale;
4 27 3 first I
3 27 4 len I
6 8 5 cp I
13 27 5 lang Ljava/lang/String;
16 27 6 result [B
18 26 7 i I
20 24 8 cp I
MethodParameters:
Name Flags
str
value
locale
private static java.lang.String toUpperCaseEx(java.lang.String, byte[], int, java.util.Locale, boolean);
descriptor: (Ljava/lang/String;[BILjava/util/Locale;Z)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=13, args_size=5
start local 0 // java.lang.String str
start local 1 // byte[] value
start local 2 // int first
start local 3 // java.util.Locale locale
start local 4 // boolean localeDependent
0: .line 540
aload 1 /* value */
arraylength
invokestatic java.lang.StringUTF16.newBytesFor:(I)[B
astore 5 /* result */
start local 5 // byte[] result
1: .line 541
iconst_0
istore 6 /* resultOffset */
start local 6 // int resultOffset
2: .line 542
iconst_0
istore 7 /* i */
start local 7 // int i
3: goto 6
4: .line 543
StackMap locals: byte[] int int
StackMap stack:
aload 5 /* result */
iload 6 /* resultOffset */
iinc 6 /* resultOffset */ 1
aload 1 /* value */
iload 7 /* i */
baload
sipush 255
iand
invokestatic java.lang.StringUTF16.putChar:([BII)V
5: .line 542
iinc 7 /* i */ 1
StackMap locals:
StackMap stack:
6: iload 7 /* i */
iload 2 /* first */
if_icmplt 4
end local 7 // int i
7: .line 545
iload 2 /* first */
istore 7 /* i */
start local 7 // int i
8: goto 36
9: .line 546
StackMap locals:
StackMap stack:
aload 1 /* value */
iload 7 /* i */
baload
sipush 255
iand
istore 8 /* srcChar */
start local 8 // int srcChar
10: .line 549
iload 4 /* localeDependent */
ifeq 13
11: .line 550
aload 0 /* str */
iload 7 /* i */
aload 3 /* locale */
invokestatic java.lang.ConditionalSpecialCasing.toUpperCaseEx:(Ljava/lang/String;ILjava/util/Locale;)I
istore 9 /* upperChar */
start local 9 // int upperChar
12: .line 551
goto 14
end local 9 // int upperChar
13: .line 552
StackMap locals: int
StackMap stack:
getstatic java.lang.CharacterDataLatin1.instance:Ljava/lang/CharacterDataLatin1;
iload 8 /* srcChar */
invokevirtual java.lang.CharacterDataLatin1.toUpperCaseEx:(I)I
istore 9 /* upperChar */
start local 9 // int upperChar
14: .line 554
StackMap locals: int
StackMap stack:
iload 9 /* upperChar */
invokestatic java.lang.Character.isBmpCodePoint:(I)Z
ifeq 17
15: .line 555
aload 5 /* result */
iload 6 /* resultOffset */
iinc 6 /* resultOffset */ 1
iload 9 /* upperChar */
invokestatic java.lang.StringUTF16.putChar:([BII)V
16: .line 556
goto 35
17: .line 557
StackMap locals:
StackMap stack:
iload 9 /* upperChar */
iconst_m1
if_icmpne 24
18: .line 558
iload 4 /* localeDependent */
ifeq 22
19: .line 560
aload 0 /* str */
iload 7 /* i */
aload 3 /* locale */
invokestatic java.lang.ConditionalSpecialCasing.toUpperCaseCharArray:(Ljava/lang/String;ILjava/util/Locale;)[C
20: .line 559
astore 10 /* upperCharArray */
start local 10 // char[] upperCharArray
21: .line 561
goto 25
end local 10 // char[] upperCharArray
22: .line 562
StackMap locals:
StackMap stack:
getstatic java.lang.CharacterDataLatin1.instance:Ljava/lang/CharacterDataLatin1;
iload 8 /* srcChar */
invokevirtual java.lang.CharacterDataLatin1.toUpperCaseCharArray:(I)[C
astore 10 /* upperCharArray */
start local 10 // char[] upperCharArray
23: .line 564
goto 25
end local 10 // char[] upperCharArray
24: .line 565
StackMap locals:
StackMap stack:
iload 9 /* upperChar */
invokestatic java.lang.Character.toChars:(I)[C
astore 10 /* upperCharArray */
start local 10 // char[] upperCharArray
25: .line 568
StackMap locals: char[]
StackMap stack:
aload 10 /* upperCharArray */
arraylength
istore 11 /* mapLen */
start local 11 // int mapLen
26: .line 569
iload 11 /* mapLen */
iconst_1
if_icmple 30
27: .line 570
aload 5 /* result */
arraylength
iconst_1
ishr
iload 11 /* mapLen */
iadd
iconst_1
isub
invokestatic java.lang.StringUTF16.newBytesFor:(I)[B
astore 12 /* result2 */
start local 12 // byte[] result2
28: .line 571
aload 5 /* result */
iconst_0
aload 12 /* result2 */
iconst_0
iload 6 /* resultOffset */
iconst_1
ishl
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
29: .line 572
aload 12 /* result2 */
astore 5 /* result */
end local 12 // byte[] result2
30: .line 574
StackMap locals: int
StackMap stack:
iconst_0
istore 12 /* x */
start local 12 // int x
31: goto 34
32: .line 575
StackMap locals: int
StackMap stack:
aload 5 /* result */
iload 6 /* resultOffset */
iinc 6 /* resultOffset */ 1
aload 10 /* upperCharArray */
iload 12 /* x */
caload
invokestatic java.lang.StringUTF16.putChar:([BII)V
33: .line 574
iinc 12 /* x */ 1
StackMap locals:
StackMap stack:
34: iload 12 /* x */
iload 11 /* mapLen */
if_icmplt 32
end local 12 // int x
end local 11 // int mapLen
end local 10 // char[] upperCharArray
end local 9 // int upperChar
end local 8 // int srcChar
35: .line 545
StackMap locals: java.lang.String byte[] int java.util.Locale int byte[] int int
StackMap stack:
iinc 7 /* i */ 1
StackMap locals:
StackMap stack:
36: iload 7 /* i */
aload 1 /* value */
arraylength
if_icmplt 9
end local 7 // int i
37: .line 579
aload 5 /* result */
iconst_0
iload 6 /* resultOffset */
invokestatic java.lang.StringUTF16.newString:([BII)Ljava/lang/String;
areturn
end local 6 // int resultOffset
end local 5 // byte[] result
end local 4 // boolean localeDependent
end local 3 // java.util.Locale locale
end local 2 // int first
end local 1 // byte[] value
end local 0 // java.lang.String str
LocalVariableTable:
Start End Slot Name Signature
0 38 0 str Ljava/lang/String;
0 38 1 value [B
0 38 2 first I
0 38 3 locale Ljava/util/Locale;
0 38 4 localeDependent Z
1 38 5 result [B
2 38 6 resultOffset I
3 7 7 i I
8 37 7 i I
10 35 8 srcChar I
12 13 9 upperChar I
14 35 9 upperChar I
21 22 10 upperCharArray [C
23 24 10 upperCharArray [C
25 35 10 upperCharArray [C
26 35 11 mapLen I
28 30 12 result2 [B
31 35 12 x I
MethodParameters:
Name Flags
str
value
first
locale
localeDependent
public static java.lang.String trim(byte[]);
descriptor: ([B)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=1
start local 0 // byte[] value
0: .line 583
aload 0 /* value */
arraylength
istore 1 /* len */
start local 1 // int len
1: .line 584
iconst_0
istore 2 /* st */
start local 2 // int st
2: .line 585
goto 4
3: .line 586
StackMap locals: int int
StackMap stack:
iinc 2 /* st */ 1
4: .line 585
StackMap locals:
StackMap stack:
iload 2 /* st */
iload 1 /* len */
if_icmpge 7
aload 0 /* value */
iload 2 /* st */
baload
sipush 255
iand
bipush 32
if_icmple 3
5: .line 588
goto 7
6: .line 589
StackMap locals:
StackMap stack:
iinc 1 /* len */ -1
7: .line 588
StackMap locals:
StackMap stack:
iload 2 /* st */
iload 1 /* len */
if_icmpge 8
aload 0 /* value */
iload 1 /* len */
iconst_1
isub
baload
sipush 255
iand
bipush 32
if_icmple 6
8: .line 591
StackMap locals:
StackMap stack:
iload 2 /* st */
ifgt 9
iload 1 /* len */
aload 0 /* value */
arraylength
if_icmpge 10
9: .line 592
StackMap locals:
StackMap stack:
aload 0 /* value */
iload 2 /* st */
iload 1 /* len */
iload 2 /* st */
isub
invokestatic java.lang.StringLatin1.newString:([BII)Ljava/lang/String;
goto 11
StackMap locals:
StackMap stack:
10: aconst_null
11: .line 591
StackMap locals:
StackMap stack: java.lang.String
areturn
end local 2 // int st
end local 1 // int len
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 12 0 value [B
1 12 1 len I
2 12 2 st I
MethodParameters:
Name Flags
value
public static int indexOfNonWhitespace(byte[]);
descriptor: ([B)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=4, args_size=1
start local 0 // byte[] value
0: .line 596
aload 0 /* value */
arraylength
istore 1 /* length */
start local 1 // int length
1: .line 597
iconst_0
istore 2 /* left */
start local 2 // int left
2: .line 598
goto 7
3: .line 599
StackMap locals: int int
StackMap stack:
aload 0 /* value */
iload 2 /* left */
invokestatic java.lang.StringLatin1.getChar:([BI)C
istore 3 /* ch */
start local 3 // char ch
4: .line 600
iload 3 /* ch */
bipush 32
if_icmpeq 6
iload 3 /* ch */
bipush 9
if_icmpeq 6
getstatic java.lang.CharacterDataLatin1.instance:Ljava/lang/CharacterDataLatin1;
iload 3 /* ch */
invokevirtual java.lang.CharacterDataLatin1.isWhitespace:(I)Z
ifne 6
5: .line 601
goto 8
6: .line 603
StackMap locals: int
StackMap stack:
iinc 2 /* left */ 1
end local 3 // char ch
7: .line 598
StackMap locals:
StackMap stack:
iload 2 /* left */
iload 1 /* length */
if_icmplt 3
8: .line 605
StackMap locals:
StackMap stack:
iload 2 /* left */
ireturn
end local 2 // int left
end local 1 // int length
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 9 0 value [B
1 9 1 length I
2 9 2 left I
4 7 3 ch C
MethodParameters:
Name Flags
value
public static int lastIndexOfNonWhitespace(byte[]);
descriptor: ([B)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=4, args_size=1
start local 0 // byte[] value
0: .line 609
aload 0 /* value */
arraylength
istore 1 /* length */
start local 1 // int length
1: .line 610
iload 1 /* length */
istore 2 /* right */
start local 2 // int right
2: .line 611
goto 7
3: .line 612
StackMap locals: int int
StackMap stack:
aload 0 /* value */
iload 2 /* right */
iconst_1
isub
invokestatic java.lang.StringLatin1.getChar:([BI)C
istore 3 /* ch */
start local 3 // char ch
4: .line 613
iload 3 /* ch */
bipush 32
if_icmpeq 6
iload 3 /* ch */
bipush 9
if_icmpeq 6
getstatic java.lang.CharacterDataLatin1.instance:Ljava/lang/CharacterDataLatin1;
iload 3 /* ch */
invokevirtual java.lang.CharacterDataLatin1.isWhitespace:(I)Z
ifne 6
5: .line 614
goto 8
6: .line 616
StackMap locals: int
StackMap stack:
iinc 2 /* right */ -1
end local 3 // char ch
7: .line 611
StackMap locals:
StackMap stack:
iload 2 /* right */
ifgt 3
8: .line 618
StackMap locals:
StackMap stack:
iload 2 /* right */
ireturn
end local 2 // int right
end local 1 // int length
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 9 0 value [B
1 9 1 length I
2 9 2 right I
4 7 3 ch C
MethodParameters:
Name Flags
value
public static java.lang.String strip(byte[]);
descriptor: ([B)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=1
start local 0 // byte[] value
0: .line 622
aload 0 /* value */
invokestatic java.lang.StringLatin1.indexOfNonWhitespace:([B)I
istore 1 /* left */
start local 1 // int left
1: .line 623
iload 1 /* left */
aload 0 /* value */
arraylength
if_icmpne 3
2: .line 624
ldc ""
areturn
3: .line 626
StackMap locals: int
StackMap stack:
aload 0 /* value */
invokestatic java.lang.StringLatin1.lastIndexOfNonWhitespace:([B)I
istore 2 /* right */
start local 2 // int right
4: .line 627
iload 1 /* left */
ifgt 5
iload 2 /* right */
aload 0 /* value */
arraylength
if_icmplt 5
iconst_0
goto 6
StackMap locals: int
StackMap stack:
5: iconst_1
StackMap locals:
StackMap stack: int
6: istore 3 /* ifChanged */
start local 3 // boolean ifChanged
7: .line 628
iload 3 /* ifChanged */
ifeq 8
aload 0 /* value */
iload 1 /* left */
iload 2 /* right */
iload 1 /* left */
isub
invokestatic java.lang.StringLatin1.newString:([BII)Ljava/lang/String;
goto 9
StackMap locals: int
StackMap stack:
8: aconst_null
StackMap locals:
StackMap stack: java.lang.String
9: areturn
end local 3 // boolean ifChanged
end local 2 // int right
end local 1 // int left
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 10 0 value [B
1 10 1 left I
4 10 2 right I
7 10 3 ifChanged Z
MethodParameters:
Name Flags
value
public static java.lang.String stripLeading(byte[]);
descriptor: ([B)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 // byte[] value
0: .line 632
aload 0 /* value */
invokestatic java.lang.StringLatin1.indexOfNonWhitespace:([B)I
istore 1 /* left */
start local 1 // int left
1: .line 633
iload 1 /* left */
ifeq 2
aload 0 /* value */
iload 1 /* left */
aload 0 /* value */
arraylength
iload 1 /* left */
isub
invokestatic java.lang.StringLatin1.newString:([BII)Ljava/lang/String;
goto 3
StackMap locals: int
StackMap stack:
2: aconst_null
StackMap locals:
StackMap stack: java.lang.String
3: areturn
end local 1 // int left
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 4 0 value [B
1 4 1 left I
MethodParameters:
Name Flags
value
public static java.lang.String stripTrailing(byte[]);
descriptor: ([B)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 // byte[] value
0: .line 637
aload 0 /* value */
invokestatic java.lang.StringLatin1.lastIndexOfNonWhitespace:([B)I
istore 1 /* right */
start local 1 // int right
1: .line 638
iload 1 /* right */
aload 0 /* value */
arraylength
if_icmpeq 2
aload 0 /* value */
iconst_0
iload 1 /* right */
invokestatic java.lang.StringLatin1.newString:([BII)Ljava/lang/String;
goto 3
StackMap locals: int
StackMap stack:
2: aconst_null
StackMap locals:
StackMap stack: java.lang.String
3: areturn
end local 1 // int right
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 4 0 value [B
1 4 1 right I
MethodParameters:
Name Flags
value
static java.util.stream.Stream<java.lang.String> lines(byte[]);
descriptor: ([B)Ljava/util/stream/Stream;
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 // byte[] value
0: .line 732
aload 0 /* value */
invokestatic java.lang.StringLatin1$LinesSpliterator.spliterator:([B)Ljava/lang/StringLatin1$LinesSpliterator;
iconst_0
invokestatic java.util.stream.StreamSupport.stream:(Ljava/util/Spliterator;Z)Ljava/util/stream/Stream;
areturn
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 1 0 value [B
Signature: ([B)Ljava/util/stream/Stream<Ljava/lang/String;>;
MethodParameters:
Name Flags
value
public static void putChar(byte[], int, int);
descriptor: ([BII)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=3
start local 0 // byte[] val
start local 1 // int index
start local 2 // int c
0: .line 737
aload 0 /* val */
iload 1 /* index */
iload 2 /* c */
i2b
bastore
1: .line 738
return
end local 2 // int c
end local 1 // int index
end local 0 // byte[] val
LocalVariableTable:
Start End Slot Name Signature
0 2 0 val [B
0 2 1 index I
0 2 2 c I
MethodParameters:
Name Flags
val
index
c
public static char getChar(byte[], int);
descriptor: ([BI)C
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 // byte[] val
start local 1 // int index
0: .line 741
aload 0 /* val */
iload 1 /* index */
baload
sipush 255
iand
i2c
ireturn
end local 1 // int index
end local 0 // byte[] val
LocalVariableTable:
Start End Slot Name Signature
0 1 0 val [B
0 1 1 index I
MethodParameters:
Name Flags
val
index
public static byte[] toBytes(int[], int, int);
descriptor: ([III)[B
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=6, args_size=3
start local 0 // int[] val
start local 1 // int off
start local 2 // int len
0: .line 745
iload 2 /* len */
newarray 8
astore 3 /* ret */
start local 3 // byte[] ret
1: .line 746
iconst_0
istore 4 /* i */
start local 4 // int i
2: goto 8
3: .line 747
StackMap locals: byte[] int
StackMap stack:
aload 0 /* val */
iload 1 /* off */
iinc 1 /* off */ 1
iaload
istore 5 /* cp */
start local 5 // int cp
4: .line 748
iload 5 /* cp */
invokestatic java.lang.StringLatin1.canEncode:(I)Z
ifne 6
5: .line 749
aconst_null
areturn
6: .line 751
StackMap locals: int
StackMap stack:
aload 3 /* ret */
iload 4 /* i */
iload 5 /* cp */
i2b
bastore
end local 5 // int cp
7: .line 746
iinc 4 /* i */ 1
StackMap locals:
StackMap stack:
8: iload 4 /* i */
iload 2 /* len */
if_icmplt 3
end local 4 // int i
9: .line 753
aload 3 /* ret */
areturn
end local 3 // byte[] ret
end local 2 // int len
end local 1 // int off
end local 0 // int[] val
LocalVariableTable:
Start End Slot Name Signature
0 10 0 val [I
0 10 1 off I
0 10 2 len I
1 10 3 ret [B
2 9 4 i I
4 7 5 cp I
MethodParameters:
Name Flags
val
off
len
public static byte[] toBytes(char);
descriptor: (C)[B
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=1, args_size=1
start local 0 // char c
0: .line 757
iconst_1
newarray 8
dup
iconst_0
iload 0 /* c */
i2b
bastore
areturn
end local 0 // char c
LocalVariableTable:
Start End Slot Name Signature
0 1 0 c C
MethodParameters:
Name Flags
c
public static java.lang.String newString(byte[], int, int);
descriptor: ([BII)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=3, args_size=3
start local 0 // byte[] val
start local 1 // int index
start local 2 // int len
0: .line 761
iload 2 /* len */
ifne 2
1: .line 762
ldc ""
areturn
2: .line 764
StackMap locals:
StackMap stack:
new java.lang.String
dup
aload 0 /* val */
iload 1 /* index */
iload 1 /* index */
iload 2 /* len */
iadd
invokestatic java.util.Arrays.copyOfRange:([BII)[B
3: .line 765
iconst_0
4: .line 764
invokespecial java.lang.String.<init>:([BB)V
areturn
end local 2 // int len
end local 1 // int index
end local 0 // byte[] val
LocalVariableTable:
Start End Slot Name Signature
0 5 0 val [B
0 5 1 index I
0 5 2 len I
MethodParameters:
Name Flags
val
index
len
public static void fillNull(byte[], int, int);
descriptor: ([BII)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=3
start local 0 // byte[] val
start local 1 // int index
start local 2 // int end
0: .line 769
aload 0 /* val */
iload 1 /* index */
iload 2 /* end */
iconst_0
invokestatic java.util.Arrays.fill:([BIIB)V
1: .line 770
return
end local 2 // int end
end local 1 // int index
end local 0 // byte[] val
LocalVariableTable:
Start End Slot Name Signature
0 2 0 val [B
0 2 1 index I
0 2 2 end I
MethodParameters:
Name Flags
val
index
end
public static void inflate(byte[], int, char[], int, int);
descriptor: ([BI[CII)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=6, args_size=5
start local 0 // byte[] src
start local 1 // int srcOff
start local 2 // char[] dst
start local 3 // int dstOff
start local 4 // int len
0: .line 775
iconst_0
istore 5 /* i */
start local 5 // int i
1: goto 4
2: .line 776
StackMap locals: int
StackMap stack:
aload 2 /* dst */
iload 3 /* dstOff */
iinc 3 /* dstOff */ 1
aload 0 /* src */
iload 1 /* srcOff */
iinc 1 /* srcOff */ 1
baload
sipush 255
iand
i2c
castore
3: .line 775
iinc 5 /* i */ 1
StackMap locals:
StackMap stack:
4: iload 5 /* i */
iload 4 /* len */
if_icmplt 2
end local 5 // int i
5: .line 778
return
end local 4 // int len
end local 3 // int dstOff
end local 2 // char[] dst
end local 1 // int srcOff
end local 0 // byte[] src
LocalVariableTable:
Start End Slot Name Signature
0 6 0 src [B
0 6 1 srcOff I
0 6 2 dst [C
0 6 3 dstOff I
0 6 4 len I
1 5 5 i I
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
src
srcOff
dst
dstOff
len
public static void inflate(byte[], int, byte[], int, int);
descriptor: ([BI[BII)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=5, args_size=5
start local 0 // byte[] src
start local 1 // int srcOff
start local 2 // byte[] dst
start local 3 // int dstOff
start local 4 // int len
0: .line 783
aload 0 /* src */
iload 1 /* srcOff */
aload 2 /* dst */
iload 3 /* dstOff */
iload 4 /* len */
invokestatic java.lang.StringUTF16.inflate:([BI[BII)V
1: .line 784
return
end local 4 // int len
end local 3 // int dstOff
end local 2 // byte[] dst
end local 1 // int srcOff
end local 0 // byte[] src
LocalVariableTable:
Start End Slot Name Signature
0 2 0 src [B
0 2 1 srcOff I
0 2 2 dst [B
0 2 3 dstOff I
0 2 4 len I
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
src
srcOff
dst
dstOff
len
}
SourceFile: "StringLatin1.java"
NestMembers:
java.lang.StringLatin1$CharsSpliterator java.lang.StringLatin1$LinesSpliterator
InnerClasses:
CharsSpliterator = java.lang.StringLatin1$CharsSpliterator of java.lang.StringLatin1
private final LinesSpliterator = java.lang.StringLatin1$LinesSpliterator of java.lang.StringLatin1