public final class org.bouncycastle.util.Arrays
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: org.bouncycastle.util.Arrays
super_class: java.lang.Object
{
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 // org.bouncycastle.util.Arrays this
0: .line 8
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 11
return
end local 0 // org.bouncycastle.util.Arrays this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/bouncycastle/util/Arrays;
public static boolean areEqual(boolean[], boolean[]);
descriptor: ([Z[Z)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 // boolean[] a
start local 1 // boolean[] b
0: .line 17
aload 0 /* a */
aload 1 /* b */
if_acmpne 2
1: .line 19
iconst_1
ireturn
2: .line 22
StackMap locals:
StackMap stack:
aload 0 /* a */
ifnull 3
aload 1 /* b */
ifnonnull 4
3: .line 24
StackMap locals:
StackMap stack:
iconst_0
ireturn
4: .line 27
StackMap locals:
StackMap stack:
aload 0 /* a */
arraylength
aload 1 /* b */
arraylength
if_icmpeq 6
5: .line 29
iconst_0
ireturn
6: .line 32
StackMap locals:
StackMap stack:
iconst_0
istore 2 /* i */
start local 2 // int i
7: goto 11
8: .line 34
StackMap locals: int
StackMap stack:
aload 0 /* a */
iload 2 /* i */
baload
aload 1 /* b */
iload 2 /* i */
baload
if_icmpeq 10
9: .line 36
iconst_0
ireturn
10: .line 32
StackMap locals:
StackMap stack:
iinc 2 /* i */ 1
StackMap locals:
StackMap stack:
11: iload 2 /* i */
aload 0 /* a */
arraylength
if_icmpne 8
end local 2 // int i
12: .line 40
iconst_1
ireturn
end local 1 // boolean[] b
end local 0 // boolean[] a
LocalVariableTable:
Start End Slot Name Signature
0 13 0 a [Z
0 13 1 b [Z
7 12 2 i I
MethodParameters:
Name Flags
a
b
public static boolean areEqual(char[], char[]);
descriptor: ([C[C)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 // char[] a
start local 1 // char[] b
0: .line 47
aload 0 /* a */
aload 1 /* b */
if_acmpne 2
1: .line 49
iconst_1
ireturn
2: .line 52
StackMap locals:
StackMap stack:
aload 0 /* a */
ifnull 3
aload 1 /* b */
ifnonnull 4
3: .line 54
StackMap locals:
StackMap stack:
iconst_0
ireturn
4: .line 57
StackMap locals:
StackMap stack:
aload 0 /* a */
arraylength
aload 1 /* b */
arraylength
if_icmpeq 6
5: .line 59
iconst_0
ireturn
6: .line 62
StackMap locals:
StackMap stack:
iconst_0
istore 2 /* i */
start local 2 // int i
7: goto 11
8: .line 64
StackMap locals: int
StackMap stack:
aload 0 /* a */
iload 2 /* i */
caload
aload 1 /* b */
iload 2 /* i */
caload
if_icmpeq 10
9: .line 66
iconst_0
ireturn
10: .line 62
StackMap locals:
StackMap stack:
iinc 2 /* i */ 1
StackMap locals:
StackMap stack:
11: iload 2 /* i */
aload 0 /* a */
arraylength
if_icmpne 8
end local 2 // int i
12: .line 70
iconst_1
ireturn
end local 1 // char[] b
end local 0 // char[] a
LocalVariableTable:
Start End Slot Name Signature
0 13 0 a [C
0 13 1 b [C
7 12 2 i I
MethodParameters:
Name Flags
a
b
public static boolean areEqual(byte[], byte[]);
descriptor: ([B[B)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 // byte[] a
start local 1 // byte[] b
0: .line 77
aload 0 /* a */
aload 1 /* b */
if_acmpne 2
1: .line 79
iconst_1
ireturn
2: .line 82
StackMap locals:
StackMap stack:
aload 0 /* a */
ifnull 3
aload 1 /* b */
ifnonnull 4
3: .line 84
StackMap locals:
StackMap stack:
iconst_0
ireturn
4: .line 87
StackMap locals:
StackMap stack:
aload 0 /* a */
arraylength
aload 1 /* b */
arraylength
if_icmpeq 6
5: .line 89
iconst_0
ireturn
6: .line 92
StackMap locals:
StackMap stack:
iconst_0
istore 2 /* i */
start local 2 // int i
7: goto 11
8: .line 94
StackMap locals: int
StackMap stack:
aload 0 /* a */
iload 2 /* i */
baload
aload 1 /* b */
iload 2 /* i */
baload
if_icmpeq 10
9: .line 96
iconst_0
ireturn
10: .line 92
StackMap locals:
StackMap stack:
iinc 2 /* i */ 1
StackMap locals:
StackMap stack:
11: iload 2 /* i */
aload 0 /* a */
arraylength
if_icmpne 8
end local 2 // int i
12: .line 100
iconst_1
ireturn
end local 1 // byte[] b
end local 0 // byte[] a
LocalVariableTable:
Start End Slot Name Signature
0 13 0 a [B
0 13 1 b [B
7 12 2 i I
MethodParameters:
Name Flags
a
b
public static boolean constantTimeAreEqual(byte[], byte[]);
descriptor: ([B[B)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 // byte[] a
start local 1 // byte[] b
0: .line 115
aload 0 /* a */
aload 1 /* b */
if_acmpne 2
1: .line 117
iconst_1
ireturn
2: .line 120
StackMap locals:
StackMap stack:
aload 0 /* a */
ifnull 3
aload 1 /* b */
ifnonnull 4
3: .line 122
StackMap locals:
StackMap stack:
iconst_0
ireturn
4: .line 125
StackMap locals:
StackMap stack:
aload 0 /* a */
arraylength
aload 1 /* b */
arraylength
if_icmpeq 6
5: .line 127
iconst_0
ireturn
6: .line 130
StackMap locals:
StackMap stack:
iconst_0
istore 2 /* nonEqual */
start local 2 // int nonEqual
7: .line 132
iconst_0
istore 3 /* i */
start local 3 // int i
8: goto 11
9: .line 134
StackMap locals: int int
StackMap stack:
iload 2 /* nonEqual */
aload 0 /* a */
iload 3 /* i */
baload
aload 1 /* b */
iload 3 /* i */
baload
ixor
ior
istore 2 /* nonEqual */
10: .line 132
iinc 3 /* i */ 1
StackMap locals:
StackMap stack:
11: iload 3 /* i */
aload 0 /* a */
arraylength
if_icmpne 9
end local 3 // int i
12: .line 137
iload 2 /* nonEqual */
ifne 13
iconst_1
ireturn
StackMap locals:
StackMap stack:
13: iconst_0
ireturn
end local 2 // int nonEqual
end local 1 // byte[] b
end local 0 // byte[] a
LocalVariableTable:
Start End Slot Name Signature
0 14 0 a [B
0 14 1 b [B
7 14 2 nonEqual I
8 12 3 i I
MethodParameters:
Name Flags
a
b
public static boolean areEqual(int[], int[]);
descriptor: ([I[I)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 // int[] a
start local 1 // int[] b
0: .line 144
aload 0 /* a */
aload 1 /* b */
if_acmpne 2
1: .line 146
iconst_1
ireturn
2: .line 149
StackMap locals:
StackMap stack:
aload 0 /* a */
ifnull 3
aload 1 /* b */
ifnonnull 4
3: .line 151
StackMap locals:
StackMap stack:
iconst_0
ireturn
4: .line 154
StackMap locals:
StackMap stack:
aload 0 /* a */
arraylength
aload 1 /* b */
arraylength
if_icmpeq 6
5: .line 156
iconst_0
ireturn
6: .line 159
StackMap locals:
StackMap stack:
iconst_0
istore 2 /* i */
start local 2 // int i
7: goto 11
8: .line 161
StackMap locals: int
StackMap stack:
aload 0 /* a */
iload 2 /* i */
iaload
aload 1 /* b */
iload 2 /* i */
iaload
if_icmpeq 10
9: .line 163
iconst_0
ireturn
10: .line 159
StackMap locals:
StackMap stack:
iinc 2 /* i */ 1
StackMap locals:
StackMap stack:
11: iload 2 /* i */
aload 0 /* a */
arraylength
if_icmpne 8
end local 2 // int i
12: .line 167
iconst_1
ireturn
end local 1 // int[] b
end local 0 // int[] a
LocalVariableTable:
Start End Slot Name Signature
0 13 0 a [I
0 13 1 b [I
7 12 2 i I
MethodParameters:
Name Flags
a
b
public static void fill(byte[], byte);
descriptor: ([BB)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 // byte[] array
start local 1 // byte value
0: .line 174
iconst_0
istore 2 /* i */
start local 2 // int i
1: goto 4
2: .line 176
StackMap locals: int
StackMap stack:
aload 0 /* array */
iload 2 /* i */
iload 1 /* value */
bastore
3: .line 174
iinc 2 /* i */ 1
StackMap locals:
StackMap stack:
4: iload 2 /* i */
aload 0 /* array */
arraylength
if_icmplt 2
end local 2 // int i
5: .line 178
return
end local 1 // byte value
end local 0 // byte[] array
LocalVariableTable:
Start End Slot Name Signature
0 6 0 array [B
0 6 1 value B
1 5 2 i I
MethodParameters:
Name Flags
array
value
public static void fill(long[], long);
descriptor: ([JJ)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 // long[] array
start local 1 // long value
0: .line 184
iconst_0
istore 3 /* i */
start local 3 // int i
1: goto 4
2: .line 186
StackMap locals: int
StackMap stack:
aload 0 /* array */
iload 3 /* i */
lload 1 /* value */
lastore
3: .line 184
iinc 3 /* i */ 1
StackMap locals:
StackMap stack:
4: iload 3 /* i */
aload 0 /* array */
arraylength
if_icmplt 2
end local 3 // int i
5: .line 188
return
end local 1 // long value
end local 0 // long[] array
LocalVariableTable:
Start End Slot Name Signature
0 6 0 array [J
0 6 1 value J
1 5 3 i I
MethodParameters:
Name Flags
array
value
public static void fill(short[], short);
descriptor: ([SS)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 // short[] array
start local 1 // short value
0: .line 194
iconst_0
istore 2 /* i */
start local 2 // int i
1: goto 4
2: .line 196
StackMap locals: int
StackMap stack:
aload 0 /* array */
iload 2 /* i */
iload 1 /* value */
sastore
3: .line 194
iinc 2 /* i */ 1
StackMap locals:
StackMap stack:
4: iload 2 /* i */
aload 0 /* array */
arraylength
if_icmplt 2
end local 2 // int i
5: .line 198
return
end local 1 // short value
end local 0 // short[] array
LocalVariableTable:
Start End Slot Name Signature
0 6 0 array [S
0 6 1 value S
1 5 2 i I
MethodParameters:
Name Flags
array
value
public static int hashCode(byte[]);
descriptor: ([B)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=1
start local 0 // byte[] data
0: .line 202
aload 0 /* data */
ifnonnull 2
1: .line 204
iconst_0
ireturn
2: .line 207
StackMap locals:
StackMap stack:
aload 0 /* data */
arraylength
istore 1 /* i */
start local 1 // int i
3: .line 208
iload 1 /* i */
iconst_1
iadd
istore 2 /* hc */
start local 2 // int hc
4: .line 210
goto 7
5: .line 212
StackMap locals: int int
StackMap stack:
iload 2 /* hc */
sipush 257
imul
istore 2 /* hc */
6: .line 213
iload 2 /* hc */
aload 0 /* data */
iload 1 /* i */
baload
ixor
istore 2 /* hc */
7: .line 210
StackMap locals:
StackMap stack:
iinc 1 /* i */ -1
iload 1 /* i */
ifge 5
8: .line 216
iload 2 /* hc */
ireturn
end local 2 // int hc
end local 1 // int i
end local 0 // byte[] data
LocalVariableTable:
Start End Slot Name Signature
0 9 0 data [B
3 9 1 i I
4 9 2 hc I
MethodParameters:
Name Flags
data
public static byte[] clone(byte[]);
descriptor: ([B)[B
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=2, args_size=1
start local 0 // byte[] data
0: .line 221
aload 0 /* data */
ifnonnull 2
1: .line 223
aconst_null
areturn
2: .line 225
StackMap locals:
StackMap stack:
aload 0 /* data */
arraylength
newarray 8
astore 1 /* copy */
start local 1 // byte[] copy
3: .line 227
aload 0 /* data */
iconst_0
aload 1 /* copy */
iconst_0
aload 0 /* data */
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
4: .line 229
aload 1 /* copy */
areturn
end local 1 // byte[] copy
end local 0 // byte[] data
LocalVariableTable:
Start End Slot Name Signature
0 5 0 data [B
3 5 1 copy [B
MethodParameters:
Name Flags
data
public static int[] clone(int[]);
descriptor: ([I)[I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=2, args_size=1
start local 0 // int[] data
0: .line 234
aload 0 /* data */
ifnonnull 2
1: .line 236
aconst_null
areturn
2: .line 238
StackMap locals:
StackMap stack:
aload 0 /* data */
arraylength
newarray 10
astore 1 /* copy */
start local 1 // int[] copy
3: .line 240
aload 0 /* data */
iconst_0
aload 1 /* copy */
iconst_0
aload 0 /* data */
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
4: .line 242
aload 1 /* copy */
areturn
end local 1 // int[] copy
end local 0 // int[] data
LocalVariableTable:
Start End Slot Name Signature
0 5 0 data [I
3 5 1 copy [I
MethodParameters:
Name Flags
data
}
SourceFile: "Arrays.java"