class sun.misc.FDBigInt
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: sun.misc.FDBigInt
super_class: java.lang.Object
{
int nWords;
descriptor: I
flags: (0x0000)
int[] data;
descriptor: [I
flags: (0x0000)
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 32
ldc Lsun/misc/FDBigInt;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic sun.misc.FDBigInt.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 // sun.misc.FDBigInt this
start local 1 // int v
0: .line 37
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 38
aload 0 /* this */
iconst_1
putfield sun.misc.FDBigInt.nWords:I
2: .line 39
aload 0 /* this */
iconst_1
newarray 10
putfield sun.misc.FDBigInt.data:[I
3: .line 40
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iconst_0
iload 1 /* v */
iastore
4: .line 41
return
end local 1 // int v
end local 0 // sun.misc.FDBigInt this
LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/misc/FDBigInt;
0 5 1 v I
MethodParameters:
Name Flags
v
public void <init>(long);
descriptor: (J)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 // sun.misc.FDBigInt this
start local 1 // long v
0: .line 43
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 44
aload 0 /* this */
iconst_2
newarray 10
putfield sun.misc.FDBigInt.data:[I
2: .line 45
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iconst_0
lload 1 /* v */
l2i
iastore
3: .line 46
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iconst_1
lload 1 /* v */
bipush 32
lushr
l2i
iastore
4: .line 47
aload 0 /* this */
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iconst_1
iaload
ifne 5
iconst_1
goto 6
StackMap locals: sun.misc.FDBigInt long
StackMap stack: sun.misc.FDBigInt
5: iconst_2
StackMap locals: sun.misc.FDBigInt long
StackMap stack: sun.misc.FDBigInt int
6: putfield sun.misc.FDBigInt.nWords:I
7: .line 48
return
end local 1 // long v
end local 0 // sun.misc.FDBigInt this
LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lsun/misc/FDBigInt;
0 8 1 v J
MethodParameters:
Name Flags
v
public void <init>(sun.misc.FDBigInt);
descriptor: (Lsun/misc/FDBigInt;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 // sun.misc.FDBigInt this
start local 1 // sun.misc.FDBigInt other
0: .line 50
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 51
aload 0 /* this */
aload 0 /* this */
aload 1 /* other */
getfield sun.misc.FDBigInt.nWords:I
dup_x1
putfield sun.misc.FDBigInt.nWords:I
newarray 10
putfield sun.misc.FDBigInt.data:[I
2: .line 52
aload 1 /* other */
getfield sun.misc.FDBigInt.data:[I
iconst_0
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iconst_0
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
3: .line 53
return
end local 1 // sun.misc.FDBigInt other
end local 0 // sun.misc.FDBigInt this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/misc/FDBigInt;
0 4 1 other Lsun/misc/FDBigInt;
MethodParameters:
Name Flags
other
private void <init>(int[], int);
descriptor: ([II)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=3
start local 0 // sun.misc.FDBigInt this
start local 1 // int[] d
start local 2 // int n
0: .line 55
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 56
aload 0 /* this */
aload 1 /* d */
putfield sun.misc.FDBigInt.data:[I
2: .line 57
aload 0 /* this */
iload 2 /* n */
putfield sun.misc.FDBigInt.nWords:I
3: .line 58
return
end local 2 // int n
end local 1 // int[] d
end local 0 // sun.misc.FDBigInt this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/misc/FDBigInt;
0 4 1 d [I
0 4 2 n I
MethodParameters:
Name Flags
d
n
public void <init>(long, char[], int, int);
descriptor: (J[CII)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=11, args_size=5
start local 0 // sun.misc.FDBigInt this
start local 1 // long seed
start local 3 // char[] digit
start local 4 // int nd0
start local 5 // int nd
0: .line 60
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 61
iload 5 /* nd */
bipush 8
iadd
bipush 9
idiv
istore 6 /* n */
start local 6 // int n
2: .line 62
iload 6 /* n */
iconst_2
if_icmpge 3
iconst_2
istore 6 /* n */
3: .line 63
StackMap locals: sun.misc.FDBigInt long char[] int int int
StackMap stack:
aload 0 /* this */
iload 6 /* n */
newarray 10
putfield sun.misc.FDBigInt.data:[I
4: .line 64
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iconst_0
lload 1 /* seed */
l2i
iastore
5: .line 65
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iconst_1
lload 1 /* seed */
bipush 32
lushr
l2i
iastore
6: .line 66
aload 0 /* this */
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iconst_1
iaload
ifne 7
iconst_1
goto 8
StackMap locals:
StackMap stack: sun.misc.FDBigInt
7: iconst_2
StackMap locals: sun.misc.FDBigInt long char[] int int int
StackMap stack: sun.misc.FDBigInt int
8: putfield sun.misc.FDBigInt.nWords:I
9: .line 67
iload 4 /* nd0 */
istore 7 /* i */
start local 7 // int i
10: .line 68
iload 5 /* nd */
iconst_5
isub
istore 8 /* limit */
start local 8 // int limit
11: .line 70
goto 18
12: .line 71
StackMap locals: int int
StackMap stack:
iload 7 /* i */
iconst_5
iadd
istore 10 /* ilim */
start local 10 // int ilim
13: .line 72
aload 3 /* digit */
iload 7 /* i */
iinc 7 /* i */ 1
caload
bipush 48
isub
istore 9 /* v */
start local 9 // int v
14: .line 73
goto 16
15: .line 74
StackMap locals: int int
StackMap stack:
bipush 10
iload 9 /* v */
imul
aload 3 /* digit */
iload 7 /* i */
iinc 7 /* i */ 1
caload
iadd
bipush 48
isub
istore 9 /* v */
16: .line 73
StackMap locals:
StackMap stack:
iload 7 /* i */
iload 10 /* ilim */
if_icmplt 15
17: .line 76
aload 0 /* this */
ldc 100000
iload 9 /* v */
invokevirtual sun.misc.FDBigInt.multaddMe:(II)V
end local 10 // int ilim
end local 9 // int v
18: .line 70
StackMap locals:
StackMap stack:
iload 7 /* i */
iload 8 /* limit */
if_icmplt 12
19: .line 78
iconst_1
istore 10 /* factor */
start local 10 // int factor
20: .line 79
iconst_0
istore 9 /* v */
start local 9 // int v
21: .line 80
goto 24
22: .line 81
StackMap locals: int int
StackMap stack:
bipush 10
iload 9 /* v */
imul
aload 3 /* digit */
iload 7 /* i */
iinc 7 /* i */ 1
caload
iadd
bipush 48
isub
istore 9 /* v */
23: .line 82
iload 10 /* factor */
bipush 10
imul
istore 10 /* factor */
24: .line 80
StackMap locals:
StackMap stack:
iload 7 /* i */
iload 5 /* nd */
if_icmplt 22
25: .line 84
iload 10 /* factor */
iconst_1
if_icmpeq 27
26: .line 85
aload 0 /* this */
iload 10 /* factor */
iload 9 /* v */
invokevirtual sun.misc.FDBigInt.multaddMe:(II)V
27: .line 87
StackMap locals:
StackMap stack:
return
end local 10 // int factor
end local 9 // int v
end local 8 // int limit
end local 7 // int i
end local 6 // int n
end local 5 // int nd
end local 4 // int nd0
end local 3 // char[] digit
end local 1 // long seed
end local 0 // sun.misc.FDBigInt this
LocalVariableTable:
Start End Slot Name Signature
0 28 0 this Lsun/misc/FDBigInt;
0 28 1 seed J
0 28 3 digit [C
0 28 4 nd0 I
0 28 5 nd I
2 28 6 n I
10 28 7 i I
11 28 8 limit I
14 18 9 v I
21 28 9 v I
13 18 10 ilim I
20 28 10 factor I
MethodParameters:
Name Flags
seed
digit
nd0
nd
public void lshiftMe(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=9, args_size=2
start local 0 // sun.misc.FDBigInt this
start local 1 // int c
0: .line 95
iload 1 /* c */
ifgt 4
1: .line 96
iload 1 /* c */
ifne 3
2: .line 97
return
3: .line 99
StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
ldc "negative shift count"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
4: .line 101
StackMap locals:
StackMap stack:
iload 1 /* c */
iconst_5
ishr
istore 2 /* wordcount */
start local 2 // int wordcount
5: .line 102
iload 1 /* c */
bipush 31
iand
istore 3 /* bitcount */
start local 3 // int bitcount
6: .line 103
bipush 32
iload 3 /* bitcount */
isub
istore 4 /* anticount */
start local 4 // int anticount
7: .line 104
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
astore 5 /* t */
start local 5 // int[] t
8: .line 105
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
astore 6 /* s */
start local 6 // int[] s
9: .line 106
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
iload 2 /* wordcount */
iadd
iconst_1
iadd
aload 5 /* t */
arraylength
if_icmple 11
10: .line 108
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
iload 2 /* wordcount */
iadd
iconst_1
iadd
newarray 10
astore 5 /* t */
11: .line 110
StackMap locals: sun.misc.FDBigInt int int int int int[] int[]
StackMap stack:
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
iload 2 /* wordcount */
iadd
istore 7 /* target */
start local 7 // int target
12: .line 111
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
iconst_1
isub
istore 8 /* src */
start local 8 // int src
13: .line 112
iload 3 /* bitcount */
ifne 17
14: .line 114
aload 6 /* s */
iconst_0
aload 5 /* t */
iload 2 /* wordcount */
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
15: .line 115
iload 2 /* wordcount */
iconst_1
isub
istore 7 /* target */
16: .line 116
goto 24
17: .line 117
StackMap locals: int int
StackMap stack:
aload 5 /* t */
iload 7 /* target */
iinc 7 /* target */ -1
aload 6 /* s */
iload 8 /* src */
iaload
iload 4 /* anticount */
iushr
iastore
18: .line 118
goto 20
19: .line 119
StackMap locals:
StackMap stack:
aload 5 /* t */
iload 7 /* target */
iinc 7 /* target */ -1
aload 6 /* s */
iload 8 /* src */
iaload
iload 3 /* bitcount */
ishl
aload 6 /* s */
iinc 8 /* src */ -1
iload 8 /* src */
iaload
iload 4 /* anticount */
iushr
ior
iastore
20: .line 118
StackMap locals:
StackMap stack:
iload 8 /* src */
iconst_1
if_icmpge 19
21: .line 121
aload 5 /* t */
iload 7 /* target */
iinc 7 /* target */ -1
aload 6 /* s */
iload 8 /* src */
iaload
iload 3 /* bitcount */
ishl
iastore
22: .line 123
goto 24
23: .line 124
StackMap locals:
StackMap stack:
aload 5 /* t */
iload 7 /* target */
iinc 7 /* target */ -1
iconst_0
iastore
24: .line 123
StackMap locals:
StackMap stack:
iload 7 /* target */
ifge 23
25: .line 126
aload 0 /* this */
aload 5 /* t */
putfield sun.misc.FDBigInt.data:[I
26: .line 127
aload 0 /* this */
dup
getfield sun.misc.FDBigInt.nWords:I
iload 2 /* wordcount */
iconst_1
iadd
iadd
putfield sun.misc.FDBigInt.nWords:I
27: .line 130
goto 29
28: .line 131
StackMap locals:
StackMap stack:
aload 0 /* this */
dup
getfield sun.misc.FDBigInt.nWords:I
iconst_1
isub
putfield sun.misc.FDBigInt.nWords:I
29: .line 130
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
iconst_1
if_icmple 30
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
iconst_1
isub
iaload
ifeq 28
30: .line 132
StackMap locals:
StackMap stack:
return
end local 8 // int src
end local 7 // int target
end local 6 // int[] s
end local 5 // int[] t
end local 4 // int anticount
end local 3 // int bitcount
end local 2 // int wordcount
end local 1 // int c
end local 0 // sun.misc.FDBigInt this
LocalVariableTable:
Start End Slot Name Signature
0 31 0 this Lsun/misc/FDBigInt;
0 31 1 c I
5 31 2 wordcount I
6 31 3 bitcount I
7 31 4 anticount I
8 31 5 t [I
9 31 6 s [I
12 31 7 target I
13 31 8 src I
Exceptions:
throws java.lang.IllegalArgumentException
MethodParameters:
Name Flags
c
public int normalizeMe();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=1
start local 0 // sun.misc.FDBigInt this
0: .line 148
iconst_0
istore 2 /* wordcount */
start local 2 // int wordcount
1: .line 149
iconst_0
istore 3 /* bitcount */
start local 3 // int bitcount
2: .line 150
iconst_0
istore 4 /* v */
start local 4 // int v
3: .line 151
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
iconst_1
isub
istore 1 /* src */
start local 1 // int src
4: goto 7
5: .line 152
StackMap locals: sun.misc.FDBigInt int int int int
StackMap stack:
iinc 2 /* wordcount */ 1
6: .line 151
iinc 1 /* src */ -1
StackMap locals:
StackMap stack:
7: iload 1 /* src */
iflt 8
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iload 1 /* src */
iaload
dup
istore 4 /* v */
ifeq 5
8: .line 154
StackMap locals:
StackMap stack:
iload 1 /* src */
ifge 10
9: .line 156
new java.lang.IllegalArgumentException
dup
ldc "zero value"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
10: .line 164
StackMap locals:
StackMap stack:
aload 0 /* this */
dup
getfield sun.misc.FDBigInt.nWords:I
iload 2 /* wordcount */
isub
putfield sun.misc.FDBigInt.nWords:I
11: .line 170
iload 4 /* v */
ldc -268435456
iand
ifeq 19
12: .line 173
bipush 32
istore 3 /* bitcount */
goto 15
13: .line 174
StackMap locals:
StackMap stack:
iload 4 /* v */
iconst_1
iushr
istore 4 /* v */
14: .line 173
iinc 3 /* bitcount */ -1
StackMap locals:
StackMap stack:
15: iload 4 /* v */
ldc -268435456
iand
ifne 13
16: .line 175
goto 24
17: .line 178
StackMap locals:
StackMap stack:
iload 4 /* v */
bipush 8
ishl
istore 4 /* v */
18: .line 179
iinc 3 /* bitcount */ 8
19: .line 176
StackMap locals:
StackMap stack:
iload 4 /* v */
ldc 1048575
if_icmple 17
20: .line 181
goto 23
21: .line 182
StackMap locals:
StackMap stack:
iload 4 /* v */
iconst_1
ishl
istore 4 /* v */
22: .line 183
iinc 3 /* bitcount */ 1
23: .line 181
StackMap locals:
StackMap stack:
iload 4 /* v */
ldc 134217727
if_icmple 21
24: .line 186
StackMap locals:
StackMap stack:
iload 3 /* bitcount */
ifeq 26
25: .line 187
aload 0 /* this */
iload 3 /* bitcount */
invokevirtual sun.misc.FDBigInt.lshiftMe:(I)V
26: .line 188
StackMap locals:
StackMap stack:
iload 3 /* bitcount */
ireturn
end local 4 // int v
end local 3 // int bitcount
end local 2 // int wordcount
end local 1 // int src
end local 0 // sun.misc.FDBigInt this
LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lsun/misc/FDBigInt;
4 27 1 src I
1 27 2 wordcount I
2 27 3 bitcount I
3 27 4 v I
Exceptions:
throws java.lang.IllegalArgumentException
public sun.misc.FDBigInt mult(int);
descriptor: (I)Lsun/misc/FDBigInt;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=8, args_size=2
start local 0 // sun.misc.FDBigInt this
start local 1 // int iv
0: .line 197
iload 1 /* iv */
i2l
lstore 2 /* v */
start local 2 // long v
1: .line 202
lload 2 /* v */
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
iconst_1
isub
iaload
i2l
ldc 4294967295
land
lmul
ldc 268435455
lcmp
ifle 2
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
iconst_1
iadd
goto 3
StackMap locals: long
StackMap stack:
2: aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
StackMap locals:
StackMap stack: int
3: newarray 10
astore 4 /* r */
start local 4 // int[] r
4: .line 203
lconst_0
lstore 5 /* p */
start local 5 // long p
5: .line 204
iconst_0
istore 7 /* i */
start local 7 // int i
6: goto 11
7: .line 205
StackMap locals: int[] long int
StackMap stack:
lload 5 /* p */
lload 2 /* v */
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iload 7 /* i */
iaload
i2l
ldc 4294967295
land
lmul
ladd
lstore 5 /* p */
8: .line 206
aload 4 /* r */
iload 7 /* i */
lload 5 /* p */
l2i
iastore
9: .line 207
lload 5 /* p */
bipush 32
lushr
lstore 5 /* p */
10: .line 204
iinc 7 /* i */ 1
StackMap locals:
StackMap stack:
11: iload 7 /* i */
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
if_icmplt 7
end local 7 // int i
12: .line 209
lload 5 /* p */
lconst_0
lcmp
ifne 14
13: .line 210
new sun.misc.FDBigInt
dup
aload 4 /* r */
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
invokespecial sun.misc.FDBigInt.<init>:([II)V
areturn
14: .line 212
StackMap locals:
StackMap stack:
aload 4 /* r */
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
lload 5 /* p */
l2i
iastore
15: .line 213
new sun.misc.FDBigInt
dup
aload 4 /* r */
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
iconst_1
iadd
invokespecial sun.misc.FDBigInt.<init>:([II)V
areturn
end local 5 // long p
end local 4 // int[] r
end local 2 // long v
end local 1 // int iv
end local 0 // sun.misc.FDBigInt this
LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lsun/misc/FDBigInt;
0 16 1 iv I
1 16 2 v J
4 16 4 r [I
5 16 5 p J
6 12 7 i I
MethodParameters:
Name Flags
iv
public void multaddMe(int, int);
descriptor: (II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=8, args_size=3
start local 0 // sun.misc.FDBigInt this
start local 1 // int iv
start local 2 // int addend
0: .line 224
iload 1 /* iv */
i2l
lstore 3 /* v */
start local 3 // long v
1: .line 228
lload 3 /* v */
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iconst_0
iaload
i2l
ldc 4294967295
land
lmul
iload 2 /* addend */
i2l
ldc 4294967295
land
ladd
lstore 5 /* p */
start local 5 // long p
2: .line 229
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iconst_0
lload 5 /* p */
l2i
iastore
3: .line 230
lload 5 /* p */
bipush 32
lushr
lstore 5 /* p */
4: .line 231
iconst_1
istore 7 /* i */
start local 7 // int i
5: goto 10
6: .line 232
StackMap locals: long long int
StackMap stack:
lload 5 /* p */
lload 3 /* v */
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iload 7 /* i */
iaload
i2l
ldc 4294967295
land
lmul
ladd
lstore 5 /* p */
7: .line 233
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iload 7 /* i */
lload 5 /* p */
l2i
iastore
8: .line 234
lload 5 /* p */
bipush 32
lushr
lstore 5 /* p */
9: .line 231
iinc 7 /* i */ 1
StackMap locals:
StackMap stack:
10: iload 7 /* i */
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
if_icmplt 6
end local 7 // int i
11: .line 236
lload 5 /* p */
lconst_0
lcmp
ifeq 14
12: .line 237
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
lload 5 /* p */
l2i
iastore
13: .line 238
aload 0 /* this */
dup
getfield sun.misc.FDBigInt.nWords:I
iconst_1
iadd
putfield sun.misc.FDBigInt.nWords:I
14: .line 240
StackMap locals:
StackMap stack:
return
end local 5 // long p
end local 3 // long v
end local 2 // int addend
end local 1 // int iv
end local 0 // sun.misc.FDBigInt this
LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lsun/misc/FDBigInt;
0 15 1 iv I
0 15 2 addend I
1 15 3 v J
2 15 5 p J
5 11 7 i I
MethodParameters:
Name Flags
iv
addend
public sun.misc.FDBigInt mult(sun.misc.FDBigInt);
descriptor: (Lsun/misc/FDBigInt;)Lsun/misc/FDBigInt;
flags: (0x0001) ACC_PUBLIC
Code:
stack=10, locals=9, args_size=2
start local 0 // sun.misc.FDBigInt this
start local 1 // sun.misc.FDBigInt other
0: .line 249
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
aload 1 /* other */
getfield sun.misc.FDBigInt.nWords:I
iadd
newarray 10
astore 2 /* r */
start local 2 // int[] r
1: .line 253
iconst_0
istore 3 /* i */
start local 3 // int i
2: goto 14
3: .line 254
StackMap locals: int[] int
StackMap stack:
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iload 3 /* i */
iaload
i2l
ldc 4294967295
land
lstore 4 /* v */
start local 4 // long v
4: .line 255
lconst_0
lstore 6 /* p */
start local 6 // long p
5: .line 257
iconst_0
istore 8 /* j */
start local 8 // int j
6: goto 11
7: .line 258
StackMap locals: long long int
StackMap stack:
lload 6 /* p */
aload 2 /* r */
iload 3 /* i */
iload 8 /* j */
iadd
iaload
i2l
ldc 4294967295
land
lload 4 /* v */
aload 1 /* other */
getfield sun.misc.FDBigInt.data:[I
iload 8 /* j */
iaload
i2l
ldc 4294967295
land
lmul
ladd
ladd
lstore 6 /* p */
8: .line 259
aload 2 /* r */
iload 3 /* i */
iload 8 /* j */
iadd
lload 6 /* p */
l2i
iastore
9: .line 260
lload 6 /* p */
bipush 32
lushr
lstore 6 /* p */
10: .line 257
iinc 8 /* j */ 1
StackMap locals:
StackMap stack:
11: iload 8 /* j */
aload 1 /* other */
getfield sun.misc.FDBigInt.nWords:I
if_icmplt 7
12: .line 262
aload 2 /* r */
iload 3 /* i */
iload 8 /* j */
iadd
lload 6 /* p */
l2i
iastore
end local 8 // int j
end local 6 // long p
end local 4 // long v
13: .line 253
iinc 3 /* i */ 1
StackMap locals:
StackMap stack:
14: iload 3 /* i */
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
if_icmplt 3
15: .line 265
aload 2 /* r */
arraylength
iconst_1
isub
istore 3 /* i */
goto 19
16: .line 266
StackMap locals:
StackMap stack:
aload 2 /* r */
iload 3 /* i */
iaload
ifeq 18
17: .line 267
goto 20
18: .line 265
StackMap locals:
StackMap stack:
iinc 3 /* i */ -1
StackMap locals:
StackMap stack:
19: iload 3 /* i */
ifgt 16
20: .line 268
StackMap locals:
StackMap stack:
new sun.misc.FDBigInt
dup
aload 2 /* r */
iload 3 /* i */
iconst_1
iadd
invokespecial sun.misc.FDBigInt.<init>:([II)V
areturn
end local 3 // int i
end local 2 // int[] r
end local 1 // sun.misc.FDBigInt other
end local 0 // sun.misc.FDBigInt this
LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lsun/misc/FDBigInt;
0 21 1 other Lsun/misc/FDBigInt;
1 21 2 r [I
2 21 3 i I
4 13 4 v J
5 13 6 p J
6 13 8 j I
MethodParameters:
Name Flags
other
public sun.misc.FDBigInt add(sun.misc.FDBigInt);
descriptor: (Lsun/misc/FDBigInt;)Lsun/misc/FDBigInt;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=11, args_size=2
start local 0 // sun.misc.FDBigInt this
start local 1 // sun.misc.FDBigInt other
0: .line 279
lconst_0
lstore 7 /* c */
start local 7 // long c
1: .line 282
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
aload 1 /* other */
getfield sun.misc.FDBigInt.nWords:I
if_icmplt 7
2: .line 283
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
astore 3 /* a */
start local 3 // int[] a
3: .line 284
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
istore 5 /* n */
start local 5 // int n
4: .line 285
aload 1 /* other */
getfield sun.misc.FDBigInt.data:[I
astore 4 /* b */
start local 4 // int[] b
5: .line 286
aload 1 /* other */
getfield sun.misc.FDBigInt.nWords:I
istore 6 /* m */
start local 6 // int m
6: .line 287
goto 11
end local 6 // int m
end local 5 // int n
end local 4 // int[] b
end local 3 // int[] a
7: .line 288
StackMap locals: sun.misc.FDBigInt sun.misc.FDBigInt top top top top top long
StackMap stack:
aload 1 /* other */
getfield sun.misc.FDBigInt.data:[I
astore 3 /* a */
start local 3 // int[] a
8: .line 289
aload 1 /* other */
getfield sun.misc.FDBigInt.nWords:I
istore 5 /* n */
start local 5 // int n
9: .line 290
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
astore 4 /* b */
start local 4 // int[] b
10: .line 291
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
istore 6 /* m */
start local 6 // int m
11: .line 293
StackMap locals: sun.misc.FDBigInt sun.misc.FDBigInt top int[] int[] int int long
StackMap stack:
iload 5 /* n */
newarray 10
astore 9 /* r */
start local 9 // int[] r
12: .line 294
iconst_0
istore 2 /* i */
start local 2 // int i
13: goto 20
14: .line 295
StackMap locals: sun.misc.FDBigInt sun.misc.FDBigInt int int[] int[] int int long int[]
StackMap stack:
lload 7 /* c */
aload 3 /* a */
iload 2 /* i */
iaload
i2l
ldc 4294967295
land
ladd
lstore 7 /* c */
15: .line 296
iload 2 /* i */
iload 6 /* m */
if_icmpge 17
16: .line 297
lload 7 /* c */
aload 4 /* b */
iload 2 /* i */
iaload
i2l
ldc 4294967295
land
ladd
lstore 7 /* c */
17: .line 299
StackMap locals:
StackMap stack:
aload 9 /* r */
iload 2 /* i */
lload 7 /* c */
l2i
iastore
18: .line 300
lload 7 /* c */
bipush 32
lshr
lstore 7 /* c */
19: .line 294
iinc 2 /* i */ 1
StackMap locals:
StackMap stack:
20: iload 2 /* i */
iload 5 /* n */
if_icmplt 14
21: .line 302
lload 7 /* c */
lconst_0
lcmp
ifeq 26
22: .line 304
aload 9 /* r */
arraylength
iconst_1
iadd
newarray 10
astore 10 /* s */
start local 10 // int[] s
23: .line 305
aload 9 /* r */
iconst_0
aload 10 /* s */
iconst_0
aload 9 /* r */
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
24: .line 306
aload 10 /* s */
iload 2 /* i */
iinc 2 /* i */ 1
lload 7 /* c */
l2i
iastore
25: .line 307
new sun.misc.FDBigInt
dup
aload 10 /* s */
iload 2 /* i */
invokespecial sun.misc.FDBigInt.<init>:([II)V
areturn
end local 10 // int[] s
26: .line 309
StackMap locals:
StackMap stack:
new sun.misc.FDBigInt
dup
aload 9 /* r */
iload 2 /* i */
invokespecial sun.misc.FDBigInt.<init>:([II)V
areturn
end local 9 // int[] r
end local 7 // long c
end local 6 // int m
end local 5 // int n
end local 4 // int[] b
end local 3 // int[] a
end local 2 // int i
end local 1 // sun.misc.FDBigInt other
end local 0 // sun.misc.FDBigInt this
LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lsun/misc/FDBigInt;
0 27 1 other Lsun/misc/FDBigInt;
13 27 2 i I
3 7 3 a [I
8 27 3 a [I
5 7 4 b [I
10 27 4 b [I
4 7 5 n I
9 27 5 n I
6 7 6 m I
11 27 6 m I
1 27 7 c J
12 27 9 r [I
23 26 10 s [I
MethodParameters:
Name Flags
other
public sun.misc.FDBigInt sub(sun.misc.FDBigInt);
descriptor: (Lsun/misc/FDBigInt;)Lsun/misc/FDBigInt;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=9, args_size=2
start local 0 // sun.misc.FDBigInt this
start local 1 // sun.misc.FDBigInt other
0: .line 318
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
newarray 10
astore 2 /* r */
start local 2 // int[] r
1: .line 320
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
istore 4 /* n */
start local 4 // int n
2: .line 321
aload 1 /* other */
getfield sun.misc.FDBigInt.nWords:I
istore 5 /* m */
start local 5 // int m
3: .line 322
iconst_0
istore 6 /* nzeros */
start local 6 // int nzeros
4: .line 323
lconst_0
lstore 7 /* c */
start local 7 // long c
5: .line 324
iconst_0
istore 3 /* i */
start local 3 // int i
6: goto 15
7: .line 325
StackMap locals: sun.misc.FDBigInt sun.misc.FDBigInt int[] int int int int long
StackMap stack:
lload 7 /* c */
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iload 3 /* i */
iaload
i2l
ldc 4294967295
land
ladd
lstore 7 /* c */
8: .line 326
iload 3 /* i */
iload 5 /* m */
if_icmpge 10
9: .line 327
lload 7 /* c */
aload 1 /* other */
getfield sun.misc.FDBigInt.data:[I
iload 3 /* i */
iaload
i2l
ldc 4294967295
land
lsub
lstore 7 /* c */
10: .line 329
StackMap locals:
StackMap stack:
aload 2 /* r */
iload 3 /* i */
lload 7 /* c */
l2i
dup_x2
iastore
ifne 12
11: .line 330
iinc 6 /* nzeros */ 1
goto 13
12: .line 332
StackMap locals:
StackMap stack:
iconst_0
istore 6 /* nzeros */
13: .line 333
StackMap locals:
StackMap stack:
lload 7 /* c */
bipush 32
lshr
lstore 7 /* c */
14: .line 324
iinc 3 /* i */ 1
StackMap locals:
StackMap stack:
15: iload 3 /* i */
iload 4 /* n */
if_icmplt 7
16: .line 335
getstatic sun.misc.FDBigInt.$assertionsDisabled:Z
ifne 17
lload 7 /* c */
lconst_0
lcmp
ifeq 17
new java.lang.AssertionError
dup
lload 7 /* c */
invokespecial java.lang.AssertionError.<init>:(J)V
athrow
17: .line 336
StackMap locals:
StackMap stack:
getstatic sun.misc.FDBigInt.$assertionsDisabled:Z
ifne 18
iload 3 /* i */
iload 5 /* m */
aload 1 /* other */
invokestatic sun.misc.FDBigInt.dataInRangeIsZero:(IILsun/misc/FDBigInt;)Z
ifne 18
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
18: .line 337
StackMap locals:
StackMap stack:
new sun.misc.FDBigInt
dup
aload 2 /* r */
iload 4 /* n */
iload 6 /* nzeros */
isub
invokespecial sun.misc.FDBigInt.<init>:([II)V
areturn
end local 7 // long c
end local 6 // int nzeros
end local 5 // int m
end local 4 // int n
end local 3 // int i
end local 2 // int[] r
end local 1 // sun.misc.FDBigInt other
end local 0 // sun.misc.FDBigInt this
LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lsun/misc/FDBigInt;
0 19 1 other Lsun/misc/FDBigInt;
1 19 2 r [I
6 19 3 i I
2 19 4 n I
3 19 5 m I
4 19 6 nzeros I
5 19 7 c J
MethodParameters:
Name Flags
other
private static boolean dataInRangeIsZero(int, int, sun.misc.FDBigInt);
descriptor: (IILsun/misc/FDBigInt;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=3, args_size=3
start local 0 // int i
start local 1 // int m
start local 2 // sun.misc.FDBigInt other
0: .line 341
goto 3
1: .line 342
StackMap locals:
StackMap stack:
aload 2 /* other */
getfield sun.misc.FDBigInt.data:[I
iload 0 /* i */
iinc 0 /* i */ 1
iaload
ifeq 3
2: .line 343
iconst_0
ireturn
3: .line 341
StackMap locals:
StackMap stack:
iload 0 /* i */
iload 1 /* m */
if_icmplt 1
4: .line 344
iconst_1
ireturn
end local 2 // sun.misc.FDBigInt other
end local 1 // int m
end local 0 // int i
LocalVariableTable:
Start End Slot Name Signature
0 5 0 i I
0 5 1 m I
0 5 2 other Lsun/misc/FDBigInt;
MethodParameters:
Name Flags
i
m
other
public int cmp(sun.misc.FDBigInt);
descriptor: (Lsun/misc/FDBigInt;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=2
start local 0 // sun.misc.FDBigInt this
start local 1 // sun.misc.FDBigInt other
0: .line 356
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
aload 1 /* other */
getfield sun.misc.FDBigInt.nWords:I
if_icmple 8
1: .line 359
aload 1 /* other */
getfield sun.misc.FDBigInt.nWords:I
iconst_1
isub
istore 3 /* j */
start local 3 // int j
2: .line 360
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
iconst_1
isub
istore 2 /* i */
start local 2 // int i
3: goto 6
4: .line 361
StackMap locals: int int
StackMap stack:
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iload 2 /* i */
iaload
ifeq 5
iconst_1
ireturn
5: .line 360
StackMap locals:
StackMap stack:
iinc 2 /* i */ -1
StackMap locals:
StackMap stack:
6: iload 2 /* i */
iload 3 /* j */
if_icmpgt 4
end local 3 // int j
7: .line 362
goto 21
end local 2 // int i
StackMap locals:
StackMap stack:
8: aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
aload 1 /* other */
getfield sun.misc.FDBigInt.nWords:I
if_icmpge 16
9: .line 365
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
iconst_1
isub
istore 3 /* j */
start local 3 // int j
10: .line 366
aload 1 /* other */
getfield sun.misc.FDBigInt.nWords:I
iconst_1
isub
istore 2 /* i */
start local 2 // int i
11: goto 14
12: .line 367
StackMap locals: int int
StackMap stack:
aload 1 /* other */
getfield sun.misc.FDBigInt.data:[I
iload 2 /* i */
iaload
ifeq 13
iconst_m1
ireturn
13: .line 366
StackMap locals:
StackMap stack:
iinc 2 /* i */ -1
StackMap locals:
StackMap stack:
14: iload 2 /* i */
iload 3 /* j */
if_icmpgt 12
end local 3 // int j
15: .line 368
goto 21
end local 2 // int i
16: .line 369
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
iconst_1
isub
istore 2 /* i */
start local 2 // int i
17: .line 371
goto 21
18: .line 372
StackMap locals: int
StackMap stack:
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iload 2 /* i */
iaload
aload 1 /* other */
getfield sun.misc.FDBigInt.data:[I
iload 2 /* i */
iaload
if_icmpeq 20
19: .line 373
goto 22
20: .line 371
StackMap locals:
StackMap stack:
iinc 2 /* i */ -1
StackMap locals:
StackMap stack:
21: iload 2 /* i */
ifgt 18
22: .line 376
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iload 2 /* i */
iaload
istore 3 /* a */
start local 3 // int a
23: .line 377
aload 1 /* other */
getfield sun.misc.FDBigInt.data:[I
iload 2 /* i */
iaload
istore 4 /* b */
start local 4 // int b
24: .line 378
iload 3 /* a */
ifge 28
25: .line 380
iload 4 /* b */
ifge 27
26: .line 381
iload 3 /* a */
iload 4 /* b */
isub
ireturn
27: .line 383
StackMap locals: int int
StackMap stack:
iconst_1
ireturn
28: .line 387
StackMap locals:
StackMap stack:
iload 4 /* b */
ifge 30
29: .line 389
iconst_m1
ireturn
30: .line 391
StackMap locals:
StackMap stack:
iload 3 /* a */
iload 4 /* b */
isub
ireturn
end local 4 // int b
end local 3 // int a
end local 2 // int i
end local 1 // sun.misc.FDBigInt other
end local 0 // sun.misc.FDBigInt this
LocalVariableTable:
Start End Slot Name Signature
0 31 0 this Lsun/misc/FDBigInt;
0 31 1 other Lsun/misc/FDBigInt;
3 8 2 i I
11 16 2 i I
17 31 2 i I
2 7 3 j I
10 15 3 j I
23 31 3 a I
24 31 4 b I
MethodParameters:
Name Flags
other
public int quoRemIteration(sun.misc.FDBigInt);
descriptor: (Lsun/misc/FDBigInt;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=10, locals=10, args_size=2
start local 0 // sun.misc.FDBigInt this
start local 1 // sun.misc.FDBigInt S
0: .line 412
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
aload 1 /* S */
getfield sun.misc.FDBigInt.nWords:I
if_icmpeq 2
1: .line 413
new java.lang.IllegalArgumentException
dup
ldc "disparate values"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: .line 418
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
iconst_1
isub
istore 2 /* n */
start local 2 // int n
3: .line 419
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iload 2 /* n */
iaload
i2l
ldc 4294967295
land
aload 1 /* S */
getfield sun.misc.FDBigInt.data:[I
iload 2 /* n */
iaload
i2l
ldiv
lstore 3 /* q */
start local 3 // long q
4: .line 420
lconst_0
lstore 5 /* diff */
start local 5 // long diff
5: .line 421
iconst_0
istore 7 /* i */
start local 7 // int i
6: goto 11
7: .line 422
StackMap locals: sun.misc.FDBigInt sun.misc.FDBigInt int long long int
StackMap stack:
lload 5 /* diff */
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iload 7 /* i */
iaload
i2l
ldc 4294967295
land
lload 3 /* q */
aload 1 /* S */
getfield sun.misc.FDBigInt.data:[I
iload 7 /* i */
iaload
i2l
ldc 4294967295
land
lmul
lsub
ladd
lstore 5 /* diff */
8: .line 423
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iload 7 /* i */
lload 5 /* diff */
l2i
iastore
9: .line 424
lload 5 /* diff */
bipush 32
lshr
lstore 5 /* diff */
10: .line 421
iinc 7 /* i */ 1
StackMap locals:
StackMap stack:
11: iload 7 /* i */
iload 2 /* n */
if_icmple 7
end local 7 // int i
12: .line 426
lload 5 /* diff */
lconst_0
lcmp
ifeq 26
13: .line 430
lconst_0
lstore 7 /* sum */
start local 7 // long sum
14: .line 431
goto 25
15: .line 432
StackMap locals: sun.misc.FDBigInt sun.misc.FDBigInt int long long long
StackMap stack:
lconst_0
lstore 7 /* sum */
16: .line 433
iconst_0
istore 9 /* i */
start local 9 // int i
17: goto 22
18: .line 434
StackMap locals: int
StackMap stack:
lload 7 /* sum */
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iload 9 /* i */
iaload
i2l
ldc 4294967295
land
aload 1 /* S */
getfield sun.misc.FDBigInt.data:[I
iload 9 /* i */
iaload
i2l
ldc 4294967295
land
ladd
ladd
lstore 7 /* sum */
19: .line 435
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iload 9 /* i */
lload 7 /* sum */
l2i
iastore
20: .line 436
lload 7 /* sum */
bipush 32
lshr
lstore 7 /* sum */
21: .line 433
iinc 9 /* i */ 1
StackMap locals:
StackMap stack:
22: iload 9 /* i */
iload 2 /* n */
if_icmple 18
end local 9 // int i
23: .line 447
getstatic sun.misc.FDBigInt.$assertionsDisabled:Z
ifne 24
lload 7 /* sum */
lconst_0
lcmp
ifeq 24
lload 7 /* sum */
lconst_1
lcmp
ifeq 24
new java.lang.AssertionError
dup
lload 7 /* sum */
invokespecial java.lang.AssertionError.<init>:(J)V
athrow
24: .line 448
StackMap locals:
StackMap stack:
lload 3 /* q */
lconst_1
lsub
lstore 3 /* q */
25: .line 431
StackMap locals:
StackMap stack:
lload 7 /* sum */
lconst_0
lcmp
ifeq 15
end local 7 // long sum
26: .line 454
StackMap locals:
StackMap stack:
lconst_0
lstore 7 /* p */
start local 7 // long p
27: .line 455
iconst_0
istore 9 /* i */
start local 9 // int i
28: goto 33
29: .line 456
StackMap locals: long int
StackMap stack:
lload 7 /* p */
ldc 10
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iload 9 /* i */
iaload
i2l
ldc 4294967295
land
lmul
ladd
lstore 7 /* p */
30: .line 457
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iload 9 /* i */
lload 7 /* p */
l2i
iastore
31: .line 458
lload 7 /* p */
bipush 32
lshr
lstore 7 /* p */
32: .line 455
iinc 9 /* i */ 1
StackMap locals:
StackMap stack:
33: iload 9 /* i */
iload 2 /* n */
if_icmple 29
end local 9 // int i
34: .line 460
getstatic sun.misc.FDBigInt.$assertionsDisabled:Z
ifne 35
lload 7 /* p */
lconst_0
lcmp
ifeq 35
new java.lang.AssertionError
dup
lload 7 /* p */
invokespecial java.lang.AssertionError.<init>:(J)V
athrow
35: .line 461
StackMap locals:
StackMap stack:
lload 3 /* q */
l2i
ireturn
end local 7 // long p
end local 5 // long diff
end local 3 // long q
end local 2 // int n
end local 1 // sun.misc.FDBigInt S
end local 0 // sun.misc.FDBigInt this
LocalVariableTable:
Start End Slot Name Signature
0 36 0 this Lsun/misc/FDBigInt;
0 36 1 S Lsun/misc/FDBigInt;
3 36 2 n I
4 36 3 q J
5 36 5 diff J
6 12 7 i I
14 26 7 sum J
17 23 9 i I
27 36 7 p J
28 34 9 i I
Exceptions:
throws java.lang.IllegalArgumentException
MethodParameters:
Name Flags
S
public long longValue();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=1, args_size=1
start local 0 // sun.misc.FDBigInt this
0: .line 467
getstatic sun.misc.FDBigInt.$assertionsDisabled:Z
ifne 1
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
ifgt 1
new java.lang.AssertionError
dup
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
invokespecial java.lang.AssertionError.<init>:(I)V
athrow
1: .line 469
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
iconst_1
if_icmpne 3
2: .line 470
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iconst_0
iaload
i2l
ldc 4294967295
land
lreturn
3: .line 472
StackMap locals:
StackMap stack:
getstatic sun.misc.FDBigInt.$assertionsDisabled:Z
ifne 4
iconst_2
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
aload 0 /* this */
invokestatic sun.misc.FDBigInt.dataInRangeIsZero:(IILsun/misc/FDBigInt;)Z
ifne 4
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
4: .line 473
StackMap locals:
StackMap stack:
getstatic sun.misc.FDBigInt.$assertionsDisabled:Z
ifne 5
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iconst_1
iaload
ifge 5
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
5: .line 474
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iconst_1
iaload
i2l
bipush 32
lshl
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iconst_0
iaload
i2l
ldc 4294967295
land
lor
lreturn
end local 0 // sun.misc.FDBigInt this
LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/misc/FDBigInt;
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=1
start local 0 // sun.misc.FDBigInt this
0: .line 479
new java.lang.StringBuffer
dup
bipush 30
invokespecial java.lang.StringBuffer.<init>:(I)V
astore 1 /* r */
start local 1 // java.lang.StringBuffer r
1: .line 480
aload 1 /* r */
bipush 91
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
2: .line 481
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
iconst_1
isub
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
arraylength
iconst_1
isub
invokestatic java.lang.Math.min:(II)I
istore 2 /* i */
start local 2 // int i
3: .line 482
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
arraylength
if_icmple 9
4: .line 483
aload 1 /* r */
new java.lang.StringBuilder
dup
ldc "("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
arraylength
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "<"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0 /* this */
getfield sun.misc.FDBigInt.nWords:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "!)"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
5: .line 485
goto 9
6: .line 486
StackMap locals: java.lang.StringBuffer int
StackMap stack:
aload 1 /* r */
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iload 2 /* i */
iaload
invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
7: .line 487
aload 1 /* r */
bipush 32
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
8: .line 485
iinc 2 /* i */ -1
StackMap locals:
StackMap stack:
9: iload 2 /* i */
ifgt 6
10: .line 489
aload 1 /* r */
aload 0 /* this */
getfield sun.misc.FDBigInt.data:[I
iconst_0
iaload
invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
11: .line 490
aload 1 /* r */
bipush 93
invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
pop
12: .line 491
new java.lang.String
dup
aload 1 /* r */
invokespecial java.lang.String.<init>:(Ljava/lang/StringBuffer;)V
areturn
end local 2 // int i
end local 1 // java.lang.StringBuffer r
end local 0 // sun.misc.FDBigInt this
LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lsun/misc/FDBigInt;
1 13 1 r Ljava/lang/StringBuffer;
3 13 2 i I
}
SourceFile: "FDBigInt.java"