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 43
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 1510
invokestatic java.lang.StringUTF16.isBigEndian:()Z
ifeq 7
4: .line 1511
bipush 8
putstatic java.lang.StringUTF16.HI_BYTE_SHIFT:I
5: .line 1512
iconst_0
putstatic java.lang.StringUTF16.LO_BYTE_SHIFT:I
6: .line 1513
goto 9
7: .line 1514
StackMap locals:
StackMap stack:
iconst_0
putstatic java.lang.StringUTF16.HI_BYTE_SHIFT:I
8: .line 1515
bipush 8
putstatic java.lang.StringUTF16.LO_BYTE_SHIFT:I
9: .line 1519
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 43
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 46
iload 0 /* len */
ifge 2
1: .line 47
new java.lang.NegativeArraySizeException
dup
invokespecial java.lang.NegativeArraySizeException.<init>:()V
athrow
2: .line 49
StackMap locals:
StackMap stack:
iload 0 /* len */
ldc 1073741823
if_icmple 6
3: .line 50
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 51
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 50
invokespecial java.lang.OutOfMemoryError.<init>:(Ljava/lang/String;)V
athrow
6: .line 53
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 59
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 60
StackMap locals:
StackMap stack:
iload 1 /* index */
iconst_1
ishl
istore 1 /* index */
3: .line 61
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 62
aload 0 /* val */
iload 1 /* index */
iload 2 /* c */
getstatic java.lang.StringUTF16.LO_BYTE_SHIFT:I
ishr
i2b
bastore
5: .line 63
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.vm.annotation.IntrinsicCandidate()
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 68
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 69
StackMap locals:
StackMap stack:
iload 1 /* index */
iconst_1
ishl
istore 1 /* index */
3: .line 70
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 71
aload 0 /* val */
iload 1 /* index */
baload
sipush 255
iand
getstatic java.lang.StringUTF16.LO_BYTE_SHIFT:I
ishl
5: .line 70
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.vm.annotation.IntrinsicCandidate()
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 75
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 79
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 80
StackMap locals:
StackMap stack:
iload 3 /* checked */
ifeq 3
2: .line 81
iload 1 /* index */
aload 0 /* value */
invokestatic java.lang.StringUTF16.checkIndex:(I[B)V
3: .line 83
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 84
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 85
iload 3 /* checked */
ifeq 7
6: .line 86
iload 1 /* index */
aload 0 /* value */
invokestatic java.lang.StringUTF16.checkIndex:(I[B)V
7: .line 88
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 89
iload 5 /* c2 */
invokestatic java.lang.Character.isLowSurrogate:(C)Z
ifeq 10
9: .line 90
iload 4 /* c1 */
iload 5 /* c2 */
invokestatic java.lang.Character.toCodePoint:(CC)I
ireturn
end local 5 // char c2
10: .line 93
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 97
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 101
iinc 1 /* index */ -1
1: .line 102
iload 2 /* checked */
ifeq 3
2: .line 103
iload 1 /* index */
aload 0 /* value */
invokestatic java.lang.StringUTF16.checkIndex:(I[B)V
3: .line 105
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 106
iload 3 /* c2 */
invokestatic java.lang.Character.isLowSurrogate:(C)Z
ifeq 11
iload 1 /* index */
ifle 11
5: .line 107
iinc 1 /* index */ -1
6: .line 108
iload 2 /* checked */
ifeq 8
7: .line 109
iload 1 /* index */
aload 0 /* value */
invokestatic java.lang.StringUTF16.checkIndex:(I[B)V
8: .line 111
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 112
iload 4 /* c1 */
invokestatic java.lang.Character.isHighSurrogate:(C)Z
ifeq 11
10: .line 113
iload 4 /* c1 */
iload 3 /* c2 */
invokestatic java.lang.Character.toCodePoint:(CC)I
ireturn
end local 4 // char c1
11: .line 116
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 120
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 124
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 125
StackMap locals:
StackMap stack:
iload 2 /* endIndex */
iload 1 /* beginIndex */
isub
istore 4 /* count */
start local 4 // int count
2: .line 126
iload 1 /* beginIndex */
istore 5 /* i */
start local 5 // int i
3: .line 127
iload 3 /* checked */
ifeq 10
iload 5 /* i */
iload 2 /* endIndex */
if_icmpge 10
4: .line 128
iload 5 /* i */
iload 2 /* endIndex */
aload 0 /* value */
invokestatic java.lang.StringUTF16.checkBoundsBeginEnd:(II[B)V
5: .line 130
goto 10
6: .line 131
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 132
aload 0 /* value */
iload 5 /* i */
invokestatic java.lang.StringUTF16.getChar:([BI)C
invokestatic java.lang.Character.isLowSurrogate:(C)Z
ifeq 10
8: .line 133
iinc 4 /* count */ -1
9: .line 134
iinc 5 /* i */ 1
10: .line 130
StackMap locals:
StackMap stack:
iload 5 /* i */
iload 2 /* endIndex */
iconst_1
isub
if_icmplt 6
11: .line 137
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 141
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 145
aload 0 /* value */
arraylength
iconst_1
ishr
newarray 5
astore 1 /* dst */
start local 1 // char[] dst
1: .line 146
aload 0 /* value */
iconst_0
aload 1 /* dst */
arraylength
aload 1 /* dst */
iconst_0
invokestatic java.lang.StringUTF16.getChars:([BII[CI)V
2: .line 147
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 152
iload 2 /* len */
invokestatic java.lang.StringUTF16.newBytesFor:(I)[B
astore 3 /* val */
start local 3 // byte[] val
1: .line 153
iconst_0
istore 4 /* i */
start local 4 // int i
2: goto 6
3: .line 154
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 155
iinc 1 /* off */ 1
5: .line 153
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 157
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.vm.annotation.IntrinsicCandidate()
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 161
iload 2 /* len */
newarray 8
astore 3 /* ret */
start local 3 // byte[] ret
1: .line 162
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 163
aload 3 /* ret */
areturn
3: .line 165
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 169
iload 2 /* len */
newarray 8
astore 3 /* ret */
start local 3 // byte[] ret
1: .line 170
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 171
aload 3 /* ret */
areturn
3: .line 173
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 179
iconst_0
istore 5 /* i */
start local 5 // int i
1: goto 10
2: .line 180
StackMap locals: int
StackMap stack:
aload 0 /* src */
iload 1 /* srcOff */
caload
istore 6 /* c */
start local 6 // char c
3: .line 181
iload 6 /* c */
sipush 255
if_icmple 6
4: .line 182
iconst_0
istore 4 /* len */
5: .line 183
goto 11
6: .line 185
StackMap locals: int
StackMap stack:
aload 2 /* dst */
iload 3 /* dstOff */
iload 6 /* c */
i2b
bastore
7: .line 186
iinc 1 /* srcOff */ 1
8: .line 187
iinc 3 /* dstOff */ 1
end local 6 // char c
9: .line 179
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 189
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.vm.annotation.IntrinsicCandidate()
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 196
iload 1 /* srcOff */
iload 4 /* len */
aload 0 /* src */
invokestatic java.lang.StringUTF16.checkBoundsOffCount:(II[B)V
1: .line 197
iconst_0
istore 5 /* i */
start local 5 // int i
2: goto 11
3: .line 198
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 199
iload 6 /* c */
sipush 255
if_icmple 7
5: .line 200
iconst_0
istore 4 /* len */
6: .line 201
goto 12
7: .line 203
StackMap locals: int
StackMap stack:
aload 2 /* dst */
iload 3 /* dstOff */
iload 6 /* c */
i2b
bastore
8: .line 204
iinc 1 /* srcOff */ 1
9: .line 205
iinc 3 /* dstOff */ 1
end local 6 // char c
10: .line 197
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 207
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.vm.annotation.IntrinsicCandidate()
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 211
iload 1 /* index */
iload 2 /* len */
iadd
istore 3 /* end */
start local 3 // int end
1: .line 213
iload 2 /* len */
istore 4 /* n */
start local 4 // int n
2: .line 214
iload 1 /* index */
istore 5 /* i */
start local 5 // int i
3: goto 11
4: .line 215
StackMap locals: int int int
StackMap stack:
aload 0 /* val */
iload 5 /* i */
iaload
istore 6 /* cp */
start local 6 // int cp
5: .line 216
iload 6 /* cp */
invokestatic java.lang.Character.isBmpCodePoint:(I)Z
ifeq 7
6: .line 217
goto 10
7: .line 218
StackMap locals: int
StackMap stack:
iload 6 /* cp */
invokestatic java.lang.Character.isValidCodePoint:(I)Z
ifeq 9
8: .line 219
iinc 4 /* n */ 1
goto 10
9: .line 220
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 214
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 223
iload 4 /* n */
invokestatic java.lang.StringUTF16.newBytesFor:(I)[B
astore 5 /* buf */
start local 5 // byte[] buf
13: .line 224
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 225
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 226
iload 8 /* cp */
invokestatic java.lang.Character.isBmpCodePoint:(I)Z
ifeq 20
18: .line 227
aload 5 /* buf */
iload 7 /* j */
iload 8 /* cp */
invokestatic java.lang.StringUTF16.putChar:([BII)V
19: .line 228
goto 22
20: .line 229
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 230
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 224
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 233
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 237
iconst_2
newarray 8
astore 1 /* result */
start local 1 // byte[] result
1: .line 238
aload 1 /* result */
iconst_0
iload 0 /* c */
invokestatic java.lang.StringUTF16.putChar:([BII)V
2: .line 239
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 243
iconst_4
newarray 8
astore 1 /* result */
start local 1 // byte[] result
1: .line 244
aload 1 /* result */
iconst_0
iload 0 /* cp */
invokestatic java.lang.Character.highSurrogate:(I)C
invokestatic java.lang.StringUTF16.putChar:([BII)V
2: .line 245
aload 1 /* result */
iconst_1
iload 0 /* cp */
invokestatic java.lang.Character.lowSurrogate:(I)C
invokestatic java.lang.StringUTF16.putChar:([BII)V
3: .line 246
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 252
iload 1 /* srcBegin */
iload 2 /* srcEnd */
if_icmpge 2
1: .line 253
iload 1 /* srcBegin */
iload 2 /* srcEnd */
iload 1 /* srcBegin */
isub
aload 0 /* value */
invokestatic java.lang.StringUTF16.checkBoundsOffCount:(II[B)V
2: .line 255
StackMap locals:
StackMap stack:
iload 1 /* srcBegin */
istore 5 /* i */
start local 5 // int i
3: goto 6
4: .line 256
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 255
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 258
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.vm.annotation.IntrinsicCandidate()
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 262
iload 1 /* srcBegin */
iconst_1
ishl
istore 1 /* srcBegin */
1: .line 263
iload 2 /* srcEnd */
iconst_1
ishl
istore 2 /* srcEnd */
2: .line 264
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 265
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 264
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 267
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 271
aload 0 /* value */
arraylength
aload 1 /* other */
arraylength
if_icmpne 9
1: .line 272
aload 0 /* value */
arraylength
iconst_1
ishr
istore 2 /* len */
start local 2 // int len
2: .line 273
iconst_0
istore 3 /* i */
start local 3 // int i
3: goto 7
4: .line 274
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 275
iconst_0
ireturn
6: .line 273
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 278
iconst_1
ireturn
end local 2 // int len
9: .line 280
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.vm.annotation.IntrinsicCandidate()
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 285
aload 0 /* value */
invokestatic java.lang.StringUTF16.length:([B)I
istore 2 /* len1 */
start local 2 // int len1
1: .line 286
aload 1 /* other */
invokestatic java.lang.StringUTF16.length:([B)I
istore 3 /* len2 */
start local 3 // int len2
2: .line 287
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.vm.annotation.IntrinsicCandidate()
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 294
iload 2 /* len1 */
aload 0 /* value */
invokestatic java.lang.StringUTF16.checkOffset:(I[B)V
1: .line 295
iload 3 /* len2 */
aload 1 /* other */
invokestatic java.lang.StringUTF16.checkOffset:(I[B)V
2: .line 297
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 301
iload 2 /* len1 */
iload 3 /* len2 */
invokestatic java.lang.Math.min:(II)I
istore 4 /* lim */
start local 4 // int lim
1: .line 302
iconst_0
istore 5 /* k */
start local 5 // int k
2: goto 8
3: .line 303
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 304
aload 1 /* other */
iload 5 /* k */
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 7 /* c2 */
start local 7 // char c2
5: .line 305
iload 6 /* c1 */
iload 7 /* c2 */
if_icmpeq 7
6: .line 306
iload 6 /* c1 */
iload 7 /* c2 */
isub
ireturn
end local 7 // char c2
end local 6 // char c1
7: .line 302
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 309
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 314
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.vm.annotation.IntrinsicCandidate()
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 318
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=6, locals=2, args_size=2
start local 0 // byte[] value
start local 1 // byte[] other
0: .line 322
aload 0 /* value */
iconst_0
aload 0 /* value */
invokestatic java.lang.StringUTF16.length:([B)I
aload 1 /* other */
iconst_0
aload 1 /* other */
invokestatic java.lang.StringUTF16.length:([B)I
invokestatic java.lang.StringUTF16.compareToCIImpl:([BII[BII)I
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
private static int compareToCIImpl(byte[], int, int, byte[], int, int);
descriptor: ([BII[BII)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=13, args_size=6
start local 0 // byte[] value
start local 1 // int toffset
start local 2 // int tlen
start local 3 // byte[] other
start local 4 // int ooffset
start local 5 // int olen
0: .line 327
iload 1 /* toffset */
iload 2 /* tlen */
iadd
istore 6 /* tlast */
start local 6 // int tlast
1: .line 328
iload 4 /* ooffset */
iload 5 /* olen */
iadd
istore 7 /* olast */
start local 7 // int olast
2: .line 329
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 4
iload 1 /* toffset */
iflt 3
iload 4 /* ooffset */
ifge 4
StackMap locals: int int
StackMap stack:
3: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
4: .line 330
StackMap locals:
StackMap stack:
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 5
iload 6 /* tlast */
aload 0 /* value */
invokestatic java.lang.StringUTF16.length:([B)I
if_icmple 5
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
5: .line 331
StackMap locals:
StackMap stack:
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 6
iload 7 /* olast */
aload 3 /* other */
invokestatic java.lang.StringUTF16.length:([B)I
if_icmple 6
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
6: .line 333
StackMap locals:
StackMap stack:
iload 1 /* toffset */
istore 8 /* k1 */
start local 8 // int k1
7: iload 4 /* ooffset */
istore 9 /* k2 */
start local 9 // int k2
8: goto 25
9: .line 334
StackMap locals: int int
StackMap stack:
aload 0 /* value */
iload 8 /* k1 */
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 10 /* cp1 */
start local 10 // int cp1
10: .line 335
aload 3 /* other */
iload 9 /* k2 */
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 11 /* cp2 */
start local 11 // int cp2
11: .line 337
iload 10 /* cp1 */
iload 11 /* cp2 */
if_icmpeq 24
iload 10 /* cp1 */
iload 11 /* cp2 */
invokestatic java.lang.StringUTF16.compareCodePointCI:(II)I
ifne 13
12: .line 338
goto 24
13: .line 342
StackMap locals: int int
StackMap stack:
aload 0 /* value */
iload 10 /* cp1 */
iload 8 /* k1 */
iload 1 /* toffset */
iload 6 /* tlast */
invokestatic java.lang.StringUTF16.codePointIncluding:([BIIII)I
istore 10 /* cp1 */
14: .line 343
iload 10 /* cp1 */
ifge 17
15: .line 344
iinc 8 /* k1 */ 1
16: .line 345
iload 10 /* cp1 */
iload 10 /* cp1 */
isub
istore 10 /* cp1 */
17: .line 347
StackMap locals:
StackMap stack:
aload 3 /* other */
iload 11 /* cp2 */
iload 9 /* k2 */
iload 4 /* ooffset */
iload 7 /* olast */
invokestatic java.lang.StringUTF16.codePointIncluding:([BIIII)I
istore 11 /* cp2 */
18: .line 348
iload 11 /* cp2 */
ifge 21
19: .line 349
iinc 9 /* k2 */ 1
20: .line 350
iload 11 /* cp2 */
iload 11 /* cp2 */
isub
istore 11 /* cp2 */
21: .line 353
StackMap locals:
StackMap stack:
iload 10 /* cp1 */
iload 11 /* cp2 */
invokestatic java.lang.StringUTF16.compareCodePointCI:(II)I
istore 12 /* diff */
start local 12 // int diff
22: .line 354
iload 12 /* diff */
ifeq 24
23: .line 355
iload 12 /* diff */
ireturn
end local 12 // int diff
end local 11 // int cp2
end local 10 // int cp1
24: .line 333
StackMap locals:
StackMap stack:
iinc 8 /* k1 */ 1
iinc 9 /* k2 */ 1
StackMap locals:
StackMap stack:
25: iload 8 /* k1 */
iload 6 /* tlast */
if_icmpge 26
iload 9 /* k2 */
iload 7 /* olast */
if_icmplt 9
end local 9 // int k2
end local 8 // int k1
26: .line 358
StackMap locals:
StackMap stack:
iload 2 /* tlen */
iload 5 /* olen */
isub
ireturn
end local 7 // int olast
end local 6 // int tlast
end local 5 // int olen
end local 4 // int ooffset
end local 3 // byte[] other
end local 2 // int tlen
end local 1 // int toffset
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 27 0 value [B
0 27 1 toffset I
0 27 2 tlen I
0 27 3 other [B
0 27 4 ooffset I
0 27 5 olen I
1 27 6 tlast I
2 27 7 olast I
7 26 8 k1 I
8 26 9 k2 I
10 24 10 cp1 I
11 24 11 cp2 I
22 24 12 diff I
MethodParameters:
Name Flags
value
toffset
tlen
other
ooffset
olen
private static int compareCodePointCI(int, int);
descriptor: (II)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 // int cp1
start local 1 // int cp2
0: .line 366
iload 0 /* cp1 */
invokestatic java.lang.Character.toUpperCase:(I)I
istore 0 /* cp1 */
1: .line 367
iload 1 /* cp2 */
invokestatic java.lang.Character.toUpperCase:(I)I
istore 1 /* cp2 */
2: .line 368
iload 0 /* cp1 */
iload 1 /* cp2 */
if_icmpeq 7
3: .line 373
iload 0 /* cp1 */
invokestatic java.lang.Character.toLowerCase:(I)I
istore 0 /* cp1 */
4: .line 374
iload 1 /* cp2 */
invokestatic java.lang.Character.toLowerCase:(I)I
istore 1 /* cp2 */
5: .line 375
iload 0 /* cp1 */
iload 1 /* cp2 */
if_icmpeq 7
6: .line 376
iload 0 /* cp1 */
iload 1 /* cp2 */
isub
ireturn
7: .line 379
StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 // int cp2
end local 0 // int cp1
LocalVariableTable:
Start End Slot Name Signature
0 8 0 cp1 I
0 8 1 cp2 I
MethodParameters:
Name Flags
cp1
cp2
private static int codePointIncluding(byte[], int, int, int, int);
descriptor: ([BIIII)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=6, args_size=5
start local 0 // byte[] ba
start local 1 // int cp
start local 2 // int index
start local 3 // int start
start local 4 // int end
0: .line 390
iload 1 /* cp */
i2c
invokestatic java.lang.Character.isSurrogate:(C)Z
ifne 2
1: .line 391
iload 1 /* cp */
ireturn
2: .line 393
StackMap locals:
StackMap stack:
iload 1 /* cp */
i2c
invokestatic java.lang.Character.isLowSurrogate:(C)Z
ifeq 7
3: .line 394
iload 2 /* index */
iload 3 /* start */
if_icmple 11
4: .line 395
aload 0 /* ba */
iload 2 /* index */
iconst_1
isub
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 5 /* c */
start local 5 // char c
5: .line 396
iload 5 /* c */
invokestatic java.lang.Character.isHighSurrogate:(C)Z
ifeq 11
6: .line 397
iload 5 /* c */
iload 1 /* cp */
i2c
invokestatic java.lang.Character.toCodePoint:(CC)I
ireturn
end local 5 // char c
7: .line 400
StackMap locals:
StackMap stack:
iload 2 /* index */
iconst_1
iadd
iload 4 /* end */
if_icmpge 11
8: .line 401
aload 0 /* ba */
iload 2 /* index */
iconst_1
iadd
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 5 /* c */
start local 5 // char c
9: .line 402
iload 5 /* c */
invokestatic java.lang.Character.isLowSurrogate:(C)Z
ifeq 11
10: .line 404
iload 1 /* cp */
i2c
iload 5 /* c */
invokestatic java.lang.Character.toCodePoint:(CC)I
ineg
ireturn
end local 5 // char c
11: .line 407
StackMap locals:
StackMap stack:
iload 1 /* cp */
ireturn
end local 4 // int end
end local 3 // int start
end local 2 // int index
end local 1 // int cp
end local 0 // byte[] ba
LocalVariableTable:
Start End Slot Name Signature
0 12 0 ba [B
0 12 1 cp I
0 12 2 index I
0 12 3 start I
0 12 4 end I
5 7 5 c C
9 11 5 c C
MethodParameters:
Name Flags
ba
cp
index
start
end
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 411
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 415
iconst_0
istore 1 /* h */
start local 1 // int h
1: .line 416
aload 0 /* value */
arraylength
iconst_1
ishr
istore 2 /* length */
start local 2 // int length
2: .line 417
iconst_0
istore 3 /* i */
start local 3 // int i
3: goto 6
4: .line 418
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 417
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 420
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 424
aload 0 /* value */
arraylength
iconst_1
ishr
istore 3 /* max */
start local 3 // int max
1: .line 425
iload 2 /* fromIndex */
ifge 4
2: .line 426
iconst_0
istore 2 /* fromIndex */
3: .line 427
goto 6
StackMap locals: int
StackMap stack:
4: iload 2 /* fromIndex */
iload 3 /* max */
if_icmplt 6
5: .line 429
iconst_m1
ireturn
6: .line 431
StackMap locals:
StackMap stack:
iload 1 /* ch */
ldc 65536
if_icmpge 8
7: .line 434
aload 0 /* value */
iload 1 /* ch */
iload 2 /* fromIndex */
iload 3 /* max */
invokestatic java.lang.StringUTF16.indexOfChar:([BIII)I
ireturn
8: .line 436
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 442
aload 1 /* str */
arraylength
ifne 2
1: .line 443
iconst_0
ireturn
2: .line 445
StackMap locals:
StackMap stack:
aload 0 /* value */
arraylength
aload 1 /* str */
arraylength
if_icmpge 4
3: .line 446
iconst_m1
ireturn
4: .line 448
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.vm.annotation.IntrinsicCandidate()
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 453
iload 4 /* fromIndex */
iload 1 /* valueCount */
aload 0 /* value */
invokestatic java.lang.StringUTF16.checkBoundsBeginEnd:(II[B)V
1: .line 454
iconst_0
iload 3 /* strCount */
aload 2 /* str */
invokestatic java.lang.StringUTF16.checkBoundsBeginEnd:(II[B)V
2: .line 455
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.vm.annotation.IntrinsicCandidate()
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 460
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 461
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 462
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 463
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 464
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 465
iload 1 /* valueCount */
iload 3 /* strCount */
isub
istore 6 /* max */
start local 6 // int max
6: .line 466
iload 4 /* fromIndex */
istore 7 /* i */
start local 7 // int i
7: goto 20
8: .line 468
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 469
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 472
StackMap locals:
StackMap stack:
iload 7 /* i */
iload 6 /* max */
if_icmpgt 19
11: .line 473
iload 7 /* i */
iconst_1
iadd
istore 8 /* j */
start local 8 // int j
12: .line 474
iload 8 /* j */
iload 3 /* strCount */
iadd
iconst_1
isub
istore 9 /* end */
start local 9 // int end
13: .line 475
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 476
StackMap locals:
StackMap stack:
iload 8 /* j */
iload 9 /* end */
if_icmpne 19
18: .line 478
iload 7 /* i */
ireturn
end local 9 // int end
end local 8 // int j
19: .line 466
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 482
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 491
aload 1 /* str */
arraylength
ifne 2
1: .line 492
iconst_0
ireturn
2: .line 494
StackMap locals:
StackMap stack:
aload 0 /* value */
invokestatic java.lang.StringUTF16.length:([B)I
aload 1 /* str */
arraylength
if_icmpge 4
3: .line 495
iconst_m1
ireturn
4: .line 497
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.vm.annotation.IntrinsicCandidate()
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 502
iload 4 /* fromIndex */
iload 1 /* srcCount */
aload 0 /* src */
invokestatic java.lang.StringUTF16.checkBoundsBeginEnd:(II[B)V
1: .line 503
iconst_0
iload 3 /* tgtCount */
aload 2 /* tgt */
arraylength
invokestatic java.lang.String.checkBoundsBeginEnd:(III)V
2: .line 504
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.vm.annotation.IntrinsicCandidate()
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 508
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 509
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 510
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 511
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 512
StackMap locals:
StackMap stack:
aload 2 /* tgt */
iconst_0
baload
sipush 255
iand
i2c
istore 5 /* first */
start local 5 // char first
5: .line 513
iload 1 /* srcCount */
iload 3 /* tgtCount */
isub
istore 6 /* max */
start local 6 // int max
6: .line 514
iload 4 /* fromIndex */
istore 7 /* i */
start local 7 // int i
7: goto 20
8: .line 516
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 517
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 520
StackMap locals:
StackMap stack:
iload 7 /* i */
iload 6 /* max */
if_icmpgt 19
11: .line 521
iload 7 /* i */
iconst_1
iadd
istore 8 /* j */
start local 8 // int j
12: .line 522
iload 8 /* j */
iload 3 /* tgtCount */
iadd
iconst_1
isub
istore 9 /* end */
start local 9 // int end
13: .line 523
iconst_1
istore 10 /* k */
start local 10 // int k
14: .line 524
goto 16
15: .line 525
StackMap locals: int int int
StackMap stack:
iinc 8 /* j */ 1
iinc 10 /* k */ 1
16: .line 524
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 526
StackMap locals:
StackMap stack:
iload 8 /* j */
iload 9 /* end */
if_icmpne 19
18: .line 528
iload 7 /* i */
ireturn
end local 9 // int end
end local 8 // int j
19: .line 514
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 532
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 537
iload 2 /* fromIndex */
iload 3 /* max */
aload 0 /* value */
invokestatic java.lang.StringUTF16.checkBoundsBeginEnd:(II[B)V
1: .line 538
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.vm.annotation.IntrinsicCandidate()
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 542
iload 2 /* fromIndex */
istore 4 /* i */
start local 4 // int i
1: goto 5
2: .line 543
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 544
iload 4 /* i */
ireturn
4: .line 542
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 547
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 554
iload 1 /* ch */
invokestatic java.lang.Character.isValidCodePoint:(I)Z
ifeq 10
1: .line 555
iload 1 /* ch */
invokestatic java.lang.Character.highSurrogate:(I)C
istore 4 /* hi */
start local 4 // char hi
2: .line 556
iload 1 /* ch */
invokestatic java.lang.Character.lowSurrogate:(I)C
istore 5 /* lo */
start local 5 // char lo
3: .line 557
iload 2 /* fromIndex */
iload 3 /* max */
aload 0 /* value */
invokestatic java.lang.StringUTF16.checkBoundsBeginEnd:(II[B)V
4: .line 558
iload 2 /* fromIndex */
istore 6 /* i */
start local 6 // int i
5: goto 9
6: .line 559
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 560
iload 6 /* i */
ireturn
8: .line 558
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 564
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 570
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 571
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 572
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 573
StackMap locals:
StackMap stack:
iload 3 /* tgtCount */
iconst_1
isub
istore 5 /* min */
start local 5 // int min
4: .line 574
iload 5 /* min */
iload 4 /* fromIndex */
iadd
istore 6 /* i */
start local 6 // int i
5: .line 575
iload 3 /* tgtCount */
iconst_1
isub
istore 7 /* strLastIndex */
start local 7 // int strLastIndex
6: .line 577
iload 7 /* strLastIndex */
aload 2 /* tgt */
invokestatic java.lang.StringUTF16.checkIndex:(I[B)V
7: .line 578
aload 2 /* tgt */
iload 7 /* strLastIndex */
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 8 /* strLastChar */
start local 8 // char strLastChar
8: .line 580
iload 6 /* i */
aload 0 /* src */
invokestatic java.lang.StringUTF16.checkIndex:(I[B)V
9: .line 584
goto 11
10: .line 585
StackMap locals: byte[] int byte[] int int int int int int
StackMap stack:
iinc 6 /* i */ -1
11: .line 584
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 587
StackMap locals:
StackMap stack:
iload 6 /* i */
iload 5 /* min */
if_icmpge 14
13: .line 588
iconst_m1
ireturn
14: .line 590
StackMap locals:
StackMap stack:
iload 6 /* i */
iconst_1
isub
istore 9 /* j */
start local 9 // int j
15: .line 591
iload 9 /* j */
iload 7 /* strLastIndex */
isub
istore 10 /* start */
start local 10 // int start
16: .line 592
iload 7 /* strLastIndex */
iconst_1
isub
istore 11 /* k */
start local 11 // int k
17: .line 593
goto 21
18: .line 594
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 595
iinc 6 /* i */ -1
20: .line 596
goto 23
21: .line 593
StackMap locals:
StackMap stack:
iload 9 /* j */
iload 10 /* start */
if_icmpgt 18
22: .line 599
iload 10 /* start */
iconst_1
iadd
ireturn
end local 11 // int k
end local 10 // int start
end local 9 // int j
23: .line 583
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 604
iload 1 /* ch */
ldc 65536
if_icmpge 8
1: .line 607
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 608
goto 6
3: .line 609
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 610
iload 3 /* i */
ireturn
5: .line 608
StackMap locals:
StackMap stack:
iinc 3 /* i */ -1
StackMap locals:
StackMap stack:
6: iload 3 /* i */
ifge 3
7: .line 613
iconst_m1
ireturn
end local 3 // int i
8: .line 615
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 623
iload 1 /* ch */
invokestatic java.lang.Character.isValidCodePoint:(I)Z
ifeq 9
1: .line 624
iload 1 /* ch */
invokestatic java.lang.Character.highSurrogate:(I)C
istore 3 /* hi */
start local 3 // char hi
2: .line 625
iload 1 /* ch */
invokestatic java.lang.Character.lowSurrogate:(I)C
istore 4 /* lo */
start local 4 // char lo
3: .line 626
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 627
goto 8
5: .line 628
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 629
iload 5 /* i */
ireturn
7: .line 627
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 633
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 637
aload 0 /* value */
arraylength
iconst_1
ishr
istore 3 /* len */
start local 3 // int len
1: .line 638
iconst_m1
istore 4 /* i */
start local 4 // int i
2: .line 639
goto 5
3: .line 640
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 641
goto 6
5: .line 639
StackMap locals:
StackMap stack:
iinc 4 /* i */ 1
iload 4 /* i */
iload 3 /* len */
if_icmplt 3
6: .line 644
StackMap locals:
StackMap stack:
iload 4 /* i */
iload 3 /* len */
if_icmpge 27
7: .line 645
aload 0 /* value */
arraylength
newarray 8
astore 5 /* buf */
start local 5 // byte[] buf
8: .line 646
iconst_0
istore 6 /* j */
start local 6 // int j
9: goto 12
10: .line 647
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 646
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 649
goto 19
14: .line 650
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 651
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 652
iinc 4 /* i */ 1
end local 6 // char c
19: .line 649
StackMap locals:
StackMap stack:
iload 4 /* i */
iload 3 /* len */
if_icmplt 14
20: .line 655
getstatic java.lang.String.COMPACT_STRINGS:Z
ifeq 26
21: .line 656
iload 1 /* oldChar */
invokestatic java.lang.StringLatin1.canEncode:(I)Z
ifne 26
22: .line 657
iload 2 /* newChar */
invokestatic java.lang.StringLatin1.canEncode:(I)Z
ifeq 26
23: .line 658
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 659
aload 6 /* val */
ifnull 26
25: .line 660
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 663
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 665
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 java.lang.String replace(byte[], int, boolean, byte[], int, boolean, byte[], int, boolean);
descriptor: ([BIZ[BIZ[BIZ)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=21, args_size=9
start local 0 // byte[] value
start local 1 // int valLen
start local 2 // boolean valLat1
start local 3 // byte[] targ
start local 4 // int targLen
start local 5 // boolean targLat1
start local 6 // byte[] repl
start local 7 // int replLen
start local 8 // boolean replLat1
0: .line 672
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 1
iload 4 /* targLen */
ifgt 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: .line 673
StackMap locals:
StackMap stack:
getstatic java.lang.StringUTF16.$assertionsDisabled:Z
ifne 2
iload 2 /* valLat1 */
ifeq 2
iload 5 /* targLat1 */
ifeq 2
iload 8 /* replLat1 */
ifeq 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: .line 694
StackMap locals:
StackMap stack:
getstatic java.lang.String.COMPACT_STRINGS:Z
ifeq 4
iload 2 /* valLat1 */
ifeq 4
iload 5 /* targLat1 */
ifne 4
3: .line 696
aconst_null
areturn
4: .line 699
StackMap locals:
StackMap stack:
getstatic java.lang.String.COMPACT_STRINGS:Z
ifeq 6
iload 2 /* valLat1 */
ifeq 6
5: .line 700
aload 0 /* value */
aload 3 /* targ */
invokestatic java.lang.StringLatin1.indexOf:([B[B)I
goto 9
6: .line 701
StackMap locals:
StackMap stack:
getstatic java.lang.String.COMPACT_STRINGS:Z
ifeq 8
iload 5 /* targLat1 */
ifeq 8
7: .line 702
aload 0 /* value */
aload 3 /* targ */
invokestatic java.lang.StringUTF16.indexOfLatin1:([B[B)I
goto 9
8: .line 703
StackMap locals:
StackMap stack:
aload 0 /* value */
aload 3 /* targ */
invokestatic java.lang.StringUTF16.indexOf:([B[B)I
9: .line 699
StackMap locals:
StackMap stack: int
istore 9 /* i */
start local 9 // int i
10: .line 704
iload 9 /* i */
ifge 12
11: .line 705
aconst_null
areturn
12: .line 709
StackMap locals: int
StackMap stack:
iconst_0
istore 11 /* p */
start local 11 // int p
13: .line 710
bipush 16
newarray 10
astore 12 /* pos */
start local 12 // int[] pos
14: .line 711
aload 12 /* pos */
iconst_0
iload 9 /* i */
iastore
15: .line 712
iload 9 /* i */
iload 4 /* targLen */
iadd
istore 9 /* i */
16: .line 713
goto 21
start local 10 // int j
17: .line 719
StackMap locals: int int int[]
StackMap stack:
iinc 11 /* p */ 1
iload 11 /* p */
aload 12 /* pos */
arraylength
if_icmpne 19
18: .line 720
aload 12 /* pos */
iload 11 /* p */
iconst_1
iload 11 /* p */
iconst_1
ishr
invokestatic jdk.internal.util.ArraysSupport.newLength:(III)I
invokestatic java.util.Arrays.copyOf:([II)[I
astore 12 /* pos */
19: .line 722
StackMap locals:
StackMap stack:
aload 12 /* pos */
iload 11 /* p */
iload 10 /* j */
iastore
20: .line 723
iload 10 /* j */
iload 4 /* targLen */
iadd
istore 9 /* i */
end local 10 // int j
21: .line 713
StackMap locals: byte[] int int byte[] int int byte[] int int int top int int[]
StackMap stack:
getstatic java.lang.String.COMPACT_STRINGS:Z
ifeq 23
iload 2 /* valLat1 */
ifeq 23
22: .line 714
aload 0 /* value */
iload 1 /* valLen */
aload 3 /* targ */
iload 4 /* targLen */
iload 9 /* i */
invokestatic java.lang.StringLatin1.indexOf:([BI[BII)I
goto 26
23: .line 715
StackMap locals:
StackMap stack:
getstatic java.lang.String.COMPACT_STRINGS:Z
ifeq 25
iload 5 /* targLat1 */
ifeq 25
24: .line 716
aload 0 /* value */
iload 1 /* valLen */
aload 3 /* targ */
iload 4 /* targLen */
iload 9 /* i */
invokestatic java.lang.StringUTF16.indexOfLatin1:([BI[BII)I
goto 26
25: .line 717
StackMap locals:
StackMap stack:
aload 0 /* value */
iload 1 /* valLen */
aload 3 /* targ */
iload 4 /* targLen */
iload 9 /* i */
invokestatic java.lang.StringUTF16.indexOf:([BI[BII)I
26: .line 713
StackMap locals:
StackMap stack: int
dup
istore 10 /* j */
start local 10 // int j
27: ifgt 17
28: .line 728
iload 1 /* valLen */
29: .line 729
iinc 11 /* p */ 1
iload 11 /* p */
iload 7 /* replLen */
iload 4 /* targLen */
isub
invokestatic java.lang.Math.multiplyExact:(II)I
30: .line 728
invokestatic java.lang.Math.addExact:(II)I
istore 13 /* resultLen */
start local 13 // int resultLen
31: .line 730
goto 34
end local 13 // int resultLen
StackMap locals: byte[] int int byte[] int int byte[] int int int int int int[]
StackMap stack: java.lang.ArithmeticException
32: pop
33: .line 731
new java.lang.OutOfMemoryError
dup
ldc "Required length exceeds implementation limit"
invokespecial java.lang.OutOfMemoryError.<init>:(Ljava/lang/String;)V
athrow
start local 13 // int resultLen
34: .line 733
StackMap locals: int
StackMap stack:
iload 13 /* resultLen */
ifne 36
35: .line 734
ldc ""
areturn
36: .line 737
StackMap locals:
StackMap stack:
iload 13 /* resultLen */
invokestatic java.lang.StringUTF16.newBytesFor:(I)[B
astore 14 /* result */
start local 14 // byte[] result
37: .line 738
iconst_0
istore 15 /* posFrom */
start local 15 // int posFrom
38: iconst_0
istore 16 /* posTo */
start local 16 // int posTo
39: .line 739
iconst_0
istore 17 /* q */
start local 17 // int q
40: goto 65
41: .line 740
StackMap locals: byte[] int int byte[] int int byte[] int int int int int int[] int byte[] int int int
StackMap stack:
aload 12 /* pos */
iload 17 /* q */
iaload
istore 18 /* nextPos */
start local 18 // int nextPos
42: .line 741
getstatic java.lang.String.COMPACT_STRINGS:Z
ifeq 49
iload 2 /* valLat1 */
ifeq 49
43: .line 742
goto 46
44: .line 743
StackMap locals: int
StackMap stack:
aload 0 /* value */
iload 15 /* posFrom */
iinc 15 /* posFrom */ 1
baload
sipush 255
iand
i2c
istore 19 /* c */
start local 19 // char c
45: .line 744
aload 14 /* result */
iload 16 /* posTo */
iinc 16 /* posTo */ 1
iload 19 /* c */
invokestatic java.lang.StringUTF16.putChar:([BII)V
end local 19 // char c
46: .line 742
StackMap locals:
StackMap stack:
iload 15 /* posFrom */
iload 18 /* nextPos */
if_icmplt 44
47: .line 746
goto 50
48: .line 748
StackMap locals:
StackMap stack:
aload 14 /* result */
iload 16 /* posTo */
iinc 16 /* posTo */ 1
aload 0 /* value */
iload 15 /* posFrom */
iinc 15 /* posFrom */ 1
invokestatic java.lang.StringUTF16.getChar:([BI)C
invokestatic java.lang.StringUTF16.putChar:([BII)V
49: .line 747
StackMap locals:
StackMap stack:
iload 15 /* posFrom */
iload 18 /* nextPos */
if_icmplt 48
50: .line 751
StackMap locals:
StackMap stack:
iload 15 /* posFrom */
iload 4 /* targLen */
iadd
istore 15 /* posFrom */
51: .line 752
getstatic java.lang.String.COMPACT_STRINGS:Z
ifeq 59
iload 8 /* replLat1 */
ifeq 59
52: .line 753
iconst_0
istore 19 /* k */
start local 19 // int k
53: goto 57
54: .line 754
StackMap locals: int
StackMap stack:
aload 6 /* repl */
iload 19 /* k */
baload
sipush 255
iand
i2c
istore 20 /* c */
start local 20 // char c
55: .line 755
aload 14 /* result */
iload 16 /* posTo */
iinc 16 /* posTo */ 1
iload 20 /* c */
invokestatic java.lang.StringUTF16.putChar:([BII)V
end local 20 // char c
56: .line 753
iinc 19 /* k */ 1
StackMap locals:
StackMap stack:
57: iload 19 /* k */
iload 7 /* replLen */
if_icmplt 54
end local 19 // int k
58: .line 757
goto 64
59: .line 758
StackMap locals:
StackMap stack:
iconst_0
istore 19 /* k */
start local 19 // int k
60: goto 63
61: .line 759
StackMap locals: int
StackMap stack:
aload 14 /* result */
iload 16 /* posTo */
iinc 16 /* posTo */ 1
aload 6 /* repl */
iload 19 /* k */
invokestatic java.lang.StringUTF16.getChar:([BI)C
invokestatic java.lang.StringUTF16.putChar:([BII)V
62: .line 758
iinc 19 /* k */ 1
StackMap locals:
StackMap stack:
63: iload 19 /* k */
iload 7 /* replLen */
if_icmplt 61
end local 19 // int k
end local 18 // int nextPos
64: .line 739
StackMap locals:
StackMap stack:
iinc 17 /* q */ 1
StackMap locals:
StackMap stack:
65: iload 17 /* q */
iload 11 /* p */
if_icmplt 41
end local 17 // int q
66: .line 763
getstatic java.lang.String.COMPACT_STRINGS:Z
ifeq 73
iload 2 /* valLat1 */
ifeq 73
67: .line 764
goto 70
68: .line 765
StackMap locals:
StackMap stack:
aload 0 /* value */
iload 15 /* posFrom */
iinc 15 /* posFrom */ 1
baload
sipush 255
iand
i2c
istore 17 /* c */
start local 17 // char c
69: .line 766
aload 14 /* result */
iload 16 /* posTo */
iinc 16 /* posTo */ 1
iload 17 /* c */
invokestatic java.lang.StringUTF16.putChar:([BII)V
end local 17 // char c
70: .line 764
StackMap locals:
StackMap stack:
iload 15 /* posFrom */
iload 1 /* valLen */
if_icmplt 68
71: .line 768
goto 74
72: .line 770
StackMap locals:
StackMap stack:
aload 14 /* result */
iload 16 /* posTo */
iinc 16 /* posTo */ 1
aload 0 /* value */
iload 15 /* posFrom */
iinc 15 /* posFrom */ 1
invokestatic java.lang.StringUTF16.getChar:([BI)C
invokestatic java.lang.StringUTF16.putChar:([BII)V
73: .line 769
StackMap locals:
StackMap stack:
iload 15 /* posFrom */
iload 1 /* valLen */
if_icmplt 72
74: .line 774
StackMap locals:
StackMap stack:
getstatic java.lang.String.COMPACT_STRINGS:Z
ifeq 78
iload 8 /* replLat1 */
ifeq 78
iload 5 /* targLat1 */
ifne 78
75: .line 776
aload 14 /* result */
iconst_0
iload 13 /* resultLen */
invokestatic java.lang.StringUTF16.compress:([BII)[B
astore 17 /* lat1Result */
start local 17 // byte[] lat1Result
76: .line 777
aload 17 /* lat1Result */
ifnull 78
77: .line 778
new java.lang.String
dup
aload 17 /* lat1Result */
iconst_0
invokespecial java.lang.String.<init>:([BB)V
areturn
end local 17 // byte[] lat1Result
78: .line 781
StackMap locals:
StackMap stack:
new java.lang.String
dup
aload 14 /* result */
iconst_1
invokespecial java.lang.String.<init>:([BB)V
areturn
end local 16 // int posTo
end local 15 // int posFrom
end local 14 // byte[] result
end local 13 // int resultLen
end local 12 // int[] pos
end local 11 // int p
end local 10 // int j
end local 9 // int i
end local 8 // boolean replLat1
end local 7 // int replLen
end local 6 // byte[] repl
end local 5 // boolean targLat1
end local 4 // int targLen
end local 3 // byte[] targ
end local 2 // boolean valLat1
end local 1 // int valLen
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 79 0 value [B
0 79 1 valLen I
0 79 2 valLat1 Z
0 79 3 targ [B
0 79 4 targLen I
0 79 5 targLat1 Z
0 79 6 repl [B
0 79 7 replLen I
0 79 8 replLat1 Z
10 79 9 i I
17 21 10 j I
27 79 10 j I
13 79 11 p I
14 79 12 pos [I
31 32 13 resultLen I
34 79 13 resultLen I
37 79 14 result [B
38 79 15 posFrom I
39 79 16 posTo I
40 66 17 q I
42 64 18 nextPos I
45 46 19 c C
53 58 19 k I
55 56 20 c C
60 64 19 k I
69 70 17 c C
76 78 17 lat1Result [B
Exception table:
from to target type
28 31 32 Class java.lang.ArithmeticException
MethodParameters:
Name Flags
value
valLen
valLat1
targ
targLen
targLat1
repl
replLen
replLat1
public static boolean regionMatchesCI(byte[], int, byte[], int, int);
descriptor: ([BI[BII)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, 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 786
aload 0 /* value */
iload 1 /* toffset */
iload 4 /* len */
aload 2 /* other */
iload 3 /* ooffset */
iload 4 /* len */
invokestatic java.lang.StringUTF16.compareToCIImpl:([BII[BII)I
ifne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
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 2 0 value [B
0 2 1 toffset I
0 2 2 other [B
0 2 3 ooffset I
0 2 4 len I
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 792
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 796
aload 2 /* locale */
ifnonnull 2
1: .line 797
new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: .line 800
StackMap locals:
StackMap stack:
iconst_0
istore 4 /* hasSurr */
start local 4 // boolean hasSurr
3: .line 801
aload 1 /* value */
arraylength
iconst_1
ishr
istore 5 /* len */
start local 5 // int len
4: .line 804
iconst_0
istore 3 /* first */
start local 3 // int first
5: goto 13
6: .line 805
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 806
iload 6 /* cp */
i2c
invokestatic java.lang.Character.isSurrogate:(C)Z
ifeq 10
8: .line 807
iconst_1
istore 4 /* hasSurr */
9: .line 808
goto 14
10: .line 810
StackMap locals: int
StackMap stack:
iload 6 /* cp */
iload 6 /* cp */
invokestatic java.lang.Character.toLowerCase:(I)I
if_icmpeq 12
11: .line 811
goto 14
end local 6 // int cp
12: .line 804
StackMap locals:
StackMap stack:
iinc 3 /* first */ 1
StackMap locals:
StackMap stack:
13: iload 3 /* first */
iload 5 /* len */
if_icmplt 6
14: .line 814
StackMap locals:
StackMap stack:
iload 3 /* first */
iload 5 /* len */
if_icmpne 16
15: .line 815
aload 0 /* str */
areturn
16: .line 816
StackMap locals:
StackMap stack:
aload 1 /* value */
arraylength
newarray 8
astore 6 /* result */
start local 6 // byte[] result
17: .line 817
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 819
aload 2 /* locale */
invokevirtual java.util.Locale.getLanguage:()Ljava/lang/String;
astore 7 /* lang */
start local 7 // java.lang.String lang
19: .line 820
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 821
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 823
StackMap locals:
StackMap stack:
iload 4 /* hasSurr */
ifeq 23
22: .line 824
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 826
StackMap locals:
StackMap stack:
iconst_0
istore 8 /* bits */
start local 8 // int bits
24: .line 827
iload 3 /* first */
istore 9 /* i */
start local 9 // int i
25: goto 38
26: .line 828
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 829
iload 10 /* cp */
sipush 931
if_icmpeq 29
28: .line 830
iload 10 /* cp */
i2c
invokestatic java.lang.Character.isSurrogate:(C)Z
ifeq 30
29: .line 831
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 833
StackMap locals:
StackMap stack:
iload 10 /* cp */
sipush 304
if_icmpne 32
31: .line 834
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 836
StackMap locals:
StackMap stack:
iload 10 /* cp */
invokestatic java.lang.Character.toLowerCase:(I)I
istore 10 /* cp */
33: .line 837
iload 10 /* cp */
invokestatic java.lang.Character.isBmpCodePoint:(I)Z
ifne 35
34: .line 838
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 840
StackMap locals:
StackMap stack:
iload 8 /* bits */
iload 10 /* cp */
ior
istore 8 /* bits */
36: .line 841
aload 6 /* result */
iload 9 /* i */
iload 10 /* cp */
invokestatic java.lang.StringUTF16.putChar:([BII)V
end local 10 // int cp
37: .line 827
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 843
iload 8 /* bits */
sipush 255
if_icmple 41
40: .line 844
new java.lang.String
dup
aload 6 /* result */
iconst_1
invokespecial java.lang.String.<init>:([BB)V
areturn
41: .line 846
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 853
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 854
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 855
StackMap locals:
StackMap stack:
iload 3 /* first */
istore 6 /* resultOffset */
start local 6 // int resultOffset
3: .line 856
aload 1 /* value */
arraylength
iconst_1
ishr
istore 7 /* length */
start local 7 // int length
4: .line 858
iload 3 /* first */
istore 9 /* i */
start local 9 // int i
5: goto 37
6: .line 859
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 862
iconst_1
istore 8 /* srcCount */
start local 8 // int srcCount
8: .line 863
iload 10 /* srcChar */
i2c
invokestatic java.lang.Character.isSurrogate:(C)Z
ifeq 11
9: .line 864
aload 1 /* value */
iload 9 /* i */
iload 7 /* length */
invokestatic java.lang.StringUTF16.codePointAt:([BII)I
istore 10 /* srcChar */
10: .line 865
iload 10 /* srcChar */
invokestatic java.lang.Character.charCount:(I)I
istore 8 /* srcCount */
11: .line 867
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 868
iload 10 /* srcChar */
sipush 931
if_icmpeq 14
13: .line 869
iload 10 /* srcChar */
sipush 304
if_icmpne 16
14: .line 870
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 871
goto 17
end local 11 // int lowerChar
16: .line 872
StackMap locals:
StackMap stack:
iload 10 /* srcChar */
invokestatic java.lang.Character.toLowerCase:(I)I
istore 11 /* lowerChar */
start local 11 // int lowerChar
17: .line 874
StackMap locals: int
StackMap stack:
iload 11 /* lowerChar */
invokestatic java.lang.Character.isBmpCodePoint:(I)Z
ifeq 20
18: .line 875
aload 2 /* result */
iload 6 /* resultOffset */
iinc 6 /* resultOffset */ 1
iload 11 /* lowerChar */
invokestatic java.lang.StringUTF16.putChar:([BII)V
19: .line 876
goto 36
20: .line 877
StackMap locals:
StackMap stack:
iload 11 /* lowerChar */
iconst_m1
if_icmpne 23
21: .line 878
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 879
goto 24
end local 12 // char[] lowerCharArray
23: .line 880
StackMap locals:
StackMap stack:
iload 11 /* lowerChar */
invokestatic java.lang.Character.toChars:(I)[C
astore 12 /* lowerCharArray */
start local 12 // char[] lowerCharArray
24: .line 883
StackMap locals: char[]
StackMap stack:
aload 12 /* lowerCharArray */
arraylength
istore 13 /* mapLen */
start local 13 // int mapLen
25: .line 884
iload 13 /* mapLen */
iload 8 /* srcCount */
if_icmple 29
26: .line 885
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 886
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 887
aload 14 /* result2 */
astore 2 /* result */
end local 14 // byte[] result2
29: .line 889
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 890
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 891
StackMap locals:
StackMap stack:
iconst_0
istore 14 /* x */
start local 14 // int x
32: goto 35
33: .line 892
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 891
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 858
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 896
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 900
aload 2 /* locale */
ifnonnull 2
1: .line 901
new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: .line 904
StackMap locals:
StackMap stack:
iconst_0
istore 4 /* hasSurr */
start local 4 // boolean hasSurr
3: .line 905
aload 1 /* value */
arraylength
iconst_1
ishr
istore 5 /* len */
start local 5 // int len
4: .line 908
iconst_0
istore 3 /* first */
start local 3 // int first
5: goto 13
6: .line 909
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 910
iload 6 /* cp */
i2c
invokestatic java.lang.Character.isSurrogate:(C)Z
ifeq 10
8: .line 911
iconst_1
istore 4 /* hasSurr */
9: .line 912
goto 14
10: .line 914
StackMap locals: int
StackMap stack:
iload 6 /* cp */
iload 6 /* cp */
invokestatic java.lang.Character.toUpperCaseEx:(I)I
if_icmpeq 12
11: .line 915
goto 14
end local 6 // int cp
12: .line 908
StackMap locals:
StackMap stack:
iinc 3 /* first */ 1
StackMap locals:
StackMap stack:
13: iload 3 /* first */
iload 5 /* len */
if_icmplt 6
14: .line 918
StackMap locals:
StackMap stack:
iload 3 /* first */
iload 5 /* len */
if_icmpne 16
15: .line 919
aload 0 /* str */
areturn
16: .line 921
StackMap locals:
StackMap stack:
aload 1 /* value */
arraylength
newarray 8
astore 6 /* result */
start local 6 // byte[] result
17: .line 922
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 924
aload 2 /* locale */
invokevirtual java.util.Locale.getLanguage:()Ljava/lang/String;
astore 7 /* lang */
start local 7 // java.lang.String lang
19: .line 925
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 926
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 928
StackMap locals:
StackMap stack:
iload 4 /* hasSurr */
ifeq 23
22: .line 929
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 931
StackMap locals:
StackMap stack:
iconst_0
istore 8 /* bits */
start local 8 // int bits
24: .line 932
iload 3 /* first */
istore 9 /* i */
start local 9 // int i
25: goto 35
26: .line 933
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 934
iload 10 /* cp */
i2c
invokestatic java.lang.Character.isSurrogate:(C)Z
ifeq 29
28: .line 935
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 937
StackMap locals: int
StackMap stack:
iload 10 /* cp */
invokestatic java.lang.Character.toUpperCaseEx:(I)I
istore 10 /* cp */
30: .line 938
iload 10 /* cp */
invokestatic java.lang.Character.isBmpCodePoint:(I)Z
ifne 32
31: .line 939
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 941
StackMap locals:
StackMap stack:
iload 8 /* bits */
iload 10 /* cp */
ior
istore 8 /* bits */
33: .line 942
aload 6 /* result */
iload 9 /* i */
iload 10 /* cp */
invokestatic java.lang.StringUTF16.putChar:([BII)V
end local 10 // int cp
34: .line 932
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 944
iload 8 /* bits */
sipush 255
if_icmple 38
37: .line 945
new java.lang.String
dup
aload 6 /* result */
iconst_1
invokespecial java.lang.String.<init>:([BB)V
areturn
38: .line 947
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 955
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 956
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 957
StackMap locals:
StackMap stack:
iload 3 /* first */
istore 6 /* resultOffset */
start local 6 // int resultOffset
3: .line 958
aload 1 /* value */
arraylength
iconst_1
ishr
istore 7 /* length */
start local 7 // int length
4: .line 960
iload 3 /* first */
istore 9 /* i */
start local 9 // int i
5: goto 39
6: .line 961
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 964
iconst_1
istore 8 /* srcCount */
start local 8 // int srcCount
8: .line 965
iload 10 /* srcChar */
i2c
invokestatic java.lang.Character.isSurrogate:(C)Z
ifeq 11
9: .line 966
aload 1 /* value */
iload 9 /* i */
iload 7 /* length */
invokestatic java.lang.StringUTF16.codePointAt:([BII)I
istore 10 /* srcChar */
10: .line 967
iload 10 /* srcChar */
invokestatic java.lang.Character.charCount:(I)I
istore 8 /* srcCount */
11: .line 969
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 970
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 971
goto 15
end local 11 // int upperChar
14: .line 972
StackMap locals:
StackMap stack:
iload 10 /* srcChar */
invokestatic java.lang.Character.toUpperCaseEx:(I)I
istore 11 /* upperChar */
start local 11 // int upperChar
15: .line 974
StackMap locals: int
StackMap stack:
iload 11 /* upperChar */
invokestatic java.lang.Character.isBmpCodePoint:(I)Z
ifeq 18
16: .line 975
aload 2 /* result */
iload 6 /* resultOffset */
iinc 6 /* resultOffset */ 1
iload 11 /* upperChar */
invokestatic java.lang.StringUTF16.putChar:([BII)V
17: .line 976
goto 38
18: .line 977
StackMap locals:
StackMap stack:
iload 11 /* upperChar */
iconst_m1
if_icmpne 25
19: .line 978
iload 5 /* localeDependent */
ifeq 23
20: .line 980
aload 0 /* str */
iload 9 /* i */
aload 4 /* locale */
invokestatic java.lang.ConditionalSpecialCasing.toUpperCaseCharArray:(Ljava/lang/String;ILjava/util/Locale;)[C
21: .line 979
astore 12 /* upperCharArray */
start local 12 // char[] upperCharArray
22: .line 981
goto 26
end local 12 // char[] upperCharArray
23: .line 982
StackMap locals:
StackMap stack:
iload 10 /* srcChar */
invokestatic java.lang.Character.toUpperCaseCharArray:(I)[C
astore 12 /* upperCharArray */
start local 12 // char[] upperCharArray
24: .line 984
goto 26
end local 12 // char[] upperCharArray
25: .line 985
StackMap locals:
StackMap stack:
iload 11 /* upperChar */
invokestatic java.lang.Character.toChars:(I)[C
astore 12 /* upperCharArray */
start local 12 // char[] upperCharArray
26: .line 988
StackMap locals: char[]
StackMap stack:
aload 12 /* upperCharArray */
arraylength
istore 13 /* mapLen */
start local 13 // int mapLen
27: .line 989
iload 13 /* mapLen */
iload 8 /* srcCount */
if_icmple 31
28: .line 990
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 991
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 992
aload 14 /* result2 */
astore 2 /* result */
end local 14 // byte[] result2
31: .line 994
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 995
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 996
StackMap locals:
StackMap stack:
iconst_0
istore 14 /* x */
start local 14 // int x
34: goto 37
35: .line 997
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 996
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 960
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 1001
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 1005
aload 0 /* value */
arraylength
iconst_1
ishr
istore 1 /* length */
start local 1 // int length
1: .line 1006
iload 1 /* length */
istore 2 /* len */
start local 2 // int len
2: .line 1007
iconst_0
istore 3 /* st */
start local 3 // int st
3: .line 1008
goto 5
4: .line 1009
StackMap locals: int int int
StackMap stack:
iinc 3 /* st */ 1
5: .line 1008
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 1011
goto 8
7: .line 1012
StackMap locals:
StackMap stack:
iinc 2 /* len */ -1
8: .line 1011
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 1014
StackMap locals:
StackMap stack:
iload 3 /* st */
ifgt 10
iload 2 /* len */
iload 1 /* length */
if_icmpge 11
10: .line 1015
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 1016
StackMap locals:
StackMap stack:
aconst_null
12: .line 1014
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 1020
aload 0 /* value */
arraylength
iconst_1
ishr
istore 1 /* length */
start local 1 // int length
1: .line 1021
iconst_0
istore 2 /* left */
start local 2 // int left
2: .line 1022
goto 7
3: .line 1023
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 1024
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 1025
goto 8
6: .line 1027
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 1022
StackMap locals:
StackMap stack:
iload 2 /* left */
iload 1 /* length */
if_icmplt 3
8: .line 1029
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 1033
aload 0 /* value */
arraylength
iconst_1
iushr
istore 1 /* length */
start local 1 // int length
1: .line 1034
iload 1 /* length */
istore 2 /* right */
start local 2 // int right
2: .line 1035
goto 7
3: .line 1036
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 1037
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 1038
goto 8
6: .line 1040
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 1035
StackMap locals:
StackMap stack:
iload 2 /* right */
ifgt 3
8: .line 1042
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=5, args_size=1
start local 0 // byte[] value
0: .line 1046
aload 0 /* value */
arraylength
iconst_1
iushr
istore 1 /* length */
start local 1 // int length
1: .line 1047
aload 0 /* value */
invokestatic java.lang.StringUTF16.indexOfNonWhitespace:([B)I
istore 2 /* left */
start local 2 // int left
2: .line 1048
iload 2 /* left */
iload 1 /* length */
if_icmpne 4
3: .line 1049
ldc ""
areturn
4: .line 1051
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 1052
iload 2 /* left */
ifgt 6
iload 3 /* right */
iload 1 /* length */
if_icmplt 6
iconst_0
goto 7
StackMap locals: int
StackMap stack:
6: iconst_1
StackMap locals:
StackMap stack: int
7: istore 4 /* ifChanged */
start local 4 // boolean ifChanged
8: .line 1053
iload 4 /* ifChanged */
ifeq 9
aload 0 /* value */
iload 2 /* left */
iload 3 /* right */
iload 2 /* left */
isub
invokestatic java.lang.StringUTF16.newString:([BII)Ljava/lang/String;
goto 10
StackMap locals: int
StackMap stack:
9: aconst_null
StackMap locals:
StackMap stack: java.lang.String
10: areturn
end local 4 // boolean ifChanged
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 11 0 value [B
1 11 1 length I
2 11 2 left I
5 11 3 right I
8 11 4 ifChanged Z
MethodParameters:
Name Flags
value
public static java.lang.String stripLeading(byte[]);
descriptor: ([B)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=1
start local 0 // byte[] value
0: .line 1057
aload 0 /* value */
arraylength
iconst_1
iushr
istore 1 /* length */
start local 1 // int length
1: .line 1058
aload 0 /* value */
invokestatic java.lang.StringUTF16.indexOfNonWhitespace:([B)I
istore 2 /* left */
start local 2 // int left
2: .line 1059
iload 2 /* left */
ifeq 3
aload 0 /* value */
iload 2 /* left */
iload 1 /* length */
iload 2 /* left */
isub
invokestatic java.lang.StringUTF16.newString:([BII)Ljava/lang/String;
goto 4
StackMap locals: int int
StackMap stack:
3: aconst_null
StackMap locals:
StackMap stack: java.lang.String
4: areturn
end local 2 // int left
end local 1 // int length
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 5 0 value [B
1 5 1 length I
2 5 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 1063
aload 0 /* value */
arraylength
iconst_1
iushr
istore 1 /* length */
start local 1 // int length
1: .line 1064
aload 0 /* value */
invokestatic java.lang.StringUTF16.lastIndexOfNonWhitespace:([B)I
istore 2 /* right */
start local 2 // int right
2: .line 1065
iload 2 /* right */
iload 1 /* length */
if_icmpeq 3
aload 0 /* value */
iconst_0
iload 2 /* right */
invokestatic java.lang.StringUTF16.newString:([BII)Ljava/lang/String;
goto 4
StackMap locals: int int
StackMap stack:
3: aconst_null
StackMap locals:
StackMap stack: java.lang.String
4: areturn
end local 2 // int right
end local 1 // int length
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 5 0 value [B
1 5 1 length I
2 5 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=2, locals=1, args_size=1
start local 0 // byte[] value
0: .line 1159
aload 0 /* value */
invokestatic java.lang.StringUTF16$LinesSpliterator.spliterator:([B)Ljava/lang/StringUTF16$LinesSpliterator;
iconst_0
invokestatic java.util.stream.StreamSupport.stream:(Ljava/util/Spliterator;Z)Ljava/util/stream/Stream;
areturn
end local 0 // byte[] value
LocalVariableTable:
Start End Slot Name Signature
0 1 0 value [B
Signature: ([B)Ljava/util/stream/Stream<Ljava/lang/String;>;
MethodParameters:
Name Flags
value
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 1163
goto 2
1: .line 1164
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 1163
StackMap locals:
StackMap stack:
iload 3 /* off */
iload 4 /* end */
if_icmplt 1
3: .line 1166
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 1169
iload 2 /* len */
ifne 2
1: .line 1170
ldc ""
areturn
2: .line 1172
StackMap locals:
StackMap stack:
getstatic java.lang.String.COMPACT_STRINGS:Z
ifeq 6
3: .line 1173
aload 0 /* val */
iload 1 /* index */
iload 2 /* len */
invokestatic java.lang.StringUTF16.compress:([BII)[B
astore 3 /* buf */
start local 3 // byte[] buf
4: .line 1174
aload 3 /* buf */
ifnull 6
5: .line 1175
new java.lang.String
dup
aload 3 /* buf */
iconst_0
invokespecial java.lang.String.<init>:([BB)V
areturn
end local 3 // byte[] buf
6: .line 1178
StackMap locals:
StackMap stack:
iload 1 /* index */
iload 2 /* len */
iadd
istore 3 /* last */
start local 3 // int last
7: .line 1179
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 8 0 val [B
0 8 1 index I
0 8 2 len I
4 6 3 buf [B
7 8 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 1183
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 1184
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 1335
iload 1 /* index */
aload 0 /* val */
invokestatic java.lang.StringUTF16.checkIndex:(I[B)V
1: .line 1336
aload 0 /* val */
iload 1 /* index */
iload 2 /* c */
invokestatic java.lang.StringUTF16.putChar:([BII)V
2: .line 1337
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 1340
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 1341
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 1342
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 1345
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 1346
iload 3 /* off */
istore 5 /* i */
start local 5 // int i
2: goto 5
3: .line 1347
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 1346
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 1349
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 1352
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 1356
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 1360
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 1364
iload 1 /* begin */
iload 2 /* end */
aload 3 /* value */
invokestatic java.lang.StringUTF16.checkBoundsBeginEnd:(II[B)V
1: .line 1365
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 1366
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 1367
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 1371
iload 2 /* begin */
iload 3 /* end */
aload 4 /* value */
invokestatic java.lang.StringUTF16.checkBoundsBeginEnd:(II[B)V
1: .line 1372
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 1373
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 1374
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 1378
iconst_0
iload 2 /* len */
aload 1 /* v2 */
invokestatic java.lang.StringUTF16.checkBoundsOffCount:(II[B)V
1: .line 1379
iconst_0
istore 3 /* i */
start local 3 // int i
2: goto 6
3: .line 1380
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 1381
iconst_0
ireturn
5: .line 1379
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 1384
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 1388
iload 2 /* len */
aload 0 /* value */
invokestatic java.lang.StringUTF16.checkOffset:(I[B)V
1: .line 1389
iconst_0
istore 3 /* i */
start local 3 // int i
2: goto 6
3: .line 1390
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 1391
iconst_0
ireturn
5: .line 1389
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 1394
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 1398
iload 1 /* i */
iconst_4
iadd
istore 6 /* end */
start local 6 // int end
1: .line 1399
iload 1 /* i */
iload 6 /* end */
aload 0 /* value */
invokestatic java.lang.StringUTF16.checkBoundsBeginEnd:(II[B)V
2: .line 1400
aload 0 /* value */
iload 1 /* i */
iinc 1 /* i */ 1
iload 2 /* c1 */
invokestatic java.lang.StringUTF16.putChar:([BII)V
3: .line 1401
aload 0 /* value */
iload 1 /* i */
iinc 1 /* i */ 1
iload 3 /* c2 */
invokestatic java.lang.StringUTF16.putChar:([BII)V
4: .line 1402
aload 0 /* value */
iload 1 /* i */
iinc 1 /* i */ 1
iload 4 /* c3 */
invokestatic java.lang.StringUTF16.putChar:([BII)V
5: .line 1403
aload 0 /* value */
iload 1 /* i */
iinc 1 /* i */ 1
iload 5 /* c4 */
invokestatic java.lang.StringUTF16.putChar:([BII)V
6: .line 1404
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 1405
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 1409
iload 1 /* i */
iconst_5
iadd
istore 7 /* end */
start local 7 // int end
1: .line 1410
iload 1 /* i */
iload 7 /* end */
aload 0 /* value */
invokestatic java.lang.StringUTF16.checkBoundsBeginEnd:(II[B)V
2: .line 1411
aload 0 /* value */
iload 1 /* i */
iinc 1 /* i */ 1
iload 2 /* c1 */
invokestatic java.lang.StringUTF16.putChar:([BII)V
3: .line 1412
aload 0 /* value */
iload 1 /* i */
iinc 1 /* i */ 1
iload 3 /* c2 */
invokestatic java.lang.StringUTF16.putChar:([BII)V
4: .line 1413
aload 0 /* value */
iload 1 /* i */
iinc 1 /* i */ 1
iload 4 /* c3 */
invokestatic java.lang.StringUTF16.putChar:([BII)V
5: .line 1414
aload 0 /* value */
iload 1 /* i */
iinc 1 /* i */ 1
iload 5 /* c4 */
invokestatic java.lang.StringUTF16.putChar:([BII)V
6: .line 1415
aload 0 /* value */
iload 1 /* i */
iinc 1 /* i */ 1
iload 6 /* c5 */
invokestatic java.lang.StringUTF16.putChar:([BII)V
7: .line 1416
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 1417
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 1421
iload 1 /* index */
aload 0 /* value */
invokestatic java.lang.StringUTF16.checkIndex:(I[B)V
1: .line 1422
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 1426
iload 1 /* count */
aload 0 /* val */
invokestatic java.lang.StringUTF16.checkOffset:(I[B)V
1: .line 1427
iload 1 /* count */
iconst_1
isub
istore 2 /* n */
start local 2 // int n
2: .line 1428
iconst_0
istore 3 /* hasSurrogates */
start local 3 // boolean hasSurrogates
3: .line 1429
iload 2 /* n */
iconst_1
isub
iconst_1
ishr
istore 4 /* j */
start local 4 // int j
4: goto 14
5: .line 1430
StackMap locals: int int int
StackMap stack:
iload 2 /* n */
iload 4 /* j */
isub
istore 5 /* k */
start local 5 // int k
6: .line 1431
aload 0 /* val */
iload 4 /* j */
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 6 /* cj */
start local 6 // char cj
7: .line 1432
aload 0 /* val */
iload 5 /* k */
invokestatic java.lang.StringUTF16.getChar:([BI)C
istore 7 /* ck */
start local 7 // char ck
8: .line 1433
aload 0 /* val */
iload 4 /* j */
iload 7 /* ck */
invokestatic java.lang.StringUTF16.putChar:([BII)V
9: .line 1434
aload 0 /* val */
iload 5 /* k */
iload 6 /* cj */
invokestatic java.lang.StringUTF16.putChar:([BII)V
10: .line 1435
iload 6 /* cj */
invokestatic java.lang.Character.isSurrogate:(C)Z
ifne 12
11: .line 1436
iload 7 /* ck */
invokestatic java.lang.Character.isSurrogate:(C)Z
ifeq 13
12: .line 1437
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 1429
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 1440
iload 3 /* hasSurrogates */
ifeq 17
16: .line 1441
aload 0 /* val */
iload 1 /* count */
invokestatic java.lang.StringUTF16.reverseAllValidSurrogatePairs:([BI)V
17: .line 1443
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 1447
iconst_0
istore 2 /* i */
start local 2 // int i
1: goto 9
2: .line 1448
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 1449
iload 3 /* c2 */
invokestatic java.lang.Character.isLowSurrogate:(C)Z
ifeq 8
4: .line 1450
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 1451
iload 4 /* c1 */
invokestatic java.lang.Character.isHighSurrogate:(C)Z
ifeq 8
6: .line 1452
aload 0 /* val */
iload 2 /* i */
iinc 2 /* i */ 1
iload 4 /* c1 */
invokestatic java.lang.StringUTF16.putChar:([BII)V
7: .line 1453
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 1447
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 1457
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 1462
iload 3 /* dstOff */
iload 4 /* len */
aload 2 /* dst */
invokestatic java.lang.StringUTF16.checkBoundsOffCount:(II[B)V
1: .line 1463
iconst_0
istore 5 /* i */
start local 5 // int i
2: goto 5
3: .line 1464
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 1463
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 1466
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 1471
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 1472
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 1473
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 1474
StackMap locals:
StackMap stack:
iload 3 /* tgtCount */
iconst_1
isub
istore 5 /* min */
start local 5 // int min
4: .line 1475
iload 5 /* min */
iload 4 /* fromIndex */
iadd
istore 6 /* i */
start local 6 // int i
5: .line 1476
iload 3 /* tgtCount */
iconst_1
isub
istore 7 /* strLastIndex */
start local 7 // int strLastIndex
6: .line 1478
aload 2 /* tgt */
iload 7 /* strLastIndex */
baload
sipush 255
iand
i2c
istore 8 /* strLastChar */
start local 8 // char strLastChar
7: .line 1480
iload 6 /* i */
aload 0 /* src */
invokestatic java.lang.StringUTF16.checkIndex:(I[B)V
8: .line 1484
goto 10
9: .line 1485
StackMap locals: byte[] int byte[] int int int int int int
StackMap stack:
iinc 6 /* i */ -1
10: .line 1484
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 1487
StackMap locals:
StackMap stack:
iload 6 /* i */
iload 5 /* min */
if_icmpge 13
12: .line 1488
iconst_m1
ireturn
13: .line 1490
StackMap locals:
StackMap stack:
iload 6 /* i */
iconst_1
isub
istore 9 /* j */
start local 9 // int j
14: .line 1491
iload 9 /* j */
iload 7 /* strLastIndex */
isub
istore 10 /* start */
start local 10 // int start
15: .line 1492
iload 7 /* strLastIndex */
iconst_1
isub
istore 11 /* k */
start local 11 // int k
16: .line 1493
goto 20
17: .line 1494
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 1495
iinc 6 /* i */ -1
19: .line 1496
goto 22
20: .line 1493
StackMap locals:
StackMap stack:
iload 9 /* j */
iload 10 /* start */
if_icmpgt 17
21: .line 1499
iload 10 /* start */
iconst_1
iadd
ireturn
end local 11 // int k
end local 10 // int start
end local 9 // int j
22: .line 1483
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 1535
iload 1 /* index */
istore 5 /* charPos */
start local 5 // int charPos
1: .line 1537
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 1538
iload 6 /* negative */
ifne 12
5: .line 1539
iload 0 /* i */
ineg
istore 0 /* i */
6: .line 1543
goto 12
7: .line 1544
StackMap locals: int
StackMap stack:
iload 0 /* i */
bipush 100
idiv
istore 3 /* q */
start local 3 // int q
8: .line 1545
iload 3 /* q */
bipush 100
imul
iload 0 /* i */
isub
istore 4 /* r */
start local 4 // int r
9: .line 1546
iload 3 /* q */
istore 0 /* i */
10: .line 1547
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 1548
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 1543
StackMap locals:
StackMap stack:
iload 0 /* i */
bipush -100
if_icmple 7
13: .line 1552
iload 0 /* i */
bipush 10
idiv
istore 3 /* q */
start local 3 // int q
14: .line 1553
iload 3 /* q */
bipush 10
imul
iload 0 /* i */
isub
istore 4 /* r */
start local 4 // int r
15: .line 1554
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 1557
iload 3 /* q */
ifge 18
17: .line 1558
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 1561
StackMap locals: int int byte[] int int int int
StackMap stack:
iload 6 /* negative */
ifeq 20
19: .line 1562
aload 2 /* buf */
iinc 5 /* charPos */ -1
iload 5 /* charPos */
bipush 45
invokestatic java.lang.StringUTF16.putChar:([BII)V
20: .line 1564
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 1579
iload 2 /* index */
istore 7 /* charPos */
start local 7 // int charPos
1: .line 1581
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 1582
iload 8 /* negative */
ifne 12
5: .line 1583
lload 0 /* i */
lneg
lstore 0 /* i */
6: .line 1587
goto 12
7: .line 1588
StackMap locals: int
StackMap stack:
lload 0 /* i */
ldc 100
ldiv
lstore 4 /* q */
start local 4 // long q
8: .line 1589
lload 4 /* q */
ldc 100
lmul
lload 0 /* i */
lsub
l2i
istore 6 /* r */
start local 6 // int r
9: .line 1590
lload 4 /* q */
lstore 0 /* i */
10: .line 1591
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 1592
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 1587
StackMap locals:
StackMap stack:
lload 0 /* i */
ldc -2147483648
lcmp
ifle 7
13: .line 1597
lload 0 /* i */
l2i
istore 10 /* i2 */
start local 10 // int i2
14: .line 1598
goto 20
15: .line 1599
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 1600
iload 9 /* q2 */
bipush 100
imul
iload 10 /* i2 */
isub
istore 6 /* r */
start local 6 // int r
17: .line 1601
iload 9 /* q2 */
istore 10 /* i2 */
18: .line 1602
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 1603
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 1598
StackMap locals:
StackMap stack:
iload 10 /* i2 */
bipush -100
if_icmple 15
21: .line 1607
iload 10 /* i2 */
bipush 10
idiv
istore 9 /* q2 */
start local 9 // int q2
22: .line 1608
iload 9 /* q2 */
bipush 10
imul
iload 10 /* i2 */
isub
istore 6 /* r */
start local 6 // int r
23: .line 1609
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 1612
iload 9 /* q2 */
ifge 26
25: .line 1613
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 1616
StackMap locals: long int byte[] top top int int int int int
StackMap stack:
iload 8 /* negative */
ifeq 28
27: .line 1617
aload 3 /* buf */
iinc 7 /* charPos */ -1
iload 7 /* charPos */
bipush 45
invokestatic java.lang.StringUTF16.putChar:([BII)V
28: .line 1619
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 1624
iload 0 /* off */
aload 1 /* val */
invokestatic java.lang.StringUTF16.length:([B)I
invokestatic java.lang.String.checkIndex:(II)V
1: .line 1625
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 1628
iload 0 /* off */
aload 1 /* val */
invokestatic java.lang.StringUTF16.length:([B)I
invokestatic java.lang.String.checkOffset:(II)V
1: .line 1629
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 1632
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 1633
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 1636
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 1637
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