final class java.lang.StringUTF16
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: java.lang.StringUTF16
super_class: java.lang.Object
{
static final int HI_BYTE_SHIFT;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
static final int LO_BYTE_SHIFT;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
static final int MAX_LENGTH;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 1073741823
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 42
ldc Ljava/lang/StringUTF16;
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.StringUTF16.$assertionsDisabled:Z
3: .line 1356
invokestatic java.lang.StringUTF16.isBigEndian:()Z
ifeq 7
4: .line 1357
bipush 8
putstatic java.lang.StringUTF16.HI_BYTE_SHIFT:I
5: .line 1358
iconst_0
putstatic java.lang.StringUTF16.LO_BYTE_SHIFT:I
6: .line 1359
goto 9
7: .line 1360
StackMap locals:
StackMap stack:
iconst_0
putstatic java.lang.StringUTF16.HI_BYTE_SHIFT:I
8: .line 1361
bipush 8
putstatic java.lang.StringUTF16.LO_BYTE_SHIFT:I
9: .line 1365
StackMap locals:
StackMap stack:
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.StringUTF16 this
0: .line 42
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // java.lang.StringUTF16 this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/lang/StringUTF16;
public static byte[] newBytesFor(int);
descriptor: (I)[B
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=1, args_size=1
start local 0 // int len
0: .line 45
iload 0 /* len */
ifge 2
1: .line 46
new java.lang.NegativeArraySizeException
dup
invokespecial java.lang.NegativeArraySizeException.<init>:()V
athrow
2: .line 48
StackMap locals:
StackMap stack:
iload 0 /* len */
ldc 1073741823
if_icmple 6
3: .line 49
new java.lang.OutOfMemoryError
dup
new java.lang.StringBuilder
dup
ldc "UTF16 String size is "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 0 /* len */
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
4: .line 50
ldc ", should be less than "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc 1073741823
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
5: .line 49
invokespecial java.lang.OutOfMemoryError.<init>:(Ljava/lang/String;)V
athrow
6: .line 52
StackMap locals:
StackMap stack:
iload 0 /* len */
iconst_1
ishl
newarray 8
areturn
end local 0 // int len
LocalVariableTable:
Start End Slot Name Signature
0 7 0 len I
MethodParameters:
Name Flags
len
static void putChar(byte[], int, int);
descriptor: ([BII)V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=3, args_size=3
start local 0 // byte[] val
start local 1 // int index
start local 2 // int c
0: .line 58
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 2
iload 1 /* index */
iflt 1
iload 1 /* index */
aload 0 /* val */
invokestatic java.lang.StringUTF16.length:([B)I
if_icmplt 2
StackMap locals:
StackMap stack:
1: new java.lang.AssertionError
dup
ldc "Trusted caller missed bounds check"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
2: .line 59
StackMap locals:
StackMap stack:
iload 1 /* index */
iconst_1
ishl
istore 1 /* index */
3: .line 60
aload 0 /* val */
iload 1 /* index */
iinc 1 /* index */ 1
iload 2 /* c */
getstatic java.lang.StringUTF16.HI_BYTE_SHIFT:I
ishr
i2b
bastore
4: .line 61
aload 0 /* val */
iload 1 /* index */
iload 2 /* c */
getstatic java.lang.StringUTF16.LO_BYTE_SHIFT:I
ishr
i2b
bastore
5: .line 62
return
end local 2 // int c
end local 1 // int index
end local 0 // byte[] val
LocalVariableTable:
Start End Slot Name Signature
0 6 0 val [B
0 6 1 index I
0 6 2 c I
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
val
index
c
static char getChar(byte[], int);
descriptor: ([BI)C
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 // byte[] val
start local 1 // int index
0: .line 67
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 2
iload 1 /* index */
iflt 1
iload 1 /* index */
aload 0 /* val */
invokestatic java.lang.StringUTF16.length:([B)I
if_icmplt 2
StackMap locals:
StackMap stack:
1: new java.lang.AssertionError
dup
ldc "Trusted caller missed bounds check"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
2: .line 68
StackMap locals:
StackMap stack:
iload 1 /* index */
iconst_1
ishl
istore 1 /* index */
3: .line 69
aload 0 /* val */
iload 1 /* index */
iinc 1 /* index */ 1
baload
sipush 255
iand
getstatic java.lang.StringUTF16.HI_BYTE_SHIFT:I
ishl
4: .line 70
aload 0 /* val */
iload 1 /* index */
baload
sipush 255
iand
getstatic java.lang.StringUTF16.LO_BYTE_SHIFT:I
ishl
5: .line 69
ior
i2c
ireturn
end local 1 // int index
end local 0 // byte[] val
LocalVariableTable:
Start End Slot Name Signature
0 6 0 val [B
0 6 1 index I
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
val
index
public static int length(byte[]);
descriptor: ([B)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 // byte[] value
0: .line 74
aload 0 /* value */
arraylength
iconst_1
ishr
ireturn
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 1 0 value [B
MethodParameters:
Name Flags
value
private static int codePointAt(byte[], int, int, boolean);
descriptor: ([BIIZ)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=6, args_size=4
start local 0 // byte[] value
start local 1 // int index
start local 2 // int end
start local 3 // boolean checked
0: .line 78
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 1
iload 1 /* index */
iload 2 /* end */
if_icmplt 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: .line 79
StackMap locals:
StackMap stack:
iload 3 /* checked */
ifeq 3
2: .line 80
iload 1 /* index */
aload 0 /* value */
invokestatic java.lang.StringUTF16.checkIndex:(I[B)V
3: .line 82
StackMap locals:
StackMap stack:
aload 0 /* value */
iload 1 /* index */
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 4 /* c1 */
start local 4 // char c1
4: .line 83
iload 4 /* c1 */
invokestatic java.lang.Character.isHighSurrogate:(C)Z
ifeq 10
iinc 1 /* index */ 1
iload 1 /* index */
iload 2 /* end */
if_icmpge 10
5: .line 84
iload 3 /* checked */
ifeq 7
6: .line 85
iload 1 /* index */
aload 0 /* value */
invokestatic java.lang.StringUTF16.checkIndex:(I[B)V
7: .line 87
StackMap locals: int
StackMap stack:
aload 0 /* value */
iload 1 /* index */
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 5 /* c2 */
start local 5 // char c2
8: .line 88
iload 5 /* c2 */
invokestatic java.lang.Character.isLowSurrogate:(C)Z
ifeq 10
9: .line 89
iload 4 /* c1 */
iload 5 /* c2 */
invokestatic java.lang.Character.toCodePoint:(CC)I
ireturn
end local 5 // char c2
10: .line 92
StackMap locals:
StackMap stack:
iload 4 /* c1 */
ireturn
end local 4 // char c1
end local 3 // boolean checked
end local 2 // int end
end local 1 // int index
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 11 0 value [B
0 11 1 index I
0 11 2 end I
0 11 3 checked Z
4 11 4 c1 C
8 10 5 c2 C
MethodParameters:
Name Flags
value
index
end
checked
public static int codePointAt(byte[], int, int);
descriptor: ([BII)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=3
start local 0 // byte[] value
start local 1 // int index
start local 2 // int end
0: .line 96
aload 0 /* value */
iload 1 /* index */
iload 2 /* end */
iconst_0
invokestatic java.lang.StringUTF16.codePointAt:([BIIZ)I
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
private static int codePointBefore(byte[], int, boolean);
descriptor: ([BIZ)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=5, args_size=3
start local 0 // byte[] value
start local 1 // int index
start local 2 // boolean checked
0: .line 100
iinc 1 /* index */ -1
1: .line 101
iload 2 /* checked */
ifeq 3
2: .line 102
iload 1 /* index */
aload 0 /* value */
invokestatic java.lang.StringUTF16.checkIndex:(I[B)V
3: .line 104
StackMap locals:
StackMap stack:
aload 0 /* value */
iload 1 /* index */
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 3 /* c2 */
start local 3 // char c2
4: .line 105
iload 3 /* c2 */
invokestatic java.lang.Character.isLowSurrogate:(C)Z
ifeq 11
iload 1 /* index */
ifle 11
5: .line 106
iinc 1 /* index */ -1
6: .line 107
iload 2 /* checked */
ifeq 8
7: .line 108
iload 1 /* index */
aload 0 /* value */
invokestatic java.lang.StringUTF16.checkIndex:(I[B)V
8: .line 110
StackMap locals: int
StackMap stack:
aload 0 /* value */
iload 1 /* index */
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 4 /* c1 */
start local 4 // char c1
9: .line 111
iload 4 /* c1 */
invokestatic java.lang.Character.isHighSurrogate:(C)Z
ifeq 11
10: .line 112
iload 4 /* c1 */
iload 3 /* c2 */
invokestatic java.lang.Character.toCodePoint:(CC)I
ireturn
end local 4 // char c1
11: .line 115
StackMap locals:
StackMap stack:
iload 3 /* c2 */
ireturn
end local 3 // char c2
end local 2 // boolean checked
end local 1 // int index
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 12 0 value [B
0 12 1 index I
0 12 2 checked Z
4 12 3 c2 C
9 11 4 c1 C
MethodParameters:
Name Flags
value
index
checked
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 119
aload 0 /* value */
iload 1 /* index */
iconst_0
invokestatic java.lang.StringUTF16.codePointBefore:([BIZ)I
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
private static int codePointCount(byte[], int, int, boolean);
descriptor: ([BIIZ)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=6, args_size=4
start local 0 // byte[] value
start local 1 // int beginIndex
start local 2 // int endIndex
start local 3 // boolean checked
0: .line 123
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 1
iload 1 /* beginIndex */
iload 2 /* endIndex */
if_icmple 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: .line 124
StackMap locals:
StackMap stack:
iload 2 /* endIndex */
iload 1 /* beginIndex */
isub
istore 4 /* count */
start local 4 // int count
2: .line 125
iload 1 /* beginIndex */
istore 5 /* i */
start local 5 // int i
3: .line 126
iload 3 /* checked */
ifeq 10
iload 5 /* i */
iload 2 /* endIndex */
if_icmpge 10
4: .line 127
iload 5 /* i */
iload 2 /* endIndex */
aload 0 /* value */
invokestatic java.lang.StringUTF16.checkBoundsBeginEnd:(II[B)V
5: .line 129
goto 10
6: .line 130
StackMap locals: int int
StackMap stack:
aload 0 /* value */
iload 5 /* i */
iinc 5 /* i */ 1
invokestatic java.lang.StringUTF16.getChar:([BI)C
invokestatic java.lang.Character.isHighSurrogate:(C)Z
ifeq 10
7: .line 131
aload 0 /* value */
iload 5 /* i */
invokestatic java.lang.StringUTF16.getChar:([BI)C
invokestatic java.lang.Character.isLowSurrogate:(C)Z
ifeq 10
8: .line 132
iinc 4 /* count */ -1
9: .line 133
iinc 5 /* i */ 1
10: .line 129
StackMap locals:
StackMap stack:
iload 5 /* i */
iload 2 /* endIndex */
iconst_1
isub
if_icmplt 6
11: .line 136
iload 4 /* count */
ireturn
end local 5 // int i
end local 4 // int count
end local 3 // boolean checked
end local 2 // int endIndex
end local 1 // int beginIndex
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 12 0 value [B
0 12 1 beginIndex I
0 12 2 endIndex I
0 12 3 checked Z
2 12 4 count I
3 12 5 i I
MethodParameters:
Name Flags
value
beginIndex
endIndex
checked
public static int codePointCount(byte[], int, int);
descriptor: ([BII)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=3
start local 0 // byte[] value
start local 1 // int beginIndex
start local 2 // int endIndex
0: .line 140
aload 0 /* value */
iload 1 /* beginIndex */
iload 2 /* endIndex */
iconst_0
invokestatic java.lang.StringUTF16.codePointCount:([BIIZ)I
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 144
aload 0 /* value */
arraylength
iconst_1
ishr
newarray 5
astore 1 /* dst */
start local 1 // char[] dst
1: .line 145
aload 0 /* value */
iconst_0
aload 1 /* dst */
arraylength
aload 1 /* dst */
iconst_0
invokestatic java.lang.StringUTF16.getChars:([BII[CI)V
2: .line 146
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[] toBytes(char[], int, int);
descriptor: ([CII)[B
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=5, args_size=3
start local 0 // char[] value
start local 1 // int off
start local 2 // int len
0: .line 151
iload 2 /* len */
invokestatic java.lang.StringUTF16.newBytesFor:(I)[B
astore 3 /* val */
start local 3 // byte[] val
1: .line 152
iconst_0
istore 4 /* i */
start local 4 // int i
2: goto 6
3: .line 153
StackMap locals: byte[] int
StackMap stack:
aload 3 /* val */
iload 4 /* i */
aload 0 /* value */
iload 1 /* off */
caload
invokestatic java.lang.StringUTF16.putChar:([BII)V
4: .line 154
iinc 1 /* off */ 1
5: .line 152
iinc 4 /* i */ 1
StackMap locals:
StackMap stack:
6: iload 4 /* i */
iload 2 /* len */
if_icmplt 3
end local 4 // int i
7: .line 156
aload 3 /* val */
areturn
end local 3 // byte[] val
end local 2 // int len
end local 1 // int off
end local 0 // char[] value
LocalVariableTable:
Start End Slot Name Signature
0 8 0 value [C
0 8 1 off I
0 8 2 len I
1 8 3 val [B
2 7 4 i I
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
value
off
len
public static byte[] compress(char[], int, int);
descriptor: ([CII)[B
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=4, args_size=3
start local 0 // char[] val
start local 1 // int off
start local 2 // int len
0: .line 160
iload 2 /* len */
newarray 8
astore 3 /* ret */
start local 3 // byte[] ret
1: .line 161
aload 0 /* val */
iload 1 /* off */
aload 3 /* ret */
iconst_0
iload 2 /* len */
invokestatic java.lang.StringUTF16.compress:([CI[BII)I
iload 2 /* len */
if_icmpne 3
2: .line 162
aload 3 /* ret */
areturn
3: .line 164
StackMap locals: byte[]
StackMap stack:
aconst_null
areturn
end local 3 // byte[] ret
end local 2 // int len
end local 1 // int off
end local 0 // char[] val
LocalVariableTable:
Start End Slot Name Signature
0 4 0 val [C
0 4 1 off I
0 4 2 len I
1 4 3 ret [B
MethodParameters:
Name Flags
val
off
len
public static byte[] compress(byte[], int, int);
descriptor: ([BII)[B
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=4, args_size=3
start local 0 // byte[] val
start local 1 // int off
start local 2 // int len
0: .line 168
iload 2 /* len */
newarray 8
astore 3 /* ret */
start local 3 // byte[] ret
1: .line 169
aload 0 /* val */
iload 1 /* off */
aload 3 /* ret */
iconst_0
iload 2 /* len */
invokestatic java.lang.StringUTF16.compress:([BI[BII)I
iload 2 /* len */
if_icmpne 3
2: .line 170
aload 3 /* ret */
areturn
3: .line 172
StackMap locals: byte[]
StackMap stack:
aconst_null
areturn
end local 3 // byte[] ret
end local 2 // int len
end local 1 // int off
end local 0 // byte[] val
LocalVariableTable:
Start End Slot Name Signature
0 4 0 val [B
0 4 1 off I
0 4 2 len I
1 4 3 ret [B
MethodParameters:
Name Flags
val
off
len
public static int compress(char[], int, byte[], int, int);
descriptor: ([CI[BII)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=7, args_size=5
start local 0 // char[] src
start local 1 // int srcOff
start local 2 // byte[] dst
start local 3 // int dstOff
start local 4 // int len
0: .line 178
iconst_0
istore 5 /* i */
start local 5 // int i
1: goto 10
2: .line 179
StackMap locals: int
StackMap stack:
aload 0 /* src */
iload 1 /* srcOff */
caload
istore 6 /* c */
start local 6 // char c
3: .line 180
iload 6 /* c */
sipush 255
if_icmple 6
4: .line 181
iconst_0
istore 4 /* len */
5: .line 182
goto 11
6: .line 184
StackMap locals: int
StackMap stack:
aload 2 /* dst */
iload 3 /* dstOff */
iload 6 /* c */
i2b
bastore
7: .line 185
iinc 1 /* srcOff */ 1
8: .line 186
iinc 3 /* dstOff */ 1
end local 6 // char c
9: .line 178
iinc 5 /* i */ 1
StackMap locals:
StackMap stack:
10: iload 5 /* i */
iload 4 /* len */
if_icmplt 2
end local 5 // int i
11: .line 188
StackMap locals:
StackMap stack:
iload 4 /* len */
ireturn
end local 4 // int len
end local 3 // int dstOff
end local 2 // byte[] dst
end local 1 // int srcOff
end local 0 // char[] src
LocalVariableTable:
Start End Slot Name Signature
0 12 0 src [C
0 12 1 srcOff I
0 12 2 dst [B
0 12 3 dstOff I
0 12 4 len I
1 11 5 i I
3 9 6 c C
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
src
srcOff
dst
dstOff
len
public static int compress(byte[], int, byte[], int, int);
descriptor: ([BI[BII)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=7, 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 195
iload 1 /* srcOff */
iload 4 /* len */
aload 0 /* src */
invokestatic java.lang.StringUTF16.checkBoundsOffCount:(II[B)V
1: .line 196
iconst_0
istore 5 /* i */
start local 5 // int i
2: goto 11
3: .line 197
StackMap locals: int
StackMap stack:
aload 0 /* src */
iload 1 /* srcOff */
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 6 /* c */
start local 6 // char c
4: .line 198
iload 6 /* c */
sipush 255
if_icmple 7
5: .line 199
iconst_0
istore 4 /* len */
6: .line 200
goto 12
7: .line 202
StackMap locals: int
StackMap stack:
aload 2 /* dst */
iload 3 /* dstOff */
iload 6 /* c */
i2b
bastore
8: .line 203
iinc 1 /* srcOff */ 1
9: .line 204
iinc 3 /* dstOff */ 1
end local 6 // char c
10: .line 196
iinc 5 /* i */ 1
StackMap locals:
StackMap stack:
11: iload 5 /* i */
iload 4 /* len */
if_icmplt 3
end local 5 // int i
12: .line 206
StackMap locals:
StackMap stack:
iload 4 /* len */
ireturn
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 13 0 src [B
0 13 1 srcOff I
0 13 2 dst [B
0 13 3 dstOff I
0 13 4 len I
2 12 5 i I
4 10 6 c C
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
src
srcOff
dst
dstOff
len
public static byte[] toBytes(int[], int, int);
descriptor: ([III)[B
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=9, args_size=3
start local 0 // int[] val
start local 1 // int index
start local 2 // int len
0: .line 210
iload 1 /* index */
iload 2 /* len */
iadd
istore 3 /* end */
start local 3 // int end
1: .line 212
iload 2 /* len */
istore 4 /* n */
start local 4 // int n
2: .line 213
iload 1 /* index */
istore 5 /* i */
start local 5 // int i
3: goto 11
4: .line 214
StackMap locals: int int int
StackMap stack:
aload 0 /* val */
iload 5 /* i */
iaload
istore 6 /* cp */
start local 6 // int cp
5: .line 215
iload 6 /* cp */
invokestatic java.lang.Character.isBmpCodePoint:(I)Z
ifeq 7
6: .line 216
goto 10
7: .line 217
StackMap locals: int
StackMap stack:
iload 6 /* cp */
invokestatic java.lang.Character.isValidCodePoint:(I)Z
ifeq 9
8: .line 218
iinc 4 /* n */ 1
goto 10
9: .line 219
StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
iload 6 /* cp */
invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 6 // int cp
10: .line 213
StackMap locals:
StackMap stack:
iinc 5 /* i */ 1
StackMap locals:
StackMap stack:
11: iload 5 /* i */
iload 3 /* end */
if_icmplt 4
end local 5 // int i
12: .line 222
iload 4 /* n */
invokestatic java.lang.StringUTF16.newBytesFor:(I)[B
astore 5 /* buf */
start local 5 // byte[] buf
13: .line 223
iload 1 /* index */
istore 6 /* i */
start local 6 // int i
14: iconst_0
istore 7 /* j */
start local 7 // int j
15: goto 23
16: .line 224
StackMap locals: int[] int int int int byte[] int int
StackMap stack:
aload 0 /* val */
iload 6 /* i */
iaload
istore 8 /* cp */
start local 8 // int cp
17: .line 225
iload 8 /* cp */
invokestatic java.lang.Character.isBmpCodePoint:(I)Z
ifeq 20
18: .line 226
aload 5 /* buf */
iload 7 /* j */
iload 8 /* cp */
invokestatic java.lang.StringUTF16.putChar:([BII)V
19: .line 227
goto 22
20: .line 228
StackMap locals: int
StackMap stack:
aload 5 /* buf */
iload 7 /* j */
iinc 7 /* j */ 1
iload 8 /* cp */
invokestatic java.lang.Character.highSurrogate:(I)C
invokestatic java.lang.StringUTF16.putChar:([BII)V
21: .line 229
aload 5 /* buf */
iload 7 /* j */
iload 8 /* cp */
invokestatic java.lang.Character.lowSurrogate:(I)C
invokestatic java.lang.StringUTF16.putChar:([BII)V
end local 8 // int cp
22: .line 223
StackMap locals:
StackMap stack:
iinc 6 /* i */ 1
iinc 7 /* j */ 1
StackMap locals:
StackMap stack:
23: iload 6 /* i */
iload 3 /* end */
if_icmplt 16
end local 7 // int j
end local 6 // int i
24: .line 232
aload 5 /* buf */
areturn
end local 5 // byte[] buf
end local 4 // int n
end local 3 // int end
end local 2 // int len
end local 1 // int index
end local 0 // int[] val
LocalVariableTable:
Start End Slot Name Signature
0 25 0 val [I
0 25 1 index I
0 25 2 len I
1 25 3 end I
2 25 4 n I
3 12 5 i I
5 10 6 cp I
13 25 5 buf [B
14 24 6 i I
15 24 7 j I
17 22 8 cp I
MethodParameters:
Name Flags
val
index
len
public static byte[] toBytes(char);
descriptor: (C)[B
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 // char c
0: .line 236
iconst_2
newarray 8
astore 1 /* result */
start local 1 // byte[] result
1: .line 237
aload 1 /* result */
iconst_0
iload 0 /* c */
invokestatic java.lang.StringUTF16.putChar:([BII)V
2: .line 238
aload 1 /* result */
areturn
end local 1 // byte[] result
end local 0 // char c
LocalVariableTable:
Start End Slot Name Signature
0 3 0 c C
1 3 1 result [B
MethodParameters:
Name Flags
c
static byte[] toBytesSupplementary(int);
descriptor: (I)[B
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 // int cp
0: .line 242
iconst_4
newarray 8
astore 1 /* result */
start local 1 // byte[] result
1: .line 243
aload 1 /* result */
iconst_0
iload 0 /* cp */
invokestatic java.lang.Character.highSurrogate:(I)C
invokestatic java.lang.StringUTF16.putChar:([BII)V
2: .line 244
aload 1 /* result */
iconst_1
iload 0 /* cp */
invokestatic java.lang.Character.lowSurrogate:(I)C
invokestatic java.lang.StringUTF16.putChar:([BII)V
3: .line 245
aload 1 /* result */
areturn
end local 1 // byte[] result
end local 0 // int cp
LocalVariableTable:
Start End Slot Name Signature
0 4 0 cp I
1 4 1 result [B
MethodParameters:
Name Flags
cp
public static void getChars(byte[], int, int, char[], int);
descriptor: ([BII[CI)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=6, 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 251
iload 1 /* srcBegin */
iload 2 /* srcEnd */
if_icmpge 2
1: .line 252
iload 1 /* srcBegin */
iload 2 /* srcEnd */
iload 1 /* srcBegin */
isub
aload 0 /* value */
invokestatic java.lang.StringUTF16.checkBoundsOffCount:(II[B)V
2: .line 254
StackMap locals:
StackMap stack:
iload 1 /* srcBegin */
istore 5 /* i */
start local 5 // int i
3: goto 6
4: .line 255
StackMap locals: int
StackMap stack:
aload 3 /* dst */
iload 4 /* dstBegin */
iinc 4 /* dstBegin */ 1
aload 0 /* value */
iload 5 /* i */
invokestatic java.lang.StringUTF16.getChar:([BI)C
castore
5: .line 254
iinc 5 /* i */ 1
StackMap locals:
StackMap stack:
6: iload 5 /* i */
iload 2 /* srcEnd */
if_icmplt 4
end local 5 // int i
7: .line 257
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 8 0 value [B
0 8 1 srcBegin I
0 8 2 srcEnd I
0 8 3 dst [C
0 8 4 dstBegin I
3 7 5 i I
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
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=4, locals=6, 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 261
iload 1 /* srcBegin */
iconst_1
ishl
istore 1 /* srcBegin */
1: .line 262
iload 2 /* srcEnd */
iconst_1
ishl
istore 2 /* srcEnd */
2: .line 263
iload 1 /* srcBegin */
iconst_1
getstatic java.lang.StringUTF16.LO_BYTE_SHIFT:I
ishr
iadd
istore 5 /* i */
start local 5 // int i
3: goto 6
4: .line 264
StackMap locals: int
StackMap stack:
aload 3 /* dst */
iload 4 /* dstBegin */
iinc 4 /* dstBegin */ 1
aload 0 /* value */
iload 5 /* i */
baload
bastore
5: .line 263
iinc 5 /* i */ 2
StackMap locals:
StackMap stack:
6: iload 5 /* i */
iload 2 /* srcEnd */
if_icmplt 4
end local 5 // int i
7: .line 266
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 8 0 value [B
0 8 1 srcBegin I
0 8 2 srcEnd I
0 8 3 dst [B
0 8 4 dstBegin I
3 7 5 i 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=4, args_size=2
start local 0 // byte[] value
start local 1 // byte[] other
0: .line 270
aload 0 /* value */
arraylength
aload 1 /* other */
arraylength
if_icmpne 9
1: .line 271
aload 0 /* value */
arraylength
iconst_1
ishr
istore 2 /* len */
start local 2 // int len
2: .line 272
iconst_0
istore 3 /* i */
start local 3 // int i
3: goto 7
4: .line 273
StackMap locals: int int
StackMap stack:
aload 0 /* value */
iload 3 /* i */
invokestatic java.lang.StringUTF16.getChar:([BI)C
aload 1 /* other */
iload 3 /* i */
invokestatic java.lang.StringUTF16.getChar:([BI)C
if_icmpeq 6
5: .line 274
iconst_0
ireturn
6: .line 272
StackMap locals:
StackMap stack:
iinc 3 /* i */ 1
StackMap locals:
StackMap stack:
7: iload 3 /* i */
iload 2 /* len */
if_icmplt 4
end local 3 // int i
8: .line 277
iconst_1
ireturn
end local 2 // int len
9: .line 279
StackMap locals:
StackMap stack:
iconst_0
ireturn
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
2 9 2 len I
3 8 3 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 284
aload 0 /* value */
invokestatic java.lang.StringUTF16.length:([B)I
istore 2 /* len1 */
start local 2 // int len1
1: .line 285
aload 1 /* other */
invokestatic java.lang.StringUTF16.length:([B)I
istore 3 /* len2 */
start local 3 // int len2
2: .line 286
aload 0 /* value */
aload 1 /* other */
iload 2 /* len1 */
iload 3 /* len2 */
invokestatic java.lang.StringUTF16.compareValues:([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=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 293
iload 2 /* len1 */
aload 0 /* value */
invokestatic java.lang.StringUTF16.checkOffset:(I[B)V
1: .line 294
iload 3 /* len2 */
aload 1 /* other */
invokestatic java.lang.StringUTF16.checkOffset:(I[B)V
2: .line 296
aload 0 /* value */
aload 1 /* other */
iload 2 /* len1 */
iload 3 /* len2 */
invokestatic java.lang.StringUTF16.compareValues:([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 compareValues(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 300
iload 2 /* len1 */
iload 3 /* len2 */
invokestatic java.lang.Math.min:(II)I
istore 4 /* lim */
start local 4 // int lim
1: .line 301
iconst_0
istore 5 /* k */
start local 5 // int k
2: goto 8
3: .line 302
StackMap locals: int int
StackMap stack:
aload 0 /* value */
iload 5 /* k */
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 6 /* c1 */
start local 6 // char c1
4: .line 303
aload 1 /* other */
iload 5 /* k */
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 7 /* c2 */
start local 7 // char c2
5: .line 304
iload 6 /* c1 */
iload 7 /* c2 */
if_icmpeq 7
6: .line 305
iload 6 /* c1 */
iload 7 /* c2 */
isub
ireturn
end local 7 // char c2
end local 6 // char c1
7: .line 301
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 308
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 compareToLatin1(byte[], byte[]);
descriptor: ([B[B)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 // byte[] value
start local 1 // byte[] other
0: .line 313
aload 1 /* other */
aload 0 /* value */
invokestatic java.lang.StringLatin1.compareToUTF16:([B[B)I
ineg
ireturn
end local 1 // byte[] other
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 1 0 value [B
0 1 1 other [B
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
value
other
public static int compareToLatin1(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 317
aload 1 /* other */
aload 0 /* value */
iload 3 /* len2 */
iload 2 /* len1 */
invokestatic java.lang.StringLatin1.compareToUTF16:([B[BII)I
ineg
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 1 0 value [B
0 1 1 other [B
0 1 2 len1 I
0 1 3 len2 I
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=2, locals=8, args_size=2
start local 0 // byte[] value
start local 1 // byte[] other
0: .line 321
aload 0 /* value */
invokestatic java.lang.StringUTF16.length:([B)I
istore 2 /* len1 */
start local 2 // int len1
1: .line 322
aload 1 /* other */
invokestatic java.lang.StringUTF16.length:([B)I
istore 3 /* len2 */
start local 3 // int len2
2: .line 323
iload 2 /* len1 */
iload 3 /* len2 */
invokestatic java.lang.Math.min:(II)I
istore 4 /* lim */
start local 4 // int lim
3: .line 324
iconst_0
istore 5 /* k */
start local 5 // int k
4: goto 16
5: .line 325
StackMap locals: byte[] byte[] int int int int
StackMap stack:
aload 0 /* value */
iload 5 /* k */
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 6 /* c1 */
start local 6 // char c1
6: .line 326
aload 1 /* other */
iload 5 /* k */
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 7 /* c2 */
start local 7 // char c2
7: .line 327
iload 6 /* c1 */
iload 7 /* c2 */
if_icmpeq 15
8: .line 328
iload 6 /* c1 */
invokestatic java.lang.Character.toUpperCase:(C)C
istore 6 /* c1 */
9: .line 329
iload 7 /* c2 */
invokestatic java.lang.Character.toUpperCase:(C)C
istore 7 /* c2 */
10: .line 330
iload 6 /* c1 */
iload 7 /* c2 */
if_icmpeq 15
11: .line 331
iload 6 /* c1 */
invokestatic java.lang.Character.toLowerCase:(C)C
istore 6 /* c1 */
12: .line 332
iload 7 /* c2 */
invokestatic java.lang.Character.toLowerCase:(C)C
istore 7 /* c2 */
13: .line 333
iload 6 /* c1 */
iload 7 /* c2 */
if_icmpeq 15
14: .line 334
iload 6 /* c1 */
iload 7 /* c2 */
isub
ireturn
end local 7 // char c2
end local 6 // char c1
15: .line 324
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 339
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 compareToCI_Latin1(byte[], byte[]);
descriptor: ([B[B)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 // byte[] value
start local 1 // byte[] other
0: .line 343
aload 1 /* other */
aload 0 /* value */
invokestatic java.lang.StringLatin1.compareToCI_UTF16:([B[B)I
ineg
ireturn
end local 1 // byte[] other
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 1 0 value [B
0 1 1 other [B
MethodParameters:
Name Flags
value
other
public static int hashCode(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 347
iconst_0
istore 1 /* h */
start local 1 // int h
1: .line 348
aload 0 /* value */
arraylength
iconst_1
ishr
istore 2 /* length */
start local 2 // int length
2: .line 349
iconst_0
istore 3 /* i */
start local 3 // int i
3: goto 6
4: .line 350
StackMap locals: int int int
StackMap stack:
bipush 31
iload 1 /* h */
imul
aload 0 /* value */
iload 3 /* i */
invokestatic java.lang.StringUTF16.getChar:([BI)C
iadd
istore 1 /* h */
5: .line 349
iinc 3 /* i */ 1
StackMap locals:
StackMap stack:
6: iload 3 /* i */
iload 2 /* length */
if_icmplt 4
end local 3 // int i
7: .line 352
iload 1 /* h */
ireturn
end local 2 // int length
end local 1 // int h
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 8 0 value [B
1 8 1 h I
2 8 2 length I
3 7 3 i I
MethodParameters:
Name Flags
value
public static int indexOf(byte[], int, int);
descriptor: ([BII)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=3
start local 0 // byte[] value
start local 1 // int ch
start local 2 // int fromIndex
0: .line 356
aload 0 /* value */
arraylength
iconst_1
ishr
istore 3 /* max */
start local 3 // int max
1: .line 357
iload 2 /* fromIndex */
ifge 4
2: .line 358
iconst_0
istore 2 /* fromIndex */
3: .line 359
goto 6
StackMap locals: int
StackMap stack:
4: iload 2 /* fromIndex */
iload 3 /* max */
if_icmplt 6
5: .line 361
iconst_m1
ireturn
6: .line 363
StackMap locals:
StackMap stack:
iload 1 /* ch */
ldc 65536
if_icmpge 8
7: .line 366
aload 0 /* value */
iload 1 /* ch */
iload 2 /* fromIndex */
iload 3 /* max */
invokestatic java.lang.StringUTF16.indexOfChar:([BIII)I
ireturn
8: .line 368
StackMap locals:
StackMap stack:
aload 0 /* value */
iload 1 /* ch */
iload 2 /* fromIndex */
iload 3 /* max */
invokestatic java.lang.StringUTF16.indexOfSupplementary:([BIII)I
ireturn
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 9 0 value [B
0 9 1 ch I
0 9 2 fromIndex I
1 9 3 max 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 374
aload 1 /* str */
arraylength
ifne 2
1: .line 375
iconst_0
ireturn
2: .line 377
StackMap locals:
StackMap stack:
aload 0 /* value */
arraylength
aload 1 /* str */
arraylength
if_icmpge 4
3: .line 378
iconst_m1
ireturn
4: .line 380
StackMap locals:
StackMap stack:
aload 0 /* value */
aload 0 /* value */
invokestatic java.lang.StringUTF16.length:([B)I
aload 1 /* str */
aload 1 /* str */
invokestatic java.lang.StringUTF16.length:([B)I
iconst_0
invokestatic java.lang.StringUTF16.indexOfUnsafe:([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=5, locals=5, 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 385
iload 4 /* fromIndex */
iload 1 /* valueCount */
aload 0 /* value */
invokestatic java.lang.StringUTF16.checkBoundsBeginEnd:(II[B)V
1: .line 386
iconst_0
iload 3 /* strCount */
aload 2 /* str */
invokestatic java.lang.StringUTF16.checkBoundsBeginEnd:(II[B)V
2: .line 387
aload 0 /* value */
iload 1 /* valueCount */
aload 2 /* str */
iload 3 /* strCount */
iload 4 /* fromIndex */
invokestatic java.lang.StringUTF16.indexOfUnsafe:([BI[BII)I
ireturn
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 3 0 value [B
0 3 1 valueCount I
0 3 2 str [B
0 3 3 strCount I
0 3 4 fromIndex I
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
value
valueCount
str
strCount
fromIndex
private static int indexOfUnsafe(byte[], int, byte[], int, int);
descriptor: ([BI[BII)I
flags: (0x000a) ACC_PRIVATE, 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 392
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 1
iload 4 /* fromIndex */
ifge 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: .line 393
StackMap locals:
StackMap stack:
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 2
iload 3 /* strCount */
ifgt 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: .line 394
StackMap locals:
StackMap stack:
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 3
iload 3 /* strCount */
aload 2 /* str */
invokestatic java.lang.StringUTF16.length:([B)I
if_icmple 3
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
3: .line 395
StackMap locals:
StackMap stack:
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 4
iload 1 /* valueCount */
iload 3 /* strCount */
if_icmpge 4
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
4: .line 396
StackMap locals:
StackMap stack:
aload 2 /* str */
iconst_0
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 5 /* first */
start local 5 // char first
5: .line 397
iload 1 /* valueCount */
iload 3 /* strCount */
isub
istore 6 /* max */
start local 6 // int max
6: .line 398
iload 4 /* fromIndex */
istore 7 /* i */
start local 7 // int i
7: goto 20
8: .line 400
StackMap locals: int int int
StackMap stack:
aload 0 /* value */
iload 7 /* i */
invokestatic java.lang.StringUTF16.getChar:([BI)C
iload 5 /* first */
if_icmpeq 10
9: .line 401
StackMap locals:
StackMap stack:
iinc 7 /* i */ 1
iload 7 /* i */
iload 6 /* max */
if_icmpgt 10
aload 0 /* value */
iload 7 /* i */
invokestatic java.lang.StringUTF16.getChar:([BI)C
iload 5 /* first */
if_icmpne 9
10: .line 404
StackMap locals:
StackMap stack:
iload 7 /* i */
iload 6 /* max */
if_icmpgt 19
11: .line 405
iload 7 /* i */
iconst_1
iadd
istore 8 /* j */
start local 8 // int j
12: .line 406
iload 8 /* j */
iload 3 /* strCount */
iadd
iconst_1
isub
istore 9 /* end */
start local 9 // int end
13: .line 407
iconst_1
istore 10 /* k */
start local 10 // int k
14: goto 16
StackMap locals: int int int
StackMap stack:
15: iinc 8 /* j */ 1
iinc 10 /* k */ 1
StackMap locals:
StackMap stack:
16: iload 8 /* j */
iload 9 /* end */
if_icmpge 17
aload 0 /* value */
iload 8 /* j */
invokestatic java.lang.StringUTF16.getChar:([BI)C
aload 2 /* str */
iload 10 /* k */
invokestatic java.lang.StringUTF16.getChar:([BI)C
if_icmpeq 15
end local 10 // int k
17: .line 408
StackMap locals:
StackMap stack:
iload 8 /* j */
iload 9 /* end */
if_icmpne 19
18: .line 410
iload 7 /* i */
ireturn
end local 9 // int end
end local 8 // int j
19: .line 398
StackMap locals:
StackMap stack:
iinc 7 /* i */ 1
StackMap locals:
StackMap stack:
20: iload 7 /* i */
iload 6 /* max */
if_icmple 8
end local 7 // int i
21: .line 414
iconst_m1
ireturn
end local 6 // int max
end local 5 // char 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 22 0 value [B
0 22 1 valueCount I
0 22 2 str [B
0 22 3 strCount I
0 22 4 fromIndex I
5 22 5 first C
6 22 6 max I
7 21 7 i I
12 19 8 j I
13 19 9 end I
14 17 10 k I
MethodParameters:
Name Flags
value
valueCount
str
strCount
fromIndex
public static int indexOfLatin1(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 423
aload 1 /* str */
arraylength
ifne 2
1: .line 424
iconst_0
ireturn
2: .line 426
StackMap locals:
StackMap stack:
aload 0 /* value */
invokestatic java.lang.StringUTF16.length:([B)I
aload 1 /* str */
arraylength
if_icmpge 4
3: .line 427
iconst_m1
ireturn
4: .line 429
StackMap locals:
StackMap stack:
aload 0 /* value */
aload 0 /* value */
invokestatic java.lang.StringUTF16.length:([B)I
aload 1 /* str */
aload 1 /* str */
arraylength
iconst_0
invokestatic java.lang.StringUTF16.indexOfLatin1Unsafe:([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 indexOfLatin1(byte[], int, byte[], int, int);
descriptor: ([BI[BII)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=5, 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 434
iload 4 /* fromIndex */
iload 1 /* srcCount */
aload 0 /* src */
invokestatic java.lang.StringUTF16.checkBoundsBeginEnd:(II[B)V
1: .line 435
iconst_0
iload 3 /* tgtCount */
aload 2 /* tgt */
arraylength
invokestatic java.lang.String.checkBoundsBeginEnd:(III)V
2: .line 436
aload 0 /* src */
iload 1 /* srcCount */
aload 2 /* tgt */
iload 3 /* tgtCount */
iload 4 /* fromIndex */
invokestatic java.lang.StringUTF16.indexOfLatin1Unsafe:([BI[BII)I
ireturn
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 3 0 src [B
0 3 1 srcCount I
0 3 2 tgt [B
0 3 3 tgtCount I
0 3 4 fromIndex I
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
src
srcCount
tgt
tgtCount
fromIndex
public static int indexOfLatin1Unsafe(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[] src
start local 1 // int srcCount
start local 2 // byte[] tgt
start local 3 // int tgtCount
start local 4 // int fromIndex
0: .line 440
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 1
iload 4 /* fromIndex */
ifge 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: .line 441
StackMap locals:
StackMap stack:
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 2
iload 3 /* tgtCount */
ifgt 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: .line 442
StackMap locals:
StackMap stack:
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 3
iload 3 /* tgtCount */
aload 2 /* tgt */
arraylength
if_icmple 3
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
3: .line 443
StackMap locals:
StackMap stack:
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 4
iload 1 /* srcCount */
iload 3 /* tgtCount */
if_icmpge 4
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
4: .line 444
StackMap locals:
StackMap stack:
aload 2 /* tgt */
iconst_0
baload
sipush 255
iand
i2c
istore 5 /* first */
start local 5 // char first
5: .line 445
iload 1 /* srcCount */
iload 3 /* tgtCount */
isub
istore 6 /* max */
start local 6 // int max
6: .line 446
iload 4 /* fromIndex */
istore 7 /* i */
start local 7 // int i
7: goto 20
8: .line 448
StackMap locals: int int int
StackMap stack:
aload 0 /* src */
iload 7 /* i */
invokestatic java.lang.StringUTF16.getChar:([BI)C
iload 5 /* first */
if_icmpeq 10
9: .line 449
StackMap locals:
StackMap stack:
iinc 7 /* i */ 1
iload 7 /* i */
iload 6 /* max */
if_icmpgt 10
aload 0 /* src */
iload 7 /* i */
invokestatic java.lang.StringUTF16.getChar:([BI)C
iload 5 /* first */
if_icmpne 9
10: .line 452
StackMap locals:
StackMap stack:
iload 7 /* i */
iload 6 /* max */
if_icmpgt 19
11: .line 453
iload 7 /* i */
iconst_1
iadd
istore 8 /* j */
start local 8 // int j
12: .line 454
iload 8 /* j */
iload 3 /* tgtCount */
iadd
iconst_1
isub
istore 9 /* end */
start local 9 // int end
13: .line 455
iconst_1
istore 10 /* k */
start local 10 // int k
14: .line 456
goto 16
15: .line 457
StackMap locals: int int int
StackMap stack:
iinc 8 /* j */ 1
iinc 10 /* k */ 1
16: .line 456
StackMap locals:
StackMap stack:
iload 8 /* j */
iload 9 /* end */
if_icmpge 17
aload 0 /* src */
iload 8 /* j */
invokestatic java.lang.StringUTF16.getChar:([BI)C
aload 2 /* tgt */
iload 10 /* k */
baload
sipush 255
iand
if_icmpeq 15
end local 10 // int k
17: .line 458
StackMap locals:
StackMap stack:
iload 8 /* j */
iload 9 /* end */
if_icmpne 19
18: .line 460
iload 7 /* i */
ireturn
end local 9 // int end
end local 8 // int j
19: .line 446
StackMap locals:
StackMap stack:
iinc 7 /* i */ 1
StackMap locals:
StackMap stack:
20: iload 7 /* i */
iload 6 /* max */
if_icmple 8
end local 7 // int i
21: .line 464
iconst_m1
ireturn
end local 6 // int max
end local 5 // char first
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 22 0 src [B
0 22 1 srcCount I
0 22 2 tgt [B
0 22 3 tgtCount I
0 22 4 fromIndex I
5 22 5 first C
6 22 6 max I
7 21 7 i I
12 19 8 j I
13 19 9 end I
14 17 10 k I
MethodParameters:
Name Flags
src
srcCount
tgt
tgtCount
fromIndex
private static int indexOfChar(byte[], int, int, int);
descriptor: ([BIII)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=4, args_size=4
start local 0 // byte[] value
start local 1 // int ch
start local 2 // int fromIndex
start local 3 // int max
0: .line 469
iload 2 /* fromIndex */
iload 3 /* max */
aload 0 /* value */
invokestatic java.lang.StringUTF16.checkBoundsBeginEnd:(II[B)V
1: .line 470
aload 0 /* value */
iload 1 /* ch */
iload 2 /* fromIndex */
iload 3 /* max */
invokestatic java.lang.StringUTF16.indexOfCharUnsafe:([BIII)I
ireturn
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 2 0 value [B
0 2 1 ch I
0 2 2 fromIndex I
0 2 3 max I
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
value
ch
fromIndex
max
private static int indexOfCharUnsafe(byte[], int, int, int);
descriptor: ([BIII)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=5, args_size=4
start local 0 // byte[] value
start local 1 // int ch
start local 2 // int fromIndex
start local 3 // int max
0: .line 474
iload 2 /* fromIndex */
istore 4 /* i */
start local 4 // int i
1: goto 5
2: .line 475
StackMap locals: int
StackMap stack:
aload 0 /* value */
iload 4 /* i */
invokestatic java.lang.StringUTF16.getChar:([BI)C
iload 1 /* ch */
if_icmpne 4
3: .line 476
iload 4 /* i */
ireturn
4: .line 474
StackMap locals:
StackMap stack:
iinc 4 /* i */ 1
StackMap locals:
StackMap stack:
5: iload 4 /* i */
iload 3 /* max */
if_icmplt 2
end local 4 // int i
6: .line 479
iconst_m1
ireturn
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 7 0 value [B
0 7 1 ch I
0 7 2 fromIndex I
0 7 3 max I
1 6 4 i I
MethodParameters:
Name Flags
value
ch
fromIndex
max
private static int indexOfSupplementary(byte[], int, int, int);
descriptor: ([BIII)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=7, args_size=4
start local 0 // byte[] value
start local 1 // int ch
start local 2 // int fromIndex
start local 3 // int max
0: .line 486
iload 1 /* ch */
invokestatic java.lang.Character.isValidCodePoint:(I)Z
ifeq 10
1: .line 487
iload 1 /* ch */
invokestatic java.lang.Character.highSurrogate:(I)C
istore 4 /* hi */
start local 4 // char hi
2: .line 488
iload 1 /* ch */
invokestatic java.lang.Character.lowSurrogate:(I)C
istore 5 /* lo */
start local 5 // char lo
3: .line 489
iload 2 /* fromIndex */
iload 3 /* max */
aload 0 /* value */
invokestatic java.lang.StringUTF16.checkBoundsBeginEnd:(II[B)V
4: .line 490
iload 2 /* fromIndex */
istore 6 /* i */
start local 6 // int i
5: goto 9
6: .line 491
StackMap locals: int int int
StackMap stack:
aload 0 /* value */
iload 6 /* i */
invokestatic java.lang.StringUTF16.getChar:([BI)C
iload 4 /* hi */
if_icmpne 8
aload 0 /* value */
iload 6 /* i */
iconst_1
iadd
invokestatic java.lang.StringUTF16.getChar:([BI)C
iload 5 /* lo */
if_icmpne 8
7: .line 492
iload 6 /* i */
ireturn
8: .line 490
StackMap locals:
StackMap stack:
iinc 6 /* i */ 1
StackMap locals:
StackMap stack:
9: iload 6 /* i */
iload 3 /* max */
iconst_1
isub
if_icmplt 6
end local 6 // int i
end local 5 // char lo
end local 4 // char hi
10: .line 496
StackMap locals:
StackMap stack:
iconst_m1
ireturn
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 11 0 value [B
0 11 1 ch I
0 11 2 fromIndex I
0 11 3 max I
2 10 4 hi C
3 10 5 lo C
5 10 6 i I
MethodParameters:
Name Flags
value
ch
fromIndex
max
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 502
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 1
iload 4 /* fromIndex */
ifge 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: .line 503
StackMap locals:
StackMap stack:
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 2
iload 3 /* tgtCount */
ifgt 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: .line 504
StackMap locals:
StackMap stack:
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 3
iload 3 /* tgtCount */
aload 2 /* tgt */
invokestatic java.lang.StringUTF16.length:([B)I
if_icmple 3
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
3: .line 505
StackMap locals:
StackMap stack:
iload 3 /* tgtCount */
iconst_1
isub
istore 5 /* min */
start local 5 // int min
4: .line 506
iload 5 /* min */
iload 4 /* fromIndex */
iadd
istore 6 /* i */
start local 6 // int i
5: .line 507
iload 3 /* tgtCount */
iconst_1
isub
istore 7 /* strLastIndex */
start local 7 // int strLastIndex
6: .line 509
iload 7 /* strLastIndex */
aload 2 /* tgt */
invokestatic java.lang.StringUTF16.checkIndex:(I[B)V
7: .line 510
aload 2 /* tgt */
iload 7 /* strLastIndex */
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 8 /* strLastChar */
start local 8 // char strLastChar
8: .line 512
iload 6 /* i */
aload 0 /* src */
invokestatic java.lang.StringUTF16.checkIndex:(I[B)V
9: .line 516
goto 11
10: .line 517
StackMap locals: byte[] int byte[] int int int int int int
StackMap stack:
iinc 6 /* i */ -1
11: .line 516
StackMap locals:
StackMap stack:
iload 6 /* i */
iload 5 /* min */
if_icmplt 12
aload 0 /* src */
iload 6 /* i */
invokestatic java.lang.StringUTF16.getChar:([BI)C
iload 8 /* strLastChar */
if_icmpne 10
12: .line 519
StackMap locals:
StackMap stack:
iload 6 /* i */
iload 5 /* min */
if_icmpge 14
13: .line 520
iconst_m1
ireturn
14: .line 522
StackMap locals:
StackMap stack:
iload 6 /* i */
iconst_1
isub
istore 9 /* j */
start local 9 // int j
15: .line 523
iload 9 /* j */
iload 7 /* strLastIndex */
isub
istore 10 /* start */
start local 10 // int start
16: .line 524
iload 7 /* strLastIndex */
iconst_1
isub
istore 11 /* k */
start local 11 // int k
17: .line 525
goto 21
18: .line 526
StackMap locals: int int int
StackMap stack:
aload 0 /* src */
iload 9 /* j */
iinc 9 /* j */ -1
invokestatic java.lang.StringUTF16.getChar:([BI)C
aload 2 /* tgt */
iload 11 /* k */
iinc 11 /* k */ -1
invokestatic java.lang.StringUTF16.getChar:([BI)C
if_icmpeq 21
19: .line 527
iinc 6 /* i */ -1
20: .line 528
goto 23
21: .line 525
StackMap locals:
StackMap stack:
iload 9 /* j */
iload 10 /* start */
if_icmpgt 18
22: .line 531
iload 10 /* start */
iconst_1
iadd
ireturn
end local 11 // int k
end local 10 // int start
end local 9 // int j
23: .line 515
StackMap locals:
StackMap stack:
goto 11
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 24 0 src [B
0 24 1 srcCount I
0 24 2 tgt [B
0 24 3 tgtCount I
0 24 4 fromIndex I
4 24 5 min I
5 24 6 i I
6 24 7 strLastIndex I
8 24 8 strLastChar C
15 23 9 j I
16 23 10 start I
17 23 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 536
iload 1 /* ch */
ldc 65536
if_icmpge 8
1: .line 539
iload 2 /* fromIndex */
aload 0 /* value */
arraylength
iconst_1
ishr
iconst_1
isub
invokestatic java.lang.Math.min:(II)I
istore 3 /* i */
start local 3 // int i
2: .line 540
goto 6
3: .line 541
StackMap locals: int
StackMap stack:
aload 0 /* value */
iload 3 /* i */
invokestatic java.lang.StringUTF16.getChar:([BI)C
iload 1 /* ch */
if_icmpne 5
4: .line 542
iload 3 /* i */
ireturn
5: .line 540
StackMap locals:
StackMap stack:
iinc 3 /* i */ -1
StackMap locals:
StackMap stack:
6: iload 3 /* i */
ifge 3
7: .line 545
iconst_m1
ireturn
end local 3 // int i
8: .line 547
StackMap locals:
StackMap stack:
aload 0 /* value */
iload 1 /* ch */
iload 2 /* fromIndex */
invokestatic java.lang.StringUTF16.lastIndexOfSupplementary:([BII)I
ireturn
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
2 8 3 i I
MethodParameters:
Name Flags
value
ch
fromIndex
private static int lastIndexOfSupplementary(byte[], int, int);
descriptor: ([BII)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=6, args_size=3
start local 0 // byte[] value
start local 1 // int ch
start local 2 // int fromIndex
0: .line 555
iload 1 /* ch */
invokestatic java.lang.Character.isValidCodePoint:(I)Z
ifeq 9
1: .line 556
iload 1 /* ch */
invokestatic java.lang.Character.highSurrogate:(I)C
istore 3 /* hi */
start local 3 // char hi
2: .line 557
iload 1 /* ch */
invokestatic java.lang.Character.lowSurrogate:(I)C
istore 4 /* lo */
start local 4 // char lo
3: .line 558
iload 2 /* fromIndex */
aload 0 /* value */
arraylength
iconst_1
ishr
iconst_2
isub
invokestatic java.lang.Math.min:(II)I
istore 5 /* i */
start local 5 // int i
4: .line 559
goto 8
5: .line 560
StackMap locals: int int int
StackMap stack:
aload 0 /* value */
iload 5 /* i */
invokestatic java.lang.StringUTF16.getChar:([BI)C
iload 3 /* hi */
if_icmpne 7
aload 0 /* value */
iload 5 /* i */
iconst_1
iadd
invokestatic java.lang.StringUTF16.getChar:([BI)C
iload 4 /* lo */
if_icmpne 7
6: .line 561
iload 5 /* i */
ireturn
7: .line 559
StackMap locals:
StackMap stack:
iinc 5 /* i */ -1
StackMap locals:
StackMap stack:
8: iload 5 /* i */
ifge 5
end local 5 // int i
end local 4 // char lo
end local 3 // char hi
9: .line 565
StackMap locals:
StackMap stack:
iconst_m1
ireturn
end local 2 // int fromIndex
end local 1 // int ch
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 10 0 value [B
0 10 1 ch I
0 10 2 fromIndex I
2 9 3 hi C
3 9 4 lo C
4 9 5 i 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=4, locals=7, args_size=3
start local 0 // byte[] value
start local 1 // char oldChar
start local 2 // char newChar
0: .line 569
aload 0 /* value */
arraylength
iconst_1
ishr
istore 3 /* len */
start local 3 // int len
1: .line 570
iconst_m1
istore 4 /* i */
start local 4 // int i
2: .line 571
goto 5
3: .line 572
StackMap locals: int int
StackMap stack:
aload 0 /* value */
iload 4 /* i */
invokestatic java.lang.StringUTF16.getChar:([BI)C
iload 1 /* oldChar */
if_icmpne 5
4: .line 573
goto 6
5: .line 571
StackMap locals:
StackMap stack:
iinc 4 /* i */ 1
iload 4 /* i */
iload 3 /* len */
if_icmplt 3
6: .line 576
StackMap locals:
StackMap stack:
iload 4 /* i */
iload 3 /* len */
if_icmpge 27
7: .line 577
aload 0 /* value */
arraylength
newarray 8
astore 5 /* buf */
start local 5 // byte[] buf
8: .line 578
iconst_0
istore 6 /* j */
start local 6 // int j
9: goto 12
10: .line 579
StackMap locals: byte[] int
StackMap stack:
aload 5 /* buf */
iload 6 /* j */
aload 0 /* value */
iload 6 /* j */
invokestatic java.lang.StringUTF16.getChar:([BI)C
invokestatic java.lang.StringUTF16.putChar:([BII)V
11: .line 578
iinc 6 /* j */ 1
StackMap locals:
StackMap stack:
12: iload 6 /* j */
iload 4 /* i */
if_icmplt 10
end local 6 // int j
13: .line 581
goto 19
14: .line 582
StackMap locals:
StackMap stack:
aload 0 /* value */
iload 4 /* i */
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 6 /* c */
start local 6 // char c
15: .line 583
aload 5 /* buf */
iload 4 /* i */
iload 6 /* c */
iload 1 /* oldChar */
if_icmpne 16
iload 2 /* newChar */
goto 17
StackMap locals: byte[] int int int int byte[] int
StackMap stack: byte[] int
16: iload 6 /* c */
StackMap locals: byte[] int int int int byte[] int
StackMap stack: byte[] int int
17: invokestatic java.lang.StringUTF16.putChar:([BII)V
18: .line 584
iinc 4 /* i */ 1
end local 6 // char c
19: .line 581
StackMap locals:
StackMap stack:
iload 4 /* i */
iload 3 /* len */
if_icmplt 14
20: .line 587
getstatic java.lang.String.COMPACT_STRINGS:Z
ifeq 26
21: .line 588
iload 1 /* oldChar */
invokestatic java.lang.StringLatin1.canEncode:(I)Z
ifne 26
22: .line 589
iload 2 /* newChar */
invokestatic java.lang.StringLatin1.canEncode:(I)Z
ifeq 26
23: .line 590
aload 5 /* buf */
iconst_0
iload 3 /* len */
invokestatic java.lang.StringUTF16.compress:([BII)[B
astore 6 /* val */
start local 6 // byte[] val
24: .line 591
aload 6 /* val */
ifnull 26
25: .line 592
new java.lang.String
dup
aload 6 /* val */
iconst_0
invokespecial java.lang.String.<init>:([BB)V
areturn
end local 6 // byte[] val
26: .line 595
StackMap locals:
StackMap stack:
new java.lang.String
dup
aload 5 /* buf */
iconst_1
invokespecial java.lang.String.<init>:([BB)V
areturn
end local 5 // byte[] buf
27: .line 597
StackMap locals:
StackMap stack:
aconst_null
areturn
end local 4 // int i
end local 3 // int len
end local 2 // char newChar
end local 1 // char oldChar
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 28 0 value [B
0 28 1 oldChar C
0 28 2 newChar C
1 28 3 len I
2 28 4 i I
8 27 5 buf [B
9 13 6 j I
15 19 6 c C
24 26 6 val [B
MethodParameters:
Name Flags
value
oldChar
newChar
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 602
iload 1 /* toffset */
iload 4 /* len */
iadd
istore 5 /* last */
start local 5 // int last
1: .line 603
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 3
iload 1 /* toffset */
iflt 2
iload 3 /* ooffset */
ifge 3
StackMap locals: int
StackMap stack:
2: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
3: .line 604
StackMap locals:
StackMap stack:
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 4
iload 3 /* ooffset */
iload 4 /* len */
iadd
aload 2 /* other */
invokestatic java.lang.StringUTF16.length:([B)I
if_icmple 4
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
4: .line 605
StackMap locals:
StackMap stack:
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 16
iload 5 /* last */
aload 0 /* value */
invokestatic java.lang.StringUTF16.length:([B)I
if_icmple 16
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
5: .line 607
StackMap locals:
StackMap stack:
aload 0 /* value */
iload 1 /* toffset */
iinc 1 /* toffset */ 1
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 6 /* c1 */
start local 6 // char c1
6: .line 608
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
7: .line 609
iload 6 /* c1 */
iload 7 /* c2 */
if_icmpne 9
8: .line 610
goto 16
9: .line 615
StackMap locals: int int
StackMap stack:
iload 6 /* c1 */
invokestatic java.lang.Character.toUpperCase:(C)C
istore 8 /* u1 */
start local 8 // char u1
10: .line 616
iload 7 /* c2 */
invokestatic java.lang.Character.toUpperCase:(C)C
istore 9 /* u2 */
start local 9 // char u2
11: .line 617
iload 8 /* u1 */
iload 9 /* u2 */
if_icmpne 13
12: .line 618
goto 16
13: .line 624
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 15
14: .line 625
goto 16
15: .line 627
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
16: .line 606
StackMap locals: byte[] int byte[] int int int
StackMap stack:
iload 1 /* toffset */
iload 5 /* last */
if_icmplt 5
17: .line 629
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 18 0 value [B
0 18 1 toffset I
0 18 2 other [B
0 18 3 ooffset I
0 18 4 len I
1 18 5 last I
6 16 6 c1 C
7 16 7 c2 C
10 16 8 u1 C
11 16 9 u2 C
MethodParameters:
Name Flags
value
toffset
other
ooffset
len
public static boolean regionMatchesCI_Latin1(byte[], int, byte[], int, int);
descriptor: ([BI[BII)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=5, 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 635
aload 2 /* other */
iload 3 /* ooffset */
aload 0 /* value */
iload 1 /* toffset */
iload 4 /* len */
invokestatic java.lang.StringLatin1.regionMatchesCI_UTF16:([BI[BII)Z
ireturn
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 1 0 value [B
0 1 1 toffset I
0 1 2 other [B
0 1 3 ooffset I
0 1 4 len I
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=6, locals=11, args_size=3
start local 0 // java.lang.String str
start local 1 // byte[] value
start local 2 // java.util.Locale locale
0: .line 639
aload 2 /* locale */
ifnonnull 2
1: .line 640
new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: .line 643
StackMap locals:
StackMap stack:
iconst_0
istore 4 /* hasSurr */
start local 4 // boolean hasSurr
3: .line 644
aload 1 /* value */
arraylength
iconst_1
ishr
istore 5 /* len */
start local 5 // int len
4: .line 647
iconst_0
istore 3 /* first */
start local 3 // int first
5: goto 13
6: .line 648
StackMap locals: int int int
StackMap stack:
aload 1 /* value */
iload 3 /* first */
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 6 /* cp */
start local 6 // int cp
7: .line 649
iload 6 /* cp */
i2c
invokestatic java.lang.Character.isSurrogate:(C)Z
ifeq 10
8: .line 650
iconst_1
istore 4 /* hasSurr */
9: .line 651
goto 14
10: .line 653
StackMap locals: int
StackMap stack:
iload 6 /* cp */
iload 6 /* cp */
invokestatic java.lang.Character.toLowerCase:(I)I
if_icmpeq 12
11: .line 654
goto 14
end local 6 // int cp
12: .line 647
StackMap locals:
StackMap stack:
iinc 3 /* first */ 1
StackMap locals:
StackMap stack:
13: iload 3 /* first */
iload 5 /* len */
if_icmplt 6
14: .line 657
StackMap locals:
StackMap stack:
iload 3 /* first */
iload 5 /* len */
if_icmpne 16
15: .line 658
aload 0 /* str */
areturn
16: .line 659
StackMap locals:
StackMap stack:
aload 1 /* value */
arraylength
newarray 8
astore 6 /* result */
start local 6 // byte[] result
17: .line 660
aload 1 /* value */
iconst_0
aload 6 /* result */
iconst_0
iload 3 /* first */
iconst_1
ishl
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
18: .line 662
aload 2 /* locale */
invokevirtual java.util.Locale.getLanguage:()Ljava/lang/String;
astore 7 /* lang */
start local 7 // java.lang.String lang
19: .line 663
aload 7 /* lang */
ldc "tr"
if_acmpeq 20
aload 7 /* lang */
ldc "az"
if_acmpeq 20
aload 7 /* lang */
ldc "lt"
if_acmpne 21
20: .line 664
StackMap locals: byte[] java.lang.String
StackMap stack:
aload 0 /* str */
aload 1 /* value */
aload 6 /* result */
iload 3 /* first */
aload 2 /* locale */
iconst_1
invokestatic java.lang.StringUTF16.toLowerCaseEx:(Ljava/lang/String;[B[BILjava/util/Locale;Z)Ljava/lang/String;
areturn
21: .line 666
StackMap locals:
StackMap stack:
iload 4 /* hasSurr */
ifeq 23
22: .line 667
aload 0 /* str */
aload 1 /* value */
aload 6 /* result */
iload 3 /* first */
aload 2 /* locale */
iconst_0
invokestatic java.lang.StringUTF16.toLowerCaseEx:(Ljava/lang/String;[B[BILjava/util/Locale;Z)Ljava/lang/String;
areturn
23: .line 669
StackMap locals:
StackMap stack:
iconst_0
istore 8 /* bits */
start local 8 // int bits
24: .line 670
iload 3 /* first */
istore 9 /* i */
start local 9 // int i
25: goto 38
26: .line 671
StackMap locals: int int
StackMap stack:
aload 1 /* value */
iload 9 /* i */
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 10 /* cp */
start local 10 // int cp
27: .line 672
iload 10 /* cp */
sipush 931
if_icmpeq 29
28: .line 673
iload 10 /* cp */
i2c
invokestatic java.lang.Character.isSurrogate:(C)Z
ifeq 30
29: .line 674
StackMap locals: int
StackMap stack:
aload 0 /* str */
aload 1 /* value */
aload 6 /* result */
iload 9 /* i */
aload 2 /* locale */
iconst_0
invokestatic java.lang.StringUTF16.toLowerCaseEx:(Ljava/lang/String;[B[BILjava/util/Locale;Z)Ljava/lang/String;
areturn
30: .line 676
StackMap locals:
StackMap stack:
iload 10 /* cp */
sipush 304
if_icmpne 32
31: .line 677
aload 0 /* str */
aload 1 /* value */
aload 6 /* result */
iload 9 /* i */
aload 2 /* locale */
iconst_1
invokestatic java.lang.StringUTF16.toLowerCaseEx:(Ljava/lang/String;[B[BILjava/util/Locale;Z)Ljava/lang/String;
areturn
32: .line 679
StackMap locals:
StackMap stack:
iload 10 /* cp */
invokestatic java.lang.Character.toLowerCase:(I)I
istore 10 /* cp */
33: .line 680
iload 10 /* cp */
invokestatic java.lang.Character.isBmpCodePoint:(I)Z
ifne 35
34: .line 681
aload 0 /* str */
aload 1 /* value */
aload 6 /* result */
iload 9 /* i */
aload 2 /* locale */
iconst_0
invokestatic java.lang.StringUTF16.toLowerCaseEx:(Ljava/lang/String;[B[BILjava/util/Locale;Z)Ljava/lang/String;
areturn
35: .line 683
StackMap locals:
StackMap stack:
iload 8 /* bits */
iload 10 /* cp */
ior
istore 8 /* bits */
36: .line 684
aload 6 /* result */
iload 9 /* i */
iload 10 /* cp */
invokestatic java.lang.StringUTF16.putChar:([BII)V
end local 10 // int cp
37: .line 670
iinc 9 /* i */ 1
StackMap locals:
StackMap stack:
38: iload 9 /* i */
iload 5 /* len */
if_icmplt 26
end local 9 // int i
39: .line 686
iload 8 /* bits */
sipush 255
if_icmple 41
40: .line 687
new java.lang.String
dup
aload 6 /* result */
iconst_1
invokespecial java.lang.String.<init>:([BB)V
areturn
41: .line 689
StackMap locals:
StackMap stack:
aload 6 /* result */
iconst_0
iload 5 /* len */
invokestatic java.lang.StringUTF16.newString:([BII)Ljava/lang/String;
areturn
end local 8 // int bits
end local 7 // java.lang.String lang
end local 6 // byte[] result
end local 5 // int len
end local 4 // boolean hasSurr
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 42 0 str Ljava/lang/String;
0 42 1 value [B
0 42 2 locale Ljava/util/Locale;
5 42 3 first I
3 42 4 hasSurr Z
4 42 5 len I
7 12 6 cp I
17 42 6 result [B
19 42 7 lang Ljava/lang/String;
24 42 8 bits I
25 39 9 i I
27 37 10 cp I
MethodParameters:
Name Flags
str
value
locale
private static java.lang.String toLowerCaseEx(java.lang.String, byte[], byte[], int, java.util.Locale, boolean);
descriptor: (Ljava/lang/String;[B[BILjava/util/Locale;Z)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=15, args_size=6
start local 0 // java.lang.String str
start local 1 // byte[] value
start local 2 // byte[] result
start local 3 // int first
start local 4 // java.util.Locale locale
start local 5 // boolean localeDependent
0: .line 696
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 1
aload 2 /* result */
arraylength
aload 1 /* value */
arraylength
if_icmpeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: .line 697
StackMap locals:
StackMap stack:
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 2
iload 3 /* first */
ifge 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: .line 698
StackMap locals:
StackMap stack:
iload 3 /* first */
istore 6 /* resultOffset */
start local 6 // int resultOffset
3: .line 699
aload 1 /* value */
arraylength
iconst_1
ishr
istore 7 /* length */
start local 7 // int length
4: .line 701
iload 3 /* first */
istore 9 /* i */
start local 9 // int i
5: goto 37
6: .line 702
StackMap locals: java.lang.String byte[] byte[] int java.util.Locale int int int top int
StackMap stack:
aload 1 /* value */
iload 9 /* i */
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 10 /* srcChar */
start local 10 // int srcChar
7: .line 705
iconst_1
istore 8 /* srcCount */
start local 8 // int srcCount
8: .line 706
iload 10 /* srcChar */
i2c
invokestatic java.lang.Character.isSurrogate:(C)Z
ifeq 11
9: .line 707
aload 1 /* value */
iload 9 /* i */
iload 7 /* length */
invokestatic java.lang.StringUTF16.codePointAt:([BII)I
istore 10 /* srcChar */
10: .line 708
iload 10 /* srcChar */
invokestatic java.lang.Character.charCount:(I)I
istore 8 /* srcCount */
11: .line 710
StackMap locals: java.lang.String byte[] byte[] int java.util.Locale int int int int int int
StackMap stack:
iload 5 /* localeDependent */
ifne 14
12: .line 711
iload 10 /* srcChar */
sipush 931
if_icmpeq 14
13: .line 712
iload 10 /* srcChar */
sipush 304
if_icmpne 16
14: .line 713
StackMap locals:
StackMap stack:
aload 0 /* str */
iload 9 /* i */
aload 4 /* locale */
invokestatic java.lang.ConditionalSpecialCasing.toLowerCaseEx:(Ljava/lang/String;ILjava/util/Locale;)I
istore 11 /* lowerChar */
start local 11 // int lowerChar
15: .line 714
goto 17
end local 11 // int lowerChar
16: .line 715
StackMap locals:
StackMap stack:
iload 10 /* srcChar */
invokestatic java.lang.Character.toLowerCase:(I)I
istore 11 /* lowerChar */
start local 11 // int lowerChar
17: .line 717
StackMap locals: int
StackMap stack:
iload 11 /* lowerChar */
invokestatic java.lang.Character.isBmpCodePoint:(I)Z
ifeq 20
18: .line 718
aload 2 /* result */
iload 6 /* resultOffset */
iinc 6 /* resultOffset */ 1
iload 11 /* lowerChar */
invokestatic java.lang.StringUTF16.putChar:([BII)V
19: .line 719
goto 36
20: .line 720
StackMap locals:
StackMap stack:
iload 11 /* lowerChar */
iconst_m1
if_icmpne 23
21: .line 721
aload 0 /* str */
iload 9 /* i */
aload 4 /* locale */
invokestatic java.lang.ConditionalSpecialCasing.toLowerCaseCharArray:(Ljava/lang/String;ILjava/util/Locale;)[C
astore 12 /* lowerCharArray */
start local 12 // char[] lowerCharArray
22: .line 722
goto 24
end local 12 // char[] lowerCharArray
23: .line 723
StackMap locals:
StackMap stack:
iload 11 /* lowerChar */
invokestatic java.lang.Character.toChars:(I)[C
astore 12 /* lowerCharArray */
start local 12 // char[] lowerCharArray
24: .line 726
StackMap locals: char[]
StackMap stack:
aload 12 /* lowerCharArray */
arraylength
istore 13 /* mapLen */
start local 13 // int mapLen
25: .line 727
iload 13 /* mapLen */
iload 8 /* srcCount */
if_icmple 29
26: .line 728
aload 2 /* result */
arraylength
iconst_1
ishr
iload 13 /* mapLen */
iadd
iload 8 /* srcCount */
isub
invokestatic java.lang.StringUTF16.newBytesFor:(I)[B
astore 14 /* result2 */
start local 14 // byte[] result2
27: .line 729
aload 2 /* result */
iconst_0
aload 14 /* result2 */
iconst_0
iload 6 /* resultOffset */
iconst_1
ishl
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
28: .line 730
aload 14 /* result2 */
astore 2 /* result */
end local 14 // byte[] result2
29: .line 732
StackMap locals: int
StackMap stack:
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 30
iload 6 /* resultOffset */
ifge 30
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
30: .line 733
StackMap locals:
StackMap stack:
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 31
iload 6 /* resultOffset */
iload 13 /* mapLen */
iadd
aload 2 /* result */
invokestatic java.lang.StringUTF16.length:([B)I
if_icmple 31
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
31: .line 734
StackMap locals:
StackMap stack:
iconst_0
istore 14 /* x */
start local 14 // int x
32: goto 35
33: .line 735
StackMap locals: int
StackMap stack:
aload 2 /* result */
iload 6 /* resultOffset */
iinc 6 /* resultOffset */ 1
aload 12 /* lowerCharArray */
iload 14 /* x */
caload
invokestatic java.lang.StringUTF16.putChar:([BII)V
34: .line 734
iinc 14 /* x */ 1
StackMap locals:
StackMap stack:
35: iload 14 /* x */
iload 13 /* mapLen */
if_icmplt 33
end local 14 // int x
end local 13 // int mapLen
end local 12 // char[] lowerCharArray
end local 11 // int lowerChar
end local 10 // int srcChar
36: .line 701
StackMap locals: java.lang.String byte[] byte[] int java.util.Locale int int int int int
StackMap stack:
iload 9 /* i */
iload 8 /* srcCount */
iadd
istore 9 /* i */
end local 8 // int srcCount
StackMap locals: java.lang.String byte[] byte[] int java.util.Locale int int int top int
StackMap stack:
37: iload 9 /* i */
iload 7 /* length */
if_icmplt 6
end local 9 // int i
38: .line 739
aload 2 /* result */
iconst_0
iload 6 /* resultOffset */
invokestatic java.lang.StringUTF16.newString:([BII)Ljava/lang/String;
areturn
end local 7 // int length
end local 6 // int resultOffset
end local 5 // boolean localeDependent
end local 4 // java.util.Locale locale
end local 3 // int first
end local 2 // byte[] result
end local 1 // byte[] value
end local 0 // java.lang.String str
LocalVariableTable:
Start End Slot Name Signature
0 39 0 str Ljava/lang/String;
0 39 1 value [B
0 39 2 result [B
0 39 3 first I
0 39 4 locale Ljava/util/Locale;
0 39 5 localeDependent Z
3 39 6 resultOffset I
4 39 7 length I
8 37 8 srcCount I
5 38 9 i I
7 36 10 srcChar I
15 16 11 lowerChar I
17 36 11 lowerChar I
22 23 12 lowerCharArray [C
24 36 12 lowerCharArray [C
25 36 13 mapLen I
27 29 14 result2 [B
32 36 14 x I
MethodParameters:
Name Flags
str
value
result
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=6, locals=11, args_size=3
start local 0 // java.lang.String str
start local 1 // byte[] value
start local 2 // java.util.Locale locale
0: .line 743
aload 2 /* locale */
ifnonnull 2
1: .line 744
new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: .line 747
StackMap locals:
StackMap stack:
iconst_0
istore 4 /* hasSurr */
start local 4 // boolean hasSurr
3: .line 748
aload 1 /* value */
arraylength
iconst_1
ishr
istore 5 /* len */
start local 5 // int len
4: .line 751
iconst_0
istore 3 /* first */
start local 3 // int first
5: goto 13
6: .line 752
StackMap locals: int int int
StackMap stack:
aload 1 /* value */
iload 3 /* first */
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 6 /* cp */
start local 6 // int cp
7: .line 753
iload 6 /* cp */
i2c
invokestatic java.lang.Character.isSurrogate:(C)Z
ifeq 10
8: .line 754
iconst_1
istore 4 /* hasSurr */
9: .line 755
goto 14
10: .line 757
StackMap locals: int
StackMap stack:
iload 6 /* cp */
iload 6 /* cp */
invokestatic java.lang.Character.toUpperCaseEx:(I)I
if_icmpeq 12
11: .line 758
goto 14
end local 6 // int cp
12: .line 751
StackMap locals:
StackMap stack:
iinc 3 /* first */ 1
StackMap locals:
StackMap stack:
13: iload 3 /* first */
iload 5 /* len */
if_icmplt 6
14: .line 761
StackMap locals:
StackMap stack:
iload 3 /* first */
iload 5 /* len */
if_icmpne 16
15: .line 762
aload 0 /* str */
areturn
16: .line 764
StackMap locals:
StackMap stack:
aload 1 /* value */
arraylength
newarray 8
astore 6 /* result */
start local 6 // byte[] result
17: .line 765
aload 1 /* value */
iconst_0
aload 6 /* result */
iconst_0
iload 3 /* first */
iconst_1
ishl
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
18: .line 767
aload 2 /* locale */
invokevirtual java.util.Locale.getLanguage:()Ljava/lang/String;
astore 7 /* lang */
start local 7 // java.lang.String lang
19: .line 768
aload 7 /* lang */
ldc "tr"
if_acmpeq 20
aload 7 /* lang */
ldc "az"
if_acmpeq 20
aload 7 /* lang */
ldc "lt"
if_acmpne 21
20: .line 769
StackMap locals: byte[] java.lang.String
StackMap stack:
aload 0 /* str */
aload 1 /* value */
aload 6 /* result */
iload 3 /* first */
aload 2 /* locale */
iconst_1
invokestatic java.lang.StringUTF16.toUpperCaseEx:(Ljava/lang/String;[B[BILjava/util/Locale;Z)Ljava/lang/String;
areturn
21: .line 771
StackMap locals:
StackMap stack:
iload 4 /* hasSurr */
ifeq 23
22: .line 772
aload 0 /* str */
aload 1 /* value */
aload 6 /* result */
iload 3 /* first */
aload 2 /* locale */
iconst_0
invokestatic java.lang.StringUTF16.toUpperCaseEx:(Ljava/lang/String;[B[BILjava/util/Locale;Z)Ljava/lang/String;
areturn
23: .line 774
StackMap locals:
StackMap stack:
iconst_0
istore 8 /* bits */
start local 8 // int bits
24: .line 775
iload 3 /* first */
istore 9 /* i */
start local 9 // int i
25: goto 35
26: .line 776
StackMap locals: int int
StackMap stack:
aload 1 /* value */
iload 9 /* i */
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 10 /* cp */
start local 10 // int cp
27: .line 777
iload 10 /* cp */
i2c
invokestatic java.lang.Character.isSurrogate:(C)Z
ifeq 29
28: .line 778
aload 0 /* str */
aload 1 /* value */
aload 6 /* result */
iload 9 /* i */
aload 2 /* locale */
iconst_0
invokestatic java.lang.StringUTF16.toUpperCaseEx:(Ljava/lang/String;[B[BILjava/util/Locale;Z)Ljava/lang/String;
areturn
29: .line 780
StackMap locals: int
StackMap stack:
iload 10 /* cp */
invokestatic java.lang.Character.toUpperCaseEx:(I)I
istore 10 /* cp */
30: .line 781
iload 10 /* cp */
invokestatic java.lang.Character.isBmpCodePoint:(I)Z
ifne 32
31: .line 782
aload 0 /* str */
aload 1 /* value */
aload 6 /* result */
iload 9 /* i */
aload 2 /* locale */
iconst_0
invokestatic java.lang.StringUTF16.toUpperCaseEx:(Ljava/lang/String;[B[BILjava/util/Locale;Z)Ljava/lang/String;
areturn
32: .line 784
StackMap locals:
StackMap stack:
iload 8 /* bits */
iload 10 /* cp */
ior
istore 8 /* bits */
33: .line 785
aload 6 /* result */
iload 9 /* i */
iload 10 /* cp */
invokestatic java.lang.StringUTF16.putChar:([BII)V
end local 10 // int cp
34: .line 775
iinc 9 /* i */ 1
StackMap locals:
StackMap stack:
35: iload 9 /* i */
iload 5 /* len */
if_icmplt 26
end local 9 // int i
36: .line 787
iload 8 /* bits */
sipush 255
if_icmple 38
37: .line 788
new java.lang.String
dup
aload 6 /* result */
iconst_1
invokespecial java.lang.String.<init>:([BB)V
areturn
38: .line 790
StackMap locals:
StackMap stack:
aload 6 /* result */
iconst_0
iload 5 /* len */
invokestatic java.lang.StringUTF16.newString:([BII)Ljava/lang/String;
areturn
end local 8 // int bits
end local 7 // java.lang.String lang
end local 6 // byte[] result
end local 5 // int len
end local 4 // boolean hasSurr
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 39 0 str Ljava/lang/String;
0 39 1 value [B
0 39 2 locale Ljava/util/Locale;
5 39 3 first I
3 39 4 hasSurr Z
4 39 5 len I
7 12 6 cp I
17 39 6 result [B
19 39 7 lang Ljava/lang/String;
24 39 8 bits I
25 36 9 i I
27 34 10 cp I
MethodParameters:
Name Flags
str
value
locale
private static java.lang.String toUpperCaseEx(java.lang.String, byte[], byte[], int, java.util.Locale, boolean);
descriptor: (Ljava/lang/String;[B[BILjava/util/Locale;Z)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=15, args_size=6
start local 0 // java.lang.String str
start local 1 // byte[] value
start local 2 // byte[] result
start local 3 // int first
start local 4 // java.util.Locale locale
start local 5 // boolean localeDependent
0: .line 798
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 1
aload 2 /* result */
arraylength
aload 1 /* value */
arraylength
if_icmpeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: .line 799
StackMap locals:
StackMap stack:
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 2
iload 3 /* first */
ifge 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: .line 800
StackMap locals:
StackMap stack:
iload 3 /* first */
istore 6 /* resultOffset */
start local 6 // int resultOffset
3: .line 801
aload 1 /* value */
arraylength
iconst_1
ishr
istore 7 /* length */
start local 7 // int length
4: .line 803
iload 3 /* first */
istore 9 /* i */
start local 9 // int i
5: goto 39
6: .line 804
StackMap locals: java.lang.String byte[] byte[] int java.util.Locale int int int top int
StackMap stack:
aload 1 /* value */
iload 9 /* i */
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 10 /* srcChar */
start local 10 // int srcChar
7: .line 807
iconst_1
istore 8 /* srcCount */
start local 8 // int srcCount
8: .line 808
iload 10 /* srcChar */
i2c
invokestatic java.lang.Character.isSurrogate:(C)Z
ifeq 11
9: .line 809
aload 1 /* value */
iload 9 /* i */
iload 7 /* length */
invokestatic java.lang.StringUTF16.codePointAt:([BII)I
istore 10 /* srcChar */
10: .line 810
iload 10 /* srcChar */
invokestatic java.lang.Character.charCount:(I)I
istore 8 /* srcCount */
11: .line 812
StackMap locals: java.lang.String byte[] byte[] int java.util.Locale int int int int int int
StackMap stack:
iload 5 /* localeDependent */
ifeq 14
12: .line 813
aload 0 /* str */
iload 9 /* i */
aload 4 /* locale */
invokestatic java.lang.ConditionalSpecialCasing.toUpperCaseEx:(Ljava/lang/String;ILjava/util/Locale;)I
istore 11 /* upperChar */
start local 11 // int upperChar
13: .line 814
goto 15
end local 11 // int upperChar
14: .line 815
StackMap locals:
StackMap stack:
iload 10 /* srcChar */
invokestatic java.lang.Character.toUpperCaseEx:(I)I
istore 11 /* upperChar */
start local 11 // int upperChar
15: .line 817
StackMap locals: int
StackMap stack:
iload 11 /* upperChar */
invokestatic java.lang.Character.isBmpCodePoint:(I)Z
ifeq 18
16: .line 818
aload 2 /* result */
iload 6 /* resultOffset */
iinc 6 /* resultOffset */ 1
iload 11 /* upperChar */
invokestatic java.lang.StringUTF16.putChar:([BII)V
17: .line 819
goto 38
18: .line 820
StackMap locals:
StackMap stack:
iload 11 /* upperChar */
iconst_m1
if_icmpne 25
19: .line 821
iload 5 /* localeDependent */
ifeq 23
20: .line 823
aload 0 /* str */
iload 9 /* i */
aload 4 /* locale */
invokestatic java.lang.ConditionalSpecialCasing.toUpperCaseCharArray:(Ljava/lang/String;ILjava/util/Locale;)[C
21: .line 822
astore 12 /* upperCharArray */
start local 12 // char[] upperCharArray
22: .line 824
goto 26
end local 12 // char[] upperCharArray
23: .line 825
StackMap locals:
StackMap stack:
iload 10 /* srcChar */
invokestatic java.lang.Character.toUpperCaseCharArray:(I)[C
astore 12 /* upperCharArray */
start local 12 // char[] upperCharArray
24: .line 827
goto 26
end local 12 // char[] upperCharArray
25: .line 828
StackMap locals:
StackMap stack:
iload 11 /* upperChar */
invokestatic java.lang.Character.toChars:(I)[C
astore 12 /* upperCharArray */
start local 12 // char[] upperCharArray
26: .line 831
StackMap locals: char[]
StackMap stack:
aload 12 /* upperCharArray */
arraylength
istore 13 /* mapLen */
start local 13 // int mapLen
27: .line 832
iload 13 /* mapLen */
iload 8 /* srcCount */
if_icmple 31
28: .line 833
aload 2 /* result */
arraylength
iconst_1
ishr
iload 13 /* mapLen */
iadd
iload 8 /* srcCount */
isub
invokestatic java.lang.StringUTF16.newBytesFor:(I)[B
astore 14 /* result2 */
start local 14 // byte[] result2
29: .line 834
aload 2 /* result */
iconst_0
aload 14 /* result2 */
iconst_0
iload 6 /* resultOffset */
iconst_1
ishl
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
30: .line 835
aload 14 /* result2 */
astore 2 /* result */
end local 14 // byte[] result2
31: .line 837
StackMap locals: int
StackMap stack:
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 32
iload 6 /* resultOffset */
ifge 32
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
32: .line 838
StackMap locals:
StackMap stack:
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 33
iload 6 /* resultOffset */
iload 13 /* mapLen */
iadd
aload 2 /* result */
invokestatic java.lang.StringUTF16.length:([B)I
if_icmple 33
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
33: .line 839
StackMap locals:
StackMap stack:
iconst_0
istore 14 /* x */
start local 14 // int x
34: goto 37
35: .line 840
StackMap locals: int
StackMap stack:
aload 2 /* result */
iload 6 /* resultOffset */
iinc 6 /* resultOffset */ 1
aload 12 /* upperCharArray */
iload 14 /* x */
caload
invokestatic java.lang.StringUTF16.putChar:([BII)V
36: .line 839
iinc 14 /* x */ 1
StackMap locals:
StackMap stack:
37: iload 14 /* x */
iload 13 /* mapLen */
if_icmplt 35
end local 14 // int x
end local 13 // int mapLen
end local 12 // char[] upperCharArray
end local 11 // int upperChar
end local 10 // int srcChar
38: .line 803
StackMap locals: java.lang.String byte[] byte[] int java.util.Locale int int int int int
StackMap stack:
iload 9 /* i */
iload 8 /* srcCount */
iadd
istore 9 /* i */
end local 8 // int srcCount
StackMap locals: java.lang.String byte[] byte[] int java.util.Locale int int int top int
StackMap stack:
39: iload 9 /* i */
iload 7 /* length */
if_icmplt 6
end local 9 // int i
40: .line 844
aload 2 /* result */
iconst_0
iload 6 /* resultOffset */
invokestatic java.lang.StringUTF16.newString:([BII)Ljava/lang/String;
areturn
end local 7 // int length
end local 6 // int resultOffset
end local 5 // boolean localeDependent
end local 4 // java.util.Locale locale
end local 3 // int first
end local 2 // byte[] result
end local 1 // byte[] value
end local 0 // java.lang.String str
LocalVariableTable:
Start End Slot Name Signature
0 41 0 str Ljava/lang/String;
0 41 1 value [B
0 41 2 result [B
0 41 3 first I
0 41 4 locale Ljava/util/Locale;
0 41 5 localeDependent Z
3 41 6 resultOffset I
4 41 7 length I
8 39 8 srcCount I
5 40 9 i I
7 38 10 srcChar I
13 14 11 upperChar I
15 38 11 upperChar I
22 23 12 upperCharArray [C
24 25 12 upperCharArray [C
26 38 12 upperCharArray [C
27 38 13 mapLen I
29 31 14 result2 [B
34 38 14 x I
MethodParameters:
Name Flags
str
value
result
first
locale
localeDependent
public static java.lang.String trim(byte[]);
descriptor: ([B)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=4, args_size=1
start local 0 // byte[] value
0: .line 848
aload 0 /* value */
arraylength
iconst_1
ishr
istore 1 /* length */
start local 1 // int length
1: .line 849
iload 1 /* length */
istore 2 /* len */
start local 2 // int len
2: .line 850
iconst_0
istore 3 /* st */
start local 3 // int st
3: .line 851
goto 5
4: .line 852
StackMap locals: int int int
StackMap stack:
iinc 3 /* st */ 1
5: .line 851
StackMap locals:
StackMap stack:
iload 3 /* st */
iload 2 /* len */
if_icmpge 8
aload 0 /* value */
iload 3 /* st */
invokestatic java.lang.StringUTF16.getChar:([BI)C
bipush 32
if_icmple 4
6: .line 854
goto 8
7: .line 855
StackMap locals:
StackMap stack:
iinc 2 /* len */ -1
8: .line 854
StackMap locals:
StackMap stack:
iload 3 /* st */
iload 2 /* len */
if_icmpge 9
aload 0 /* value */
iload 2 /* len */
iconst_1
isub
invokestatic java.lang.StringUTF16.getChar:([BI)C
bipush 32
if_icmple 7
9: .line 857
StackMap locals:
StackMap stack:
iload 3 /* st */
ifgt 10
iload 2 /* len */
iload 1 /* length */
if_icmpge 11
10: .line 858
StackMap locals:
StackMap stack:
new java.lang.String
dup
aload 0 /* value */
iload 3 /* st */
iconst_1
ishl
iload 2 /* len */
iconst_1
ishl
invokestatic java.util.Arrays.copyOfRange:([BII)[B
iconst_1
invokespecial java.lang.String.<init>:([BB)V
goto 12
11: .line 859
StackMap locals:
StackMap stack:
aconst_null
12: .line 857
StackMap locals:
StackMap stack: java.lang.String
areturn
end local 3 // int st
end local 2 // int len
end local 1 // int length
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 13 0 value [B
1 13 1 length I
2 13 2 len I
3 13 3 st I
MethodParameters:
Name Flags
value
public static int indexOfNonWhitespace(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 864
aload 0 /* value */
arraylength
iconst_1
ishr
istore 1 /* length */
start local 1 // int length
1: .line 865
iconst_0
istore 2 /* left */
start local 2 // int left
2: .line 866
goto 7
3: .line 867
StackMap locals: int int
StackMap stack:
aload 0 /* value */
iload 2 /* left */
iload 1 /* length */
invokestatic java.lang.StringUTF16.codePointAt:([BII)I
istore 3 /* codepoint */
start local 3 // int codepoint
4: .line 868
iload 3 /* codepoint */
bipush 32
if_icmpeq 6
iload 3 /* codepoint */
bipush 9
if_icmpeq 6
iload 3 /* codepoint */
invokestatic java.lang.Character.isWhitespace:(I)Z
ifne 6
5: .line 869
goto 8
6: .line 871
StackMap locals: int
StackMap stack:
iload 2 /* left */
iload 3 /* codepoint */
invokestatic java.lang.Character.charCount:(I)I
iadd
istore 2 /* left */
end local 3 // int codepoint
7: .line 866
StackMap locals:
StackMap stack:
iload 2 /* left */
iload 1 /* length */
if_icmplt 3
8: .line 873
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 codepoint I
MethodParameters:
Name Flags
value
public static int lastIndexOfNonWhitespace(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 877
aload 0 /* value */
arraylength
iconst_1
ishr
istore 1 /* length */
start local 1 // int length
1: .line 878
iload 1 /* length */
istore 2 /* right */
start local 2 // int right
2: .line 879
goto 7
3: .line 880
StackMap locals: int int
StackMap stack:
aload 0 /* value */
iload 2 /* right */
invokestatic java.lang.StringUTF16.codePointBefore:([BI)I
istore 3 /* codepoint */
start local 3 // int codepoint
4: .line 881
iload 3 /* codepoint */
bipush 32
if_icmpeq 6
iload 3 /* codepoint */
bipush 9
if_icmpeq 6
iload 3 /* codepoint */
invokestatic java.lang.Character.isWhitespace:(I)Z
ifne 6
5: .line 882
goto 8
6: .line 884
StackMap locals: int
StackMap stack:
iload 2 /* right */
iload 3 /* codepoint */
invokestatic java.lang.Character.charCount:(I)I
isub
istore 2 /* right */
end local 3 // int codepoint
7: .line 879
StackMap locals:
StackMap stack:
iload 2 /* right */
ifgt 3
8: .line 886
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 codepoint I
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 890
aload 0 /* value */
arraylength
iconst_1
ishr
istore 1 /* length */
start local 1 // int length
1: .line 891
aload 0 /* value */
invokestatic java.lang.StringUTF16.indexOfNonWhitespace:([B)I
istore 2 /* left */
start local 2 // int left
2: .line 892
iload 2 /* left */
iload 1 /* length */
if_icmpne 4
3: .line 893
ldc ""
areturn
4: .line 895
StackMap locals: int int
StackMap stack:
aload 0 /* value */
invokestatic java.lang.StringUTF16.lastIndexOfNonWhitespace:([B)I
istore 3 /* right */
start local 3 // int right
5: .line 896
iload 2 /* left */
ifgt 6
iload 3 /* right */
iload 1 /* length */
if_icmpge 7
StackMap locals: int
StackMap stack:
6: aload 0 /* value */
iload 2 /* left */
iload 3 /* right */
iload 2 /* left */
isub
invokestatic java.lang.StringUTF16.newString:([BII)Ljava/lang/String;
goto 8
StackMap locals:
StackMap stack:
7: aconst_null
StackMap locals:
StackMap stack: java.lang.String
8: areturn
end local 3 // int right
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
5 9 3 right I
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=3, args_size=1
start local 0 // byte[] value
0: .line 900
aload 0 /* value */
arraylength
iconst_1
ishr
istore 1 /* length */
start local 1 // int length
1: .line 901
aload 0 /* value */
invokestatic java.lang.StringUTF16.indexOfNonWhitespace:([B)I
istore 2 /* left */
start local 2 // int left
2: .line 902
iload 2 /* left */
iload 1 /* length */
if_icmpne 4
3: .line 903
ldc ""
areturn
4: .line 905
StackMap locals: int int
StackMap stack:
iload 2 /* left */
ifeq 5
aload 0 /* value */
iload 2 /* left */
iload 1 /* length */
iload 2 /* left */
isub
invokestatic java.lang.StringUTF16.newString:([BII)Ljava/lang/String;
goto 6
StackMap locals:
StackMap stack:
5: aconst_null
StackMap locals:
StackMap stack: java.lang.String
6: areturn
end local 2 // int left
end local 1 // int length
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 7 0 value [B
1 7 1 length I
2 7 2 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=3, args_size=1
start local 0 // byte[] value
0: .line 909
aload 0 /* value */
arraylength
iconst_1
ishr
istore 1 /* length */
start local 1 // int length
1: .line 910
aload 0 /* value */
invokestatic java.lang.StringUTF16.lastIndexOfNonWhitespace:([B)I
istore 2 /* right */
start local 2 // int right
2: .line 911
iload 2 /* right */
ifne 4
3: .line 912
ldc ""
areturn
4: .line 914
StackMap locals: int int
StackMap stack:
iload 2 /* right */
iload 1 /* length */
if_icmpeq 5
aload 0 /* value */
iconst_0
iload 2 /* right */
invokestatic java.lang.StringUTF16.newString:([BII)Ljava/lang/String;
goto 6
StackMap locals:
StackMap stack:
5: aconst_null
StackMap locals:
StackMap stack: java.lang.String
6: areturn
end local 2 // int right
end local 1 // int length
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 7 0 value [B
1 7 1 length I
2 7 2 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=3, locals=1, args_size=1
start local 0 // byte[] value
0: .line 1008
new java.lang.StringUTF16$LinesSpliterator
dup
aload 0 /* value */
invokespecial java.lang.StringUTF16$LinesSpliterator.<init>:([B)V
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
private static void putChars(byte[], int, char[], int, int);
descriptor: ([BI[CII)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=5, args_size=5
start local 0 // byte[] val
start local 1 // int index
start local 2 // char[] str
start local 3 // int off
start local 4 // int end
0: .line 1012
goto 2
1: .line 1013
StackMap locals:
StackMap stack:
aload 0 /* val */
iload 1 /* index */
iinc 1 /* index */ 1
aload 2 /* str */
iload 3 /* off */
iinc 3 /* off */ 1
caload
invokestatic java.lang.StringUTF16.putChar:([BII)V
2: .line 1012
StackMap locals:
StackMap stack:
iload 3 /* off */
iload 4 /* end */
if_icmplt 1
3: .line 1015
return
end local 4 // int end
end local 3 // int off
end local 2 // char[] str
end local 1 // int index
end local 0 // byte[] val
LocalVariableTable:
Start End Slot Name Signature
0 4 0 val [B
0 4 1 index I
0 4 2 str [C
0 4 3 off I
0 4 4 end I
MethodParameters:
Name Flags
val
index
str
off
end
public static java.lang.String newString(byte[], int, int);
descriptor: ([BII)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=4, args_size=3
start local 0 // byte[] val
start local 1 // int index
start local 2 // int len
0: .line 1018
getstatic java.lang.String.COMPACT_STRINGS:Z
ifeq 4
1: .line 1019
aload 0 /* val */
iload 1 /* index */
iload 2 /* len */
invokestatic java.lang.StringUTF16.compress:([BII)[B
astore 3 /* buf */
start local 3 // byte[] buf
2: .line 1020
aload 3 /* buf */
ifnull 4
3: .line 1021
new java.lang.String
dup
aload 3 /* buf */
iconst_0
invokespecial java.lang.String.<init>:([BB)V
areturn
end local 3 // byte[] buf
4: .line 1024
StackMap locals:
StackMap stack:
iload 1 /* index */
iload 2 /* len */
iadd
istore 3 /* last */
start local 3 // int last
5: .line 1025
new java.lang.String
dup
aload 0 /* val */
iload 1 /* index */
iconst_1
ishl
iload 3 /* last */
iconst_1
ishl
invokestatic java.util.Arrays.copyOfRange:([BII)[B
iconst_1
invokespecial java.lang.String.<init>:([BB)V
areturn
end local 3 // int last
end local 2 // int len
end local 1 // int index
end local 0 // byte[] val
LocalVariableTable:
Start End Slot Name Signature
0 6 0 val [B
0 6 1 index I
0 6 2 len I
2 4 3 buf [B
5 6 3 last 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 1029
aload 0 /* val */
iload 1 /* index */
iconst_1
ishl
iload 2 /* end */
iconst_1
ishl
iconst_0
invokestatic java.util.Arrays.fill:([BIIB)V
1: .line 1030
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 putCharSB(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 1181
iload 1 /* index */
aload 0 /* val */
invokestatic java.lang.StringUTF16.checkIndex:(I[B)V
1: .line 1182
aload 0 /* val */
iload 1 /* index */
iload 2 /* c */
invokestatic java.lang.StringUTF16.putChar:([BII)V
2: .line 1183
return
end local 2 // int c
end local 1 // int index
end local 0 // byte[] val
LocalVariableTable:
Start End Slot Name Signature
0 3 0 val [B
0 3 1 index I
0 3 2 c I
MethodParameters:
Name Flags
val
index
c
public static void putCharsSB(byte[], int, char[], int, int);
descriptor: ([BI[CII)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=5, args_size=5
start local 0 // byte[] val
start local 1 // int index
start local 2 // char[] ca
start local 3 // int off
start local 4 // int end
0: .line 1186
iload 1 /* index */
iload 1 /* index */
iload 4 /* end */
iadd
iload 3 /* off */
isub
aload 0 /* val */
invokestatic java.lang.StringUTF16.checkBoundsBeginEnd:(II[B)V
1: .line 1187
aload 0 /* val */
iload 1 /* index */
aload 2 /* ca */
iload 3 /* off */
iload 4 /* end */
invokestatic java.lang.StringUTF16.putChars:([BI[CII)V
2: .line 1188
return
end local 4 // int end
end local 3 // int off
end local 2 // char[] ca
end local 1 // int index
end local 0 // byte[] val
LocalVariableTable:
Start End Slot Name Signature
0 3 0 val [B
0 3 1 index I
0 3 2 ca [C
0 3 3 off I
0 3 4 end I
MethodParameters:
Name Flags
val
index
ca
off
end
public static void putCharsSB(byte[], int, java.lang.CharSequence, int, int);
descriptor: ([BILjava/lang/CharSequence;II)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=6, args_size=5
start local 0 // byte[] val
start local 1 // int index
start local 2 // java.lang.CharSequence s
start local 3 // int off
start local 4 // int end
0: .line 1191
iload 1 /* index */
iload 1 /* index */
iload 4 /* end */
iadd
iload 3 /* off */
isub
aload 0 /* val */
invokestatic java.lang.StringUTF16.checkBoundsBeginEnd:(II[B)V
1: .line 1192
iload 3 /* off */
istore 5 /* i */
start local 5 // int i
2: goto 5
3: .line 1193
StackMap locals: int
StackMap stack:
aload 0 /* val */
iload 1 /* index */
iinc 1 /* index */ 1
aload 2 /* s */
iload 5 /* i */
invokeinterface java.lang.CharSequence.charAt:(I)C
invokestatic java.lang.StringUTF16.putChar:([BII)V
4: .line 1192
iinc 5 /* i */ 1
StackMap locals:
StackMap stack:
5: iload 5 /* i */
iload 4 /* end */
if_icmplt 3
end local 5 // int i
6: .line 1195
return
end local 4 // int end
end local 3 // int off
end local 2 // java.lang.CharSequence s
end local 1 // int index
end local 0 // byte[] val
LocalVariableTable:
Start End Slot Name Signature
0 7 0 val [B
0 7 1 index I
0 7 2 s Ljava/lang/CharSequence;
0 7 3 off I
0 7 4 end I
2 6 5 i I
MethodParameters:
Name Flags
val
index
s
off
end
public static int codePointAtSB(byte[], int, int);
descriptor: ([BII)I
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 1198
aload 0 /* val */
iload 1 /* index */
iload 2 /* end */
iconst_1
invokestatic java.lang.StringUTF16.codePointAt:([BIIZ)I
ireturn
end local 2 // int end
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
0 1 2 end I
MethodParameters:
Name Flags
val
index
end
public static int codePointBeforeSB(byte[], int);
descriptor: ([BI)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 // byte[] val
start local 1 // int index
0: .line 1202
aload 0 /* val */
iload 1 /* index */
iconst_1
invokestatic java.lang.StringUTF16.codePointBefore:([BIZ)I
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 int codePointCountSB(byte[], int, int);
descriptor: ([BII)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=3
start local 0 // byte[] val
start local 1 // int beginIndex
start local 2 // int endIndex
0: .line 1206
aload 0 /* val */
iload 1 /* beginIndex */
iload 2 /* endIndex */
iconst_1
invokestatic java.lang.StringUTF16.codePointCount:([BIIZ)I
ireturn
end local 2 // int endIndex
end local 1 // int beginIndex
end local 0 // byte[] val
LocalVariableTable:
Start End Slot Name Signature
0 1 0 val [B
0 1 1 beginIndex I
0 1 2 endIndex I
MethodParameters:
Name Flags
val
beginIndex
endIndex
public static int getChars(int, int, int, byte[]);
descriptor: (III[B)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=5, args_size=4
start local 0 // int i
start local 1 // int begin
start local 2 // int end
start local 3 // byte[] value
0: .line 1210
iload 1 /* begin */
iload 2 /* end */
aload 3 /* value */
invokestatic java.lang.StringUTF16.checkBoundsBeginEnd:(II[B)V
1: .line 1211
iload 0 /* i */
iload 2 /* end */
aload 3 /* value */
invokestatic java.lang.StringUTF16.getChars:(II[B)I
istore 4 /* pos */
start local 4 // int pos
2: .line 1212
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 3
iload 1 /* begin */
iload 4 /* pos */
if_icmpeq 3
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
3: .line 1213
StackMap locals: int
StackMap stack:
iload 4 /* pos */
ireturn
end local 4 // int pos
end local 3 // byte[] value
end local 2 // int end
end local 1 // int begin
end local 0 // int i
LocalVariableTable:
Start End Slot Name Signature
0 4 0 i I
0 4 1 begin I
0 4 2 end I
0 4 3 value [B
2 4 4 pos I
MethodParameters:
Name Flags
i
begin
end
value
public static int getChars(long, int, int, byte[]);
descriptor: (JII[B)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=6, args_size=4
start local 0 // long l
start local 2 // int begin
start local 3 // int end
start local 4 // byte[] value
0: .line 1217
iload 2 /* begin */
iload 3 /* end */
aload 4 /* value */
invokestatic java.lang.StringUTF16.checkBoundsBeginEnd:(II[B)V
1: .line 1218
lload 0 /* l */
iload 3 /* end */
aload 4 /* value */
invokestatic java.lang.StringUTF16.getChars:(JI[B)I
istore 5 /* pos */
start local 5 // int pos
2: .line 1219
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 3
iload 2 /* begin */
iload 5 /* pos */
if_icmpeq 3
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
3: .line 1220
StackMap locals: int
StackMap stack:
iload 5 /* pos */
ireturn
end local 5 // int pos
end local 4 // byte[] value
end local 3 // int end
end local 2 // int begin
end local 0 // long l
LocalVariableTable:
Start End Slot Name Signature
0 4 0 l J
0 4 2 begin I
0 4 3 end I
0 4 4 value [B
2 4 5 pos I
MethodParameters:
Name Flags
l
begin
end
value
public static boolean contentEquals(byte[], byte[], int);
descriptor: ([B[BI)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=4, args_size=3
start local 0 // byte[] v1
start local 1 // byte[] v2
start local 2 // int len
0: .line 1224
iconst_0
iload 2 /* len */
aload 1 /* v2 */
invokestatic java.lang.StringUTF16.checkBoundsOffCount:(II[B)V
1: .line 1225
iconst_0
istore 3 /* i */
start local 3 // int i
2: goto 6
3: .line 1226
StackMap locals: int
StackMap stack:
aload 0 /* v1 */
iload 3 /* i */
baload
sipush 255
iand
i2c
aload 1 /* v2 */
iload 3 /* i */
invokestatic java.lang.StringUTF16.getChar:([BI)C
if_icmpeq 5
4: .line 1227
iconst_0
ireturn
5: .line 1225
StackMap locals:
StackMap stack:
iinc 3 /* i */ 1
StackMap locals:
StackMap stack:
6: iload 3 /* i */
iload 2 /* len */
if_icmplt 3
end local 3 // int i
7: .line 1230
iconst_1
ireturn
end local 2 // int len
end local 1 // byte[] v2
end local 0 // byte[] v1
LocalVariableTable:
Start End Slot Name Signature
0 8 0 v1 [B
0 8 1 v2 [B
0 8 2 len I
2 7 3 i I
MethodParameters:
Name Flags
v1
v2
len
public static boolean contentEquals(byte[], java.lang.CharSequence, int);
descriptor: ([BLjava/lang/CharSequence;I)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=4, args_size=3
start local 0 // byte[] value
start local 1 // java.lang.CharSequence cs
start local 2 // int len
0: .line 1234
iload 2 /* len */
aload 0 /* value */
invokestatic java.lang.StringUTF16.checkOffset:(I[B)V
1: .line 1235
iconst_0
istore 3 /* i */
start local 3 // int i
2: goto 6
3: .line 1236
StackMap locals: int
StackMap stack:
aload 0 /* value */
iload 3 /* i */
invokestatic java.lang.StringUTF16.getChar:([BI)C
aload 1 /* cs */
iload 3 /* i */
invokeinterface java.lang.CharSequence.charAt:(I)C
if_icmpeq 5
4: .line 1237
iconst_0
ireturn
5: .line 1235
StackMap locals:
StackMap stack:
iinc 3 /* i */ 1
StackMap locals:
StackMap stack:
6: iload 3 /* i */
iload 2 /* len */
if_icmplt 3
end local 3 // int i
7: .line 1240
iconst_1
ireturn
end local 2 // int len
end local 1 // java.lang.CharSequence cs
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 8 0 value [B
0 8 1 cs Ljava/lang/CharSequence;
0 8 2 len I
2 7 3 i I
MethodParameters:
Name Flags
value
cs
len
public static int putCharsAt(byte[], int, char, char, char, char);
descriptor: ([BICCCC)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=7, args_size=6
start local 0 // byte[] value
start local 1 // int i
start local 2 // char c1
start local 3 // char c2
start local 4 // char c3
start local 5 // char c4
0: .line 1244
iload 1 /* i */
iconst_4
iadd
istore 6 /* end */
start local 6 // int end
1: .line 1245
iload 1 /* i */
iload 6 /* end */
aload 0 /* value */
invokestatic java.lang.StringUTF16.checkBoundsBeginEnd:(II[B)V
2: .line 1246
aload 0 /* value */
iload 1 /* i */
iinc 1 /* i */ 1
iload 2 /* c1 */
invokestatic java.lang.StringUTF16.putChar:([BII)V
3: .line 1247
aload 0 /* value */
iload 1 /* i */
iinc 1 /* i */ 1
iload 3 /* c2 */
invokestatic java.lang.StringUTF16.putChar:([BII)V
4: .line 1248
aload 0 /* value */
iload 1 /* i */
iinc 1 /* i */ 1
iload 4 /* c3 */
invokestatic java.lang.StringUTF16.putChar:([BII)V
5: .line 1249
aload 0 /* value */
iload 1 /* i */
iinc 1 /* i */ 1
iload 5 /* c4 */
invokestatic java.lang.StringUTF16.putChar:([BII)V
6: .line 1250
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 7
iload 1 /* i */
iload 6 /* end */
if_icmpeq 7
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
7: .line 1251
StackMap locals: int
StackMap stack:
iload 6 /* end */
ireturn
end local 6 // int end
end local 5 // char c4
end local 4 // char c3
end local 3 // char c2
end local 2 // char c1
end local 1 // int i
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 8 0 value [B
0 8 1 i I
0 8 2 c1 C
0 8 3 c2 C
0 8 4 c3 C
0 8 5 c4 C
1 8 6 end I
MethodParameters:
Name Flags
value
i
c1
c2
c3
c4
public static int putCharsAt(byte[], int, char, char, char, char, char);
descriptor: ([BICCCCC)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=8, args_size=7
start local 0 // byte[] value
start local 1 // int i
start local 2 // char c1
start local 3 // char c2
start local 4 // char c3
start local 5 // char c4
start local 6 // char c5
0: .line 1255
iload 1 /* i */
iconst_5
iadd
istore 7 /* end */
start local 7 // int end
1: .line 1256
iload 1 /* i */
iload 7 /* end */
aload 0 /* value */
invokestatic java.lang.StringUTF16.checkBoundsBeginEnd:(II[B)V
2: .line 1257
aload 0 /* value */
iload 1 /* i */
iinc 1 /* i */ 1
iload 2 /* c1 */
invokestatic java.lang.StringUTF16.putChar:([BII)V
3: .line 1258
aload 0 /* value */
iload 1 /* i */
iinc 1 /* i */ 1
iload 3 /* c2 */
invokestatic java.lang.StringUTF16.putChar:([BII)V
4: .line 1259
aload 0 /* value */
iload 1 /* i */
iinc 1 /* i */ 1
iload 4 /* c3 */
invokestatic java.lang.StringUTF16.putChar:([BII)V
5: .line 1260
aload 0 /* value */
iload 1 /* i */
iinc 1 /* i */ 1
iload 5 /* c4 */
invokestatic java.lang.StringUTF16.putChar:([BII)V
6: .line 1261
aload 0 /* value */
iload 1 /* i */
iinc 1 /* i */ 1
iload 6 /* c5 */
invokestatic java.lang.StringUTF16.putChar:([BII)V
7: .line 1262
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 8
iload 1 /* i */
iload 7 /* end */
if_icmpeq 8
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
8: .line 1263
StackMap locals: int
StackMap stack:
iload 7 /* end */
ireturn
end local 7 // int end
end local 6 // char c5
end local 5 // char c4
end local 4 // char c3
end local 3 // char c2
end local 2 // char c1
end local 1 // int i
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 9 0 value [B
0 9 1 i I
0 9 2 c1 C
0 9 3 c2 C
0 9 4 c3 C
0 9 5 c4 C
0 9 6 c5 C
1 9 7 end I
MethodParameters:
Name Flags
value
i
c1
c2
c3
c4
c5
public static char charAt(byte[], int);
descriptor: ([BI)C
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 // byte[] value
start local 1 // int index
0: .line 1267
iload 1 /* index */
aload 0 /* value */
invokestatic java.lang.StringUTF16.checkIndex:(I[B)V
1: .line 1268
aload 0 /* value */
iload 1 /* index */
invokestatic java.lang.StringUTF16.getChar:([BI)C
ireturn
end local 1 // int index
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 2 0 value [B
0 2 1 index I
MethodParameters:
Name Flags
value
index
public static void reverse(byte[], int);
descriptor: ([BI)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=8, args_size=2
start local 0 // byte[] val
start local 1 // int count
0: .line 1272
iload 1 /* count */
aload 0 /* val */
invokestatic java.lang.StringUTF16.checkOffset:(I[B)V
1: .line 1273
iload 1 /* count */
iconst_1
isub
istore 2 /* n */
start local 2 // int n
2: .line 1274
iconst_0
istore 3 /* hasSurrogates */
start local 3 // boolean hasSurrogates
3: .line 1275
iload 2 /* n */
iconst_1
isub
iconst_1
ishr
istore 4 /* j */
start local 4 // int j
4: goto 14
5: .line 1276
StackMap locals: int int int
StackMap stack:
iload 2 /* n */
iload 4 /* j */
isub
istore 5 /* k */
start local 5 // int k
6: .line 1277
aload 0 /* val */
iload 4 /* j */
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 6 /* cj */
start local 6 // char cj
7: .line 1278
aload 0 /* val */
iload 5 /* k */
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 7 /* ck */
start local 7 // char ck
8: .line 1279
aload 0 /* val */
iload 4 /* j */
iload 7 /* ck */
invokestatic java.lang.StringUTF16.putChar:([BII)V
9: .line 1280
aload 0 /* val */
iload 5 /* k */
iload 6 /* cj */
invokestatic java.lang.StringUTF16.putChar:([BII)V
10: .line 1281
iload 6 /* cj */
invokestatic java.lang.Character.isSurrogate:(C)Z
ifne 12
11: .line 1282
iload 7 /* ck */
invokestatic java.lang.Character.isSurrogate:(C)Z
ifeq 13
12: .line 1283
StackMap locals: int int int
StackMap stack:
iconst_1
istore 3 /* hasSurrogates */
end local 7 // char ck
end local 6 // char cj
end local 5 // int k
13: .line 1275
StackMap locals:
StackMap stack:
iinc 4 /* j */ -1
StackMap locals:
StackMap stack:
14: iload 4 /* j */
ifge 5
end local 4 // int j
15: .line 1286
iload 3 /* hasSurrogates */
ifeq 17
16: .line 1287
aload 0 /* val */
iload 1 /* count */
invokestatic java.lang.StringUTF16.reverseAllValidSurrogatePairs:([BI)V
17: .line 1289
StackMap locals:
StackMap stack:
return
end local 3 // boolean hasSurrogates
end local 2 // int n
end local 1 // int count
end local 0 // byte[] val
LocalVariableTable:
Start End Slot Name Signature
0 18 0 val [B
0 18 1 count I
2 18 2 n I
3 18 3 hasSurrogates Z
4 15 4 j I
6 13 5 k I
7 13 6 cj C
8 13 7 ck C
MethodParameters:
Name Flags
val
count
private static void reverseAllValidSurrogatePairs(byte[], int);
descriptor: ([BI)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=5, args_size=2
start local 0 // byte[] val
start local 1 // int count
0: .line 1293
iconst_0
istore 2 /* i */
start local 2 // int i
1: goto 9
2: .line 1294
StackMap locals: int
StackMap stack:
aload 0 /* val */
iload 2 /* i */
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 3 /* c2 */
start local 3 // char c2
3: .line 1295
iload 3 /* c2 */
invokestatic java.lang.Character.isLowSurrogate:(C)Z
ifeq 8
4: .line 1296
aload 0 /* val */
iload 2 /* i */
iconst_1
iadd
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 4 /* c1 */
start local 4 // char c1
5: .line 1297
iload 4 /* c1 */
invokestatic java.lang.Character.isHighSurrogate:(C)Z
ifeq 8
6: .line 1298
aload 0 /* val */
iload 2 /* i */
iinc 2 /* i */ 1
iload 4 /* c1 */
invokestatic java.lang.StringUTF16.putChar:([BII)V
7: .line 1299
aload 0 /* val */
iload 2 /* i */
iload 3 /* c2 */
invokestatic java.lang.StringUTF16.putChar:([BII)V
end local 4 // char c1
end local 3 // char c2
8: .line 1293
StackMap locals:
StackMap stack:
iinc 2 /* i */ 1
StackMap locals:
StackMap stack:
9: iload 2 /* i */
iload 1 /* count */
iconst_1
isub
if_icmplt 2
end local 2 // int i
10: .line 1303
return
end local 1 // int count
end local 0 // byte[] val
LocalVariableTable:
Start End Slot Name Signature
0 11 0 val [B
0 11 1 count I
1 10 2 i I
3 8 3 c2 C
5 8 4 c1 C
MethodParameters:
Name Flags
val
count
public static void inflate(byte[], int, byte[], int, int);
descriptor: ([BI[BII)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 // byte[] dst
start local 3 // int dstOff
start local 4 // int len
0: .line 1308
iload 3 /* dstOff */
iload 4 /* len */
aload 2 /* dst */
invokestatic java.lang.StringUTF16.checkBoundsOffCount:(II[B)V
1: .line 1309
iconst_0
istore 5 /* i */
start local 5 // int i
2: goto 5
3: .line 1310
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
invokestatic java.lang.StringUTF16.putChar:([BII)V
4: .line 1309
iinc 5 /* i */ 1
StackMap locals:
StackMap stack:
5: iload 5 /* i */
iload 4 /* len */
if_icmplt 3
end local 5 // int i
6: .line 1312
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 7 0 src [B
0 7 1 srcOff I
0 7 2 dst [B
0 7 3 dstOff I
0 7 4 len I
2 6 5 i I
MethodParameters:
Name Flags
src
srcOff
dst
dstOff
len
public static int lastIndexOfLatin1(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 1317
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 1
iload 4 /* fromIndex */
ifge 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: .line 1318
StackMap locals:
StackMap stack:
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 2
iload 3 /* tgtCount */
ifgt 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: .line 1319
StackMap locals:
StackMap stack:
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 3
iload 3 /* tgtCount */
aload 2 /* tgt */
arraylength
if_icmple 3
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
3: .line 1320
StackMap locals:
StackMap stack:
iload 3 /* tgtCount */
iconst_1
isub
istore 5 /* min */
start local 5 // int min
4: .line 1321
iload 5 /* min */
iload 4 /* fromIndex */
iadd
istore 6 /* i */
start local 6 // int i
5: .line 1322
iload 3 /* tgtCount */
iconst_1
isub
istore 7 /* strLastIndex */
start local 7 // int strLastIndex
6: .line 1324
aload 2 /* tgt */
iload 7 /* strLastIndex */
baload
sipush 255
iand
i2c
istore 8 /* strLastChar */
start local 8 // char strLastChar
7: .line 1326
iload 6 /* i */
aload 0 /* src */
invokestatic java.lang.StringUTF16.checkIndex:(I[B)V
8: .line 1330
goto 10
9: .line 1331
StackMap locals: byte[] int byte[] int int int int int int
StackMap stack:
iinc 6 /* i */ -1
10: .line 1330
StackMap locals:
StackMap stack:
iload 6 /* i */
iload 5 /* min */
if_icmplt 11
aload 0 /* src */
iload 6 /* i */
invokestatic java.lang.StringUTF16.getChar:([BI)C
iload 8 /* strLastChar */
if_icmpne 9
11: .line 1333
StackMap locals:
StackMap stack:
iload 6 /* i */
iload 5 /* min */
if_icmpge 13
12: .line 1334
iconst_m1
ireturn
13: .line 1336
StackMap locals:
StackMap stack:
iload 6 /* i */
iconst_1
isub
istore 9 /* j */
start local 9 // int j
14: .line 1337
iload 9 /* j */
iload 7 /* strLastIndex */
isub
istore 10 /* start */
start local 10 // int start
15: .line 1338
iload 7 /* strLastIndex */
iconst_1
isub
istore 11 /* k */
start local 11 // int k
16: .line 1339
goto 20
17: .line 1340
StackMap locals: int int int
StackMap stack:
aload 0 /* src */
iload 9 /* j */
iinc 9 /* j */ -1
invokestatic java.lang.StringUTF16.getChar:([BI)C
aload 2 /* tgt */
iload 11 /* k */
iinc 11 /* k */ -1
baload
sipush 255
iand
if_icmpeq 20
18: .line 1341
iinc 6 /* i */ -1
19: .line 1342
goto 22
20: .line 1339
StackMap locals:
StackMap stack:
iload 9 /* j */
iload 10 /* start */
if_icmpgt 17
21: .line 1345
iload 10 /* start */
iconst_1
iadd
ireturn
end local 11 // int k
end local 10 // int start
end local 9 // int j
22: .line 1329
StackMap locals:
StackMap stack:
goto 10
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 23 0 src [B
0 23 1 srcCount I
0 23 2 tgt [B
0 23 3 tgtCount I
0 23 4 fromIndex I
4 23 5 min I
5 23 6 i I
6 23 7 strLastIndex I
7 23 8 strLastChar C
14 22 9 j I
15 22 10 start I
16 22 11 k I
MethodParameters:
Name Flags
src
srcCount
tgt
tgtCount
fromIndex
private static native boolean isBigEndian();
descriptor: ()Z
flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
static int getChars(int, int, byte[]);
descriptor: (II[B)I
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=7, args_size=3
start local 0 // int i
start local 1 // int index
start local 2 // byte[] buf
0: .line 1381
iload 1 /* index */
istore 5 /* charPos */
start local 5 // int charPos
1: .line 1383
iload 0 /* i */
ifge 2
iconst_1
goto 3
StackMap locals: int int byte[] top top int
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: istore 6 /* negative */
start local 6 // boolean negative
4: .line 1384
iload 6 /* negative */
ifne 12
5: .line 1385
iload 0 /* i */
ineg
istore 0 /* i */
6: .line 1389
goto 12
7: .line 1390
StackMap locals: int
StackMap stack:
iload 0 /* i */
bipush 100
idiv
istore 3 /* q */
start local 3 // int q
8: .line 1391
iload 3 /* q */
bipush 100
imul
iload 0 /* i */
isub
istore 4 /* r */
start local 4 // int r
9: .line 1392
iload 3 /* q */
istore 0 /* i */
10: .line 1393
aload 2 /* buf */
iinc 5 /* charPos */ -1
iload 5 /* charPos */
getstatic java.lang.Integer.DigitOnes:[B
iload 4 /* r */
baload
invokestatic java.lang.StringUTF16.putChar:([BII)V
11: .line 1394
aload 2 /* buf */
iinc 5 /* charPos */ -1
iload 5 /* charPos */
getstatic java.lang.Integer.DigitTens:[B
iload 4 /* r */
baload
invokestatic java.lang.StringUTF16.putChar:([BII)V
end local 4 // int r
end local 3 // int q
12: .line 1389
StackMap locals:
StackMap stack:
iload 0 /* i */
bipush -100
if_icmple 7
13: .line 1398
iload 0 /* i */
bipush 10
idiv
istore 3 /* q */
start local 3 // int q
14: .line 1399
iload 3 /* q */
bipush 10
imul
iload 0 /* i */
isub
istore 4 /* r */
start local 4 // int r
15: .line 1400
aload 2 /* buf */
iinc 5 /* charPos */ -1
iload 5 /* charPos */
bipush 48
iload 4 /* r */
iadd
invokestatic java.lang.StringUTF16.putChar:([BII)V
16: .line 1403
iload 3 /* q */
ifge 18
17: .line 1404
aload 2 /* buf */
iinc 5 /* charPos */ -1
iload 5 /* charPos */
bipush 48
iload 3 /* q */
isub
invokestatic java.lang.StringUTF16.putChar:([BII)V
18: .line 1407
StackMap locals: int int byte[] int int int int
StackMap stack:
iload 6 /* negative */
ifeq 20
19: .line 1408
aload 2 /* buf */
iinc 5 /* charPos */ -1
iload 5 /* charPos */
bipush 45
invokestatic java.lang.StringUTF16.putChar:([BII)V
20: .line 1410
StackMap locals:
StackMap stack:
iload 5 /* charPos */
ireturn
end local 6 // boolean negative
end local 5 // int charPos
end local 4 // int r
end local 3 // int q
end local 2 // byte[] buf
end local 1 // int index
end local 0 // int i
LocalVariableTable:
Start End Slot Name Signature
0 21 0 i I
0 21 1 index I
0 21 2 buf [B
8 12 3 q I
14 21 3 q I
9 12 4 r I
15 21 4 r I
1 21 5 charPos I
4 21 6 negative Z
MethodParameters:
Name Flags
i
index
buf
static int getChars(long, int, byte[]);
descriptor: (JI[B)I
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=11, args_size=3
start local 0 // long i
start local 2 // int index
start local 3 // byte[] buf
0: .line 1425
iload 2 /* index */
istore 7 /* charPos */
start local 7 // int charPos
1: .line 1427
lload 0 /* i */
lconst_0
lcmp
ifge 2
iconst_1
goto 3
StackMap locals: long int byte[] top top top int
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: istore 8 /* negative */
start local 8 // boolean negative
4: .line 1428
iload 8 /* negative */
ifne 12
5: .line 1429
lload 0 /* i */
lneg
lstore 0 /* i */
6: .line 1433
goto 12
7: .line 1434
StackMap locals: int
StackMap stack:
lload 0 /* i */
ldc 100
ldiv
lstore 4 /* q */
start local 4 // long q
8: .line 1435
lload 4 /* q */
ldc 100
lmul
lload 0 /* i */
lsub
l2i
istore 6 /* r */
start local 6 // int r
9: .line 1436
lload 4 /* q */
lstore 0 /* i */
10: .line 1437
aload 3 /* buf */
iinc 7 /* charPos */ -1
iload 7 /* charPos */
getstatic java.lang.Integer.DigitOnes:[B
iload 6 /* r */
baload
invokestatic java.lang.StringUTF16.putChar:([BII)V
11: .line 1438
aload 3 /* buf */
iinc 7 /* charPos */ -1
iload 7 /* charPos */
getstatic java.lang.Integer.DigitTens:[B
iload 6 /* r */
baload
invokestatic java.lang.StringUTF16.putChar:([BII)V
end local 6 // int r
end local 4 // long q
12: .line 1433
StackMap locals:
StackMap stack:
lload 0 /* i */
ldc -2147483648
lcmp
ifle 7
13: .line 1443
lload 0 /* i */
l2i
istore 10 /* i2 */
start local 10 // int i2
14: .line 1444
goto 20
15: .line 1445
StackMap locals: long int byte[] top top top int int top int
StackMap stack:
iload 10 /* i2 */
bipush 100
idiv
istore 9 /* q2 */
start local 9 // int q2
16: .line 1446
iload 9 /* q2 */
bipush 100
imul
iload 10 /* i2 */
isub
istore 6 /* r */
start local 6 // int r
17: .line 1447
iload 9 /* q2 */
istore 10 /* i2 */
18: .line 1448
aload 3 /* buf */
iinc 7 /* charPos */ -1
iload 7 /* charPos */
getstatic java.lang.Integer.DigitOnes:[B
iload 6 /* r */
baload
invokestatic java.lang.StringUTF16.putChar:([BII)V
19: .line 1449
aload 3 /* buf */
iinc 7 /* charPos */ -1
iload 7 /* charPos */
getstatic java.lang.Integer.DigitTens:[B
iload 6 /* r */
baload
invokestatic java.lang.StringUTF16.putChar:([BII)V
end local 9 // int q2
end local 6 // int r
20: .line 1444
StackMap locals:
StackMap stack:
iload 10 /* i2 */
bipush -100
if_icmple 15
21: .line 1453
iload 10 /* i2 */
bipush 10
idiv
istore 9 /* q2 */
start local 9 // int q2
22: .line 1454
iload 9 /* q2 */
bipush 10
imul
iload 10 /* i2 */
isub
istore 6 /* r */
start local 6 // int r
23: .line 1455
aload 3 /* buf */
iinc 7 /* charPos */ -1
iload 7 /* charPos */
bipush 48
iload 6 /* r */
iadd
invokestatic java.lang.StringUTF16.putChar:([BII)V
24: .line 1458
iload 9 /* q2 */
ifge 26
25: .line 1459
aload 3 /* buf */
iinc 7 /* charPos */ -1
iload 7 /* charPos */
bipush 48
iload 9 /* q2 */
isub
invokestatic java.lang.StringUTF16.putChar:([BII)V
26: .line 1462
StackMap locals: long int byte[] top top int int int int int
StackMap stack:
iload 8 /* negative */
ifeq 28
27: .line 1463
aload 3 /* buf */
iinc 7 /* charPos */ -1
iload 7 /* charPos */
bipush 45
invokestatic java.lang.StringUTF16.putChar:([BII)V
28: .line 1465
StackMap locals:
StackMap stack:
iload 7 /* charPos */
ireturn
end local 10 // int i2
end local 9 // int q2
end local 8 // boolean negative
end local 7 // int charPos
end local 6 // int r
end local 3 // byte[] buf
end local 2 // int index
end local 0 // long i
LocalVariableTable:
Start End Slot Name Signature
0 29 0 i J
0 29 2 index I
0 29 3 buf [B
8 12 4 q J
9 12 6 r I
17 20 6 r I
23 29 6 r I
1 29 7 charPos I
4 29 8 negative Z
16 20 9 q2 I
22 29 9 q2 I
14 29 10 i2 I
MethodParameters:
Name Flags
i
index
buf
public static void checkIndex(int, byte[]);
descriptor: (I[B)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 // int off
start local 1 // byte[] val
0: .line 1470
iload 0 /* off */
aload 1 /* val */
invokestatic java.lang.StringUTF16.length:([B)I
invokestatic java.lang.String.checkIndex:(II)V
1: .line 1471
return
end local 1 // byte[] val
end local 0 // int off
LocalVariableTable:
Start End Slot Name Signature
0 2 0 off I
0 2 1 val [B
MethodParameters:
Name Flags
off
val
public static void checkOffset(int, byte[]);
descriptor: (I[B)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 // int off
start local 1 // byte[] val
0: .line 1474
iload 0 /* off */
aload 1 /* val */
invokestatic java.lang.StringUTF16.length:([B)I
invokestatic java.lang.String.checkOffset:(II)V
1: .line 1475
return
end local 1 // byte[] val
end local 0 // int off
LocalVariableTable:
Start End Slot Name Signature
0 2 0 off I
0 2 1 val [B
MethodParameters:
Name Flags
off
val
public static void checkBoundsBeginEnd(int, int, byte[]);
descriptor: (II[B)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=3
start local 0 // int begin
start local 1 // int end
start local 2 // byte[] val
0: .line 1478
iload 0 /* begin */
iload 1 /* end */
aload 2 /* val */
invokestatic java.lang.StringUTF16.length:([B)I
invokestatic java.lang.String.checkBoundsBeginEnd:(III)V
1: .line 1479
return
end local 2 // byte[] val
end local 1 // int end
end local 0 // int begin
LocalVariableTable:
Start End Slot Name Signature
0 2 0 begin I
0 2 1 end I
0 2 2 val [B
MethodParameters:
Name Flags
begin
end
val
public static void checkBoundsOffCount(int, int, byte[]);
descriptor: (II[B)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=3
start local 0 // int offset
start local 1 // int count
start local 2 // byte[] val
0: .line 1482
iload 0 /* offset */
iload 1 /* count */
aload 2 /* val */
invokestatic java.lang.StringUTF16.length:([B)I
invokestatic java.lang.String.checkBoundsOffCount:(III)V
1: .line 1483
return
end local 2 // byte[] val
end local 1 // int count
end local 0 // int offset
LocalVariableTable:
Start End Slot Name Signature
0 2 0 offset I
0 2 1 count I
0 2 2 val [B
MethodParameters:
Name Flags
offset
count
val
}
SourceFile: "StringUTF16.java"
NestMembers:
java.lang.StringUTF16$CharsSpliterator java.lang.StringUTF16$CodePointsSpliterator java.lang.StringUTF16$LinesSpliterator
InnerClasses:
CharsSpliterator = java.lang.StringUTF16$CharsSpliterator of java.lang.StringUTF16
CodePointsSpliterator = java.lang.StringUTF16$CodePointsSpliterator of java.lang.StringUTF16
private final LinesSpliterator = java.lang.StringUTF16$LinesSpliterator of java.lang.StringUTF16