public class sun.security.util.math.intpoly.IntegerPolynomial1305 extends sun.security.util.math.intpoly.IntegerPolynomial
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.security.util.math.intpoly.IntegerPolynomial1305
super_class: sun.security.util.math.intpoly.IntegerPolynomial
{
protected static final int SUBTRAHEND;
descriptor: I
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
ConstantValue: 5
protected static final int NUM_LIMBS;
descriptor: I
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
ConstantValue: 5
private static final int POWER;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 130
private static final int BITS_PER_LIMB;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 26
private static final java.math.BigInteger MODULUS;
descriptor: Ljava/math/BigInteger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.VarHandle AS_LONG_LE;
descriptor: Ljava/lang/invoke/VarHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=0, args_size=0
0: .line 45
getstatic sun.security.util.math.intpoly.IntegerPolynomial1305.TWO:Ljava/math/BigInteger;
sipush 130
invokevirtual java.math.BigInteger.pow:(I)Ljava/math/BigInteger;
ldc 5
invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.subtract:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
1: .line 44
putstatic sun.security.util.math.intpoly.IntegerPolynomial1305.MODULUS:Ljava/math/BigInteger;
2: .line 146
ldc [J
getstatic java.nio.ByteOrder.LITTLE_ENDIAN:Ljava/nio/ByteOrder;
invokestatic java.lang.invoke.MethodHandles.byteArrayViewVarHandle:(Ljava/lang/Class;Ljava/nio/ByteOrder;)Ljava/lang/invoke/VarHandle;
3: .line 145
putstatic sun.security.util.math.intpoly.IntegerPolynomial1305.AS_LONG_LE:Ljava/lang/invoke/VarHandle;
4: .line 146
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 // sun.security.util.math.intpoly.IntegerPolynomial1305 this
0: .line 48
aload 0 /* this */
bipush 26
iconst_5
iconst_1
getstatic sun.security.util.math.intpoly.IntegerPolynomial1305.MODULUS:Ljava/math/BigInteger;
invokespecial sun.security.util.math.intpoly.IntegerPolynomial.<init>:(IIILjava/math/BigInteger;)V
1: .line 49
return
end local 0 // sun.security.util.math.intpoly.IntegerPolynomial1305 this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/util/math/intpoly/IntegerPolynomial1305;
protected void mult(long[], long[], long[]);
descriptor: ([J[J[J)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=20, locals=22, args_size=4
start local 0 // sun.security.util.math.intpoly.IntegerPolynomial1305 this
start local 1 // long[] a
start local 2 // long[] b
start local 3 // long[] r
0: .line 63
aload 1 /* a */
iconst_0
laload
aload 2 /* b */
iconst_0
laload
lmul
lstore 4 /* c0 */
start local 4 // long c0
1: .line 64
aload 1 /* a */
iconst_0
laload
aload 2 /* b */
iconst_1
laload
lmul
aload 1 /* a */
iconst_1
laload
aload 2 /* b */
iconst_0
laload
lmul
ladd
lstore 6 /* c1 */
start local 6 // long c1
2: .line 65
aload 1 /* a */
iconst_0
laload
aload 2 /* b */
iconst_2
laload
lmul
aload 1 /* a */
iconst_1
laload
aload 2 /* b */
iconst_1
laload
lmul
ladd
aload 1 /* a */
iconst_2
laload
aload 2 /* b */
iconst_0
laload
lmul
ladd
lstore 8 /* c2 */
start local 8 // long c2
3: .line 66
aload 1 /* a */
iconst_0
laload
aload 2 /* b */
iconst_3
laload
lmul
aload 1 /* a */
iconst_1
laload
aload 2 /* b */
iconst_2
laload
lmul
ladd
aload 1 /* a */
iconst_2
laload
aload 2 /* b */
iconst_1
laload
lmul
ladd
aload 1 /* a */
iconst_3
laload
aload 2 /* b */
iconst_0
laload
lmul
ladd
lstore 10 /* c3 */
start local 10 // long c3
4: .line 67
aload 1 /* a */
iconst_0
laload
aload 2 /* b */
iconst_4
laload
lmul
aload 1 /* a */
iconst_1
laload
aload 2 /* b */
iconst_3
laload
lmul
ladd
aload 1 /* a */
iconst_2
laload
aload 2 /* b */
iconst_2
laload
lmul
ladd
aload 1 /* a */
iconst_3
laload
aload 2 /* b */
iconst_1
laload
lmul
ladd
aload 1 /* a */
iconst_4
laload
aload 2 /* b */
iconst_0
laload
lmul
ladd
lstore 12 /* c4 */
start local 12 // long c4
5: .line 68
aload 1 /* a */
iconst_1
laload
aload 2 /* b */
iconst_4
laload
lmul
aload 1 /* a */
iconst_2
laload
aload 2 /* b */
iconst_3
laload
lmul
ladd
aload 1 /* a */
iconst_3
laload
aload 2 /* b */
iconst_2
laload
lmul
ladd
aload 1 /* a */
iconst_4
laload
aload 2 /* b */
iconst_1
laload
lmul
ladd
lstore 14 /* c5 */
start local 14 // long c5
6: .line 69
aload 1 /* a */
iconst_2
laload
aload 2 /* b */
iconst_4
laload
lmul
aload 1 /* a */
iconst_3
laload
aload 2 /* b */
iconst_3
laload
lmul
ladd
aload 1 /* a */
iconst_4
laload
aload 2 /* b */
iconst_2
laload
lmul
ladd
lstore 16 /* c6 */
start local 16 // long c6
7: .line 70
aload 1 /* a */
iconst_3
laload
aload 2 /* b */
iconst_4
laload
lmul
aload 1 /* a */
iconst_4
laload
aload 2 /* b */
iconst_3
laload
lmul
ladd
lstore 18 /* c7 */
start local 18 // long c7
8: .line 71
aload 1 /* a */
iconst_4
laload
aload 2 /* b */
iconst_4
laload
lmul
lstore 20 /* c8 */
start local 20 // long c8
9: .line 73
aload 0 /* this */
aload 3 /* r */
lload 4 /* c0 */
lload 6 /* c1 */
lload 8 /* c2 */
lload 10 /* c3 */
lload 12 /* c4 */
lload 14 /* c5 */
lload 16 /* c6 */
lload 18 /* c7 */
lload 20 /* c8 */
invokevirtual sun.security.util.math.intpoly.IntegerPolynomial1305.carryReduce:([JJJJJJJJJJ)V
10: .line 74
return
end local 20 // long c8
end local 18 // long c7
end local 16 // long c6
end local 14 // long c5
end local 12 // long c4
end local 10 // long c3
end local 8 // long c2
end local 6 // long c1
end local 4 // long c0
end local 3 // long[] r
end local 2 // long[] b
end local 1 // long[] a
end local 0 // sun.security.util.math.intpoly.IntegerPolynomial1305 this
LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lsun/security/util/math/intpoly/IntegerPolynomial1305;
0 11 1 a [J
0 11 2 b [J
0 11 3 r [J
1 11 4 c0 J
2 11 6 c1 J
3 11 8 c2 J
4 11 10 c3 J
5 11 12 c4 J
6 11 14 c5 J
7 11 16 c6 J
8 11 18 c7 J
9 11 20 c8 J
MethodParameters:
Name Flags
a
b
r
private void carryReduce(long[], long, long, long, long, long, long, long, long, long);
descriptor: ([JJJJJJJJJJ)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=24, args_size=11
start local 0 // sun.security.util.math.intpoly.IntegerPolynomial1305 this
start local 1 // long[] r
start local 2 // long c0
start local 4 // long c1
start local 6 // long c2
start local 8 // long c3
start local 10 // long c4
start local 12 // long c5
start local 14 // long c6
start local 16 // long c7
start local 18 // long c8
0: .line 79
aload 1 /* r */
iconst_2
lload 6 /* c2 */
lload 16 /* c7 */
ldc 5
lmul
ladd
lastore
1: .line 80
lload 8 /* c3 */
lload 18 /* c8 */
ldc 5
lmul
ladd
lstore 8 /* c3 */
2: .line 83
aload 0 /* this */
lload 8 /* c3 */
invokevirtual sun.security.util.math.intpoly.IntegerPolynomial1305.carryValue:(J)J
lstore 20 /* carry3 */
start local 20 // long carry3
3: .line 84
aload 1 /* r */
iconst_3
lload 8 /* c3 */
lload 20 /* carry3 */
bipush 26
lshl
lsub
lastore
4: .line 85
lload 10 /* c4 */
lload 20 /* carry3 */
ladd
lstore 10 /* c4 */
5: .line 87
aload 0 /* this */
lload 10 /* c4 */
invokevirtual sun.security.util.math.intpoly.IntegerPolynomial1305.carryValue:(J)J
lstore 22 /* carry4 */
start local 22 // long carry4
6: .line 88
aload 1 /* r */
iconst_4
lload 10 /* c4 */
lload 22 /* carry4 */
bipush 26
lshl
lsub
lastore
7: .line 89
lload 12 /* c5 */
lload 22 /* carry4 */
ladd
lstore 12 /* c5 */
8: .line 92
aload 1 /* r */
iconst_0
lload 2 /* c0 */
lload 12 /* c5 */
ldc 5
lmul
ladd
lastore
9: .line 93
aload 1 /* r */
iconst_1
lload 4 /* c1 */
lload 14 /* c6 */
ldc 5
lmul
ladd
lastore
10: .line 96
aload 0 /* this */
aload 1 /* r */
invokevirtual sun.security.util.math.intpoly.IntegerPolynomial1305.carry:([J)V
11: .line 97
return
end local 22 // long carry4
end local 20 // long carry3
end local 18 // long c8
end local 16 // long c7
end local 14 // long c6
end local 12 // long c5
end local 10 // long c4
end local 8 // long c3
end local 6 // long c2
end local 4 // long c1
end local 2 // long c0
end local 1 // long[] r
end local 0 // sun.security.util.math.intpoly.IntegerPolynomial1305 this
LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lsun/security/util/math/intpoly/IntegerPolynomial1305;
0 12 1 r [J
0 12 2 c0 J
0 12 4 c1 J
0 12 6 c2 J
0 12 8 c3 J
0 12 10 c4 J
0 12 12 c5 J
0 12 14 c6 J
0 12 16 c7 J
0 12 18 c8 J
3 12 20 carry3 J
6 12 22 carry4 J
MethodParameters:
Name Flags
r
c0
c1
c2
c3
c4
c5
c6
c7
c8
protected void square(long[], long[]);
descriptor: ([J[J)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=20, locals=21, args_size=3
start local 0 // sun.security.util.math.intpoly.IntegerPolynomial1305 this
start local 1 // long[] a
start local 2 // long[] r
0: .line 112
aload 1 /* a */
iconst_0
laload
aload 1 /* a */
iconst_0
laload
lmul
lstore 3 /* c0 */
start local 3 // long c0
1: .line 113
ldc 2
aload 1 /* a */
iconst_0
laload
aload 1 /* a */
iconst_1
laload
lmul
lmul
lstore 5 /* c1 */
start local 5 // long c1
2: .line 114
ldc 2
aload 1 /* a */
iconst_0
laload
aload 1 /* a */
iconst_2
laload
lmul
lmul
aload 1 /* a */
iconst_1
laload
aload 1 /* a */
iconst_1
laload
lmul
ladd
lstore 7 /* c2 */
start local 7 // long c2
3: .line 115
ldc 2
aload 1 /* a */
iconst_0
laload
aload 1 /* a */
iconst_3
laload
lmul
aload 1 /* a */
iconst_1
laload
aload 1 /* a */
iconst_2
laload
lmul
ladd
lmul
lstore 9 /* c3 */
start local 9 // long c3
4: .line 116
ldc 2
aload 1 /* a */
iconst_0
laload
aload 1 /* a */
iconst_4
laload
lmul
aload 1 /* a */
iconst_1
laload
aload 1 /* a */
iconst_3
laload
lmul
ladd
lmul
aload 1 /* a */
iconst_2
laload
aload 1 /* a */
iconst_2
laload
lmul
ladd
lstore 11 /* c4 */
start local 11 // long c4
5: .line 117
ldc 2
aload 1 /* a */
iconst_1
laload
aload 1 /* a */
iconst_4
laload
lmul
aload 1 /* a */
iconst_2
laload
aload 1 /* a */
iconst_3
laload
lmul
ladd
lmul
lstore 13 /* c5 */
start local 13 // long c5
6: .line 118
ldc 2
aload 1 /* a */
iconst_2
laload
aload 1 /* a */
iconst_4
laload
lmul
lmul
aload 1 /* a */
iconst_3
laload
aload 1 /* a */
iconst_3
laload
lmul
ladd
lstore 15 /* c6 */
start local 15 // long c6
7: .line 119
ldc 2
aload 1 /* a */
iconst_3
laload
aload 1 /* a */
iconst_4
laload
lmul
lmul
lstore 17 /* c7 */
start local 17 // long c7
8: .line 120
aload 1 /* a */
iconst_4
laload
aload 1 /* a */
iconst_4
laload
lmul
lstore 19 /* c8 */
start local 19 // long c8
9: .line 122
aload 0 /* this */
aload 2 /* r */
lload 3 /* c0 */
lload 5 /* c1 */
lload 7 /* c2 */
lload 9 /* c3 */
lload 11 /* c4 */
lload 13 /* c5 */
lload 15 /* c6 */
lload 17 /* c7 */
lload 19 /* c8 */
invokevirtual sun.security.util.math.intpoly.IntegerPolynomial1305.carryReduce:([JJJJJJJJJJ)V
10: .line 123
return
end local 19 // long c8
end local 17 // long c7
end local 15 // long c6
end local 13 // long c5
end local 11 // long c4
end local 9 // long c3
end local 7 // long c2
end local 5 // long c1
end local 3 // long c0
end local 2 // long[] r
end local 1 // long[] a
end local 0 // sun.security.util.math.intpoly.IntegerPolynomial1305 this
LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lsun/security/util/math/intpoly/IntegerPolynomial1305;
0 11 1 a [J
0 11 2 r [J
1 11 3 c0 J
2 11 5 c1 J
3 11 7 c2 J
4 11 9 c3 J
5 11 11 c4 J
6 11 13 c5 J
7 11 15 c6 J
8 11 17 c7 J
9 11 19 c8 J
MethodParameters:
Name Flags
a
r
protected void encode(java.nio.ByteBuffer, int, byte, long[]);
descriptor: (Ljava/nio/ByteBuffer;IB[J)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=7, locals=9, args_size=5
start local 0 // sun.security.util.math.intpoly.IntegerPolynomial1305 this
start local 1 // java.nio.ByteBuffer buf
start local 2 // int length
start local 3 // byte highByte
start local 4 // long[] result
0: .line 128
iload 2 /* length */
bipush 16
if_icmpne 5
1: .line 129
aload 1 /* buf */
invokevirtual java.nio.ByteBuffer.getLong:()J
lstore 5 /* low */
start local 5 // long low
2: .line 130
aload 1 /* buf */
invokevirtual java.nio.ByteBuffer.getLong:()J
lstore 7 /* high */
start local 7 // long high
3: .line 131
aload 0 /* this */
lload 7 /* high */
lload 5 /* low */
iload 3 /* highByte */
aload 4 /* result */
invokevirtual sun.security.util.math.intpoly.IntegerPolynomial1305.encode:(JJB[J)V
end local 7 // long high
end local 5 // long low
4: .line 132
goto 6
5: .line 133
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 1 /* buf */
iload 2 /* length */
iload 3 /* highByte */
aload 4 /* result */
invokespecial sun.security.util.math.intpoly.IntegerPolynomial.encode:(Ljava/nio/ByteBuffer;IB[J)V
6: .line 135
StackMap locals:
StackMap stack:
return
end local 4 // long[] result
end local 3 // byte highByte
end local 2 // int length
end local 1 // java.nio.ByteBuffer buf
end local 0 // sun.security.util.math.intpoly.IntegerPolynomial1305 this
LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/security/util/math/intpoly/IntegerPolynomial1305;
0 7 1 buf Ljava/nio/ByteBuffer;
0 7 2 length I
0 7 3 highByte B
0 7 4 result [J
2 4 5 low J
3 4 7 high J
MethodParameters:
Name Flags
buf
length
highByte
result
protected void encode(long, long, byte, long[]);
descriptor: (JJB[J)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=8, locals=7, args_size=5
start local 0 // sun.security.util.math.intpoly.IntegerPolynomial1305 this
start local 1 // long high
start local 3 // long low
start local 5 // byte highByte
start local 6 // long[] result
0: .line 138
aload 6 /* result */
iconst_0
lload 3 /* low */
ldc 67108863
land
lastore
1: .line 139
aload 6 /* result */
iconst_1
lload 3 /* low */
bipush 26
lushr
ldc 67108863
land
lastore
2: .line 140
aload 6 /* result */
iconst_2
lload 3 /* low */
bipush 52
lushr
lload 1 /* high */
ldc 16383
land
bipush 12
lshl
ladd
lastore
3: .line 141
aload 6 /* result */
iconst_3
lload 1 /* high */
bipush 14
lushr
ldc 67108863
land
lastore
4: .line 142
aload 6 /* result */
iconst_4
lload 1 /* high */
bipush 40
lushr
iload 5 /* highByte */
bipush 24
ishl
i2l
ladd
lastore
5: .line 143
return
end local 6 // long[] result
end local 5 // byte highByte
end local 3 // long low
end local 1 // long high
end local 0 // sun.security.util.math.intpoly.IntegerPolynomial1305 this
LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/security/util/math/intpoly/IntegerPolynomial1305;
0 6 1 high J
0 6 3 low J
0 6 5 highByte B
0 6 6 result [J
MethodParameters:
Name Flags
high
low
highByte
result
protected void encode(byte[], int, int, byte, long[]);
descriptor: ([BIIB[J)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=7, locals=10, args_size=6
start local 0 // sun.security.util.math.intpoly.IntegerPolynomial1305 this
start local 1 // byte[] v
start local 2 // int offset
start local 3 // int length
start local 4 // byte highByte
start local 5 // long[] result
0: .line 150
iload 3 /* length */
bipush 16
if_icmpne 5
1: .line 151
getstatic sun.security.util.math.intpoly.IntegerPolynomial1305.AS_LONG_LE:Ljava/lang/invoke/VarHandle;
aload 1 /* v */
iload 2 /* offset */
invokevirtual java.lang.invoke.VarHandle.get:([BI)J
lstore 6 /* low */
start local 6 // long low
2: .line 152
getstatic sun.security.util.math.intpoly.IntegerPolynomial1305.AS_LONG_LE:Ljava/lang/invoke/VarHandle;
aload 1 /* v */
iload 2 /* offset */
bipush 8
iadd
invokevirtual java.lang.invoke.VarHandle.get:([BI)J
lstore 8 /* high */
start local 8 // long high
3: .line 153
aload 0 /* this */
lload 8 /* high */
lload 6 /* low */
iload 4 /* highByte */
aload 5 /* result */
invokevirtual sun.security.util.math.intpoly.IntegerPolynomial1305.encode:(JJB[J)V
end local 8 // long high
end local 6 // long low
4: .line 154
goto 6
5: .line 155
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 1 /* v */
iload 2 /* offset */
iload 3 /* length */
iload 4 /* highByte */
aload 5 /* result */
invokespecial sun.security.util.math.intpoly.IntegerPolynomial.encode:([BIIB[J)V
6: .line 157
StackMap locals:
StackMap stack:
return
end local 5 // long[] result
end local 4 // byte highByte
end local 3 // int length
end local 2 // int offset
end local 1 // byte[] v
end local 0 // sun.security.util.math.intpoly.IntegerPolynomial1305 this
LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/security/util/math/intpoly/IntegerPolynomial1305;
0 7 1 v [B
0 7 2 offset I
0 7 3 length I
0 7 4 highByte B
0 7 5 result [J
2 4 6 low J
3 4 8 high J
MethodParameters:
Name Flags
v
offset
length
highByte
result
protected void reduceIn(long[], long, int);
descriptor: ([JJI)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=7, args_size=4
start local 0 // sun.security.util.math.intpoly.IntegerPolynomial1305 this
start local 1 // long[] limbs
start local 2 // long x
start local 4 // int index
0: .line 162
lload 2 /* x */
ldc 5
lmul
lstore 5 /* reducedValue */
start local 5 // long reducedValue
1: .line 163
aload 1 /* limbs */
iload 4 /* index */
iconst_5
isub
dup2
laload
lload 5 /* reducedValue */
ladd
lastore
2: .line 164
return
end local 5 // long reducedValue
end local 4 // int index
end local 2 // long x
end local 1 // long[] limbs
end local 0 // sun.security.util.math.intpoly.IntegerPolynomial1305 this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/security/util/math/intpoly/IntegerPolynomial1305;
0 3 1 limbs [J
0 3 2 x J
0 3 4 index I
1 3 5 reducedValue J
MethodParameters:
Name Flags
limbs
x
index
protected void finalCarryReduceLast(long[]);
descriptor: ([J)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=7, locals=4, args_size=2
start local 0 // sun.security.util.math.intpoly.IntegerPolynomial1305 this
start local 1 // long[] limbs
0: .line 168
aload 1 /* limbs */
aload 0 /* this */
getfield sun.security.util.math.intpoly.IntegerPolynomial1305.numLimbs:I
iconst_1
isub
laload
aload 0 /* this */
getfield sun.security.util.math.intpoly.IntegerPolynomial1305.bitsPerLimb:I
lshr
lstore 2 /* carry */
start local 2 // long carry
1: .line 169
aload 1 /* limbs */
aload 0 /* this */
getfield sun.security.util.math.intpoly.IntegerPolynomial1305.numLimbs:I
iconst_1
isub
dup2
laload
lload 2 /* carry */
aload 0 /* this */
getfield sun.security.util.math.intpoly.IntegerPolynomial1305.bitsPerLimb:I
lshl
lsub
lastore
2: .line 170
aload 0 /* this */
aload 1 /* limbs */
lload 2 /* carry */
aload 0 /* this */
getfield sun.security.util.math.intpoly.IntegerPolynomial1305.numLimbs:I
invokevirtual sun.security.util.math.intpoly.IntegerPolynomial1305.reduceIn:([JJI)V
3: .line 171
return
end local 2 // long carry
end local 1 // long[] limbs
end local 0 // sun.security.util.math.intpoly.IntegerPolynomial1305 this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/security/util/math/intpoly/IntegerPolynomial1305;
0 4 1 limbs [J
1 4 2 carry J
MethodParameters:
Name Flags
limbs
protected final void modReduce(long[], int, int);
descriptor: ([JII)V
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=5, locals=5, args_size=4
start local 0 // sun.security.util.math.intpoly.IntegerPolynomial1305 this
start local 1 // long[] limbs
start local 2 // int start
start local 3 // int end
0: .line 175
iload 2 /* start */
istore 4 /* i */
start local 4 // int i
1: goto 5
2: .line 176
StackMap locals: int
StackMap stack:
aload 0 /* this */
aload 1 /* limbs */
aload 1 /* limbs */
iload 4 /* i */
laload
iload 4 /* i */
invokevirtual sun.security.util.math.intpoly.IntegerPolynomial1305.reduceIn:([JJI)V
3: .line 177
aload 1 /* limbs */
iload 4 /* i */
lconst_0
lastore
4: .line 175
iinc 4 /* i */ 1
StackMap locals:
StackMap stack:
5: iload 4 /* i */
iload 3 /* end */
if_icmplt 2
end local 4 // int i
6: .line 179
return
end local 3 // int end
end local 2 // int start
end local 1 // long[] limbs
end local 0 // sun.security.util.math.intpoly.IntegerPolynomial1305 this
LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/security/util/math/intpoly/IntegerPolynomial1305;
0 7 1 limbs [J
0 7 2 start I
0 7 3 end I
1 6 4 i I
MethodParameters:
Name Flags
limbs
start
end
protected void modReduce(long[]);
descriptor: ([J)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=2, args_size=2
start local 0 // sun.security.util.math.intpoly.IntegerPolynomial1305 this
start local 1 // long[] limbs
0: .line 183
aload 0 /* this */
aload 1 /* limbs */
iconst_5
iconst_4
invokevirtual sun.security.util.math.intpoly.IntegerPolynomial1305.modReduce:([JII)V
1: .line 184
return
end local 1 // long[] limbs
end local 0 // sun.security.util.math.intpoly.IntegerPolynomial1305 this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/util/math/intpoly/IntegerPolynomial1305;
0 2 1 limbs [J
MethodParameters:
Name Flags
limbs
protected long carryValue(long);
descriptor: (J)J
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=2
start local 0 // sun.security.util.math.intpoly.IntegerPolynomial1305 this
start local 1 // long x
0: .line 191
lload 1 /* x */
bipush 26
lshr
lreturn
end local 1 // long x
end local 0 // sun.security.util.math.intpoly.IntegerPolynomial1305 this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/util/math/intpoly/IntegerPolynomial1305;
0 1 1 x J
MethodParameters:
Name Flags
x
protected void postEncodeCarry(long[]);
descriptor: ([J)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=0, locals=2, args_size=2
start local 0 // sun.security.util.math.intpoly.IntegerPolynomial1305 this
start local 1 // long[] v
0: .line 197
return
end local 1 // long[] v
end local 0 // sun.security.util.math.intpoly.IntegerPolynomial1305 this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/util/math/intpoly/IntegerPolynomial1305;
0 1 1 v [J
MethodParameters:
Name Flags
v
protected void reduce(long[]);
descriptor: ([J)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=7, locals=8, args_size=2
start local 0 // sun.security.util.math.intpoly.IntegerPolynomial1305 this
start local 1 // long[] limbs
0: .line 201
aload 0 /* this */
aload 1 /* limbs */
iconst_3
invokevirtual sun.security.util.math.intpoly.IntegerPolynomial1305.carryOut:([JI)J
lstore 2 /* carry3 */
start local 2 // long carry3
1: .line 202
lload 2 /* carry3 */
aload 1 /* limbs */
iconst_4
laload
ladd
lstore 4 /* new4 */
start local 4 // long new4
2: .line 204
aload 0 /* this */
lload 4 /* new4 */
invokevirtual sun.security.util.math.intpoly.IntegerPolynomial1305.carryValue:(J)J
lstore 6 /* carry4 */
start local 6 // long carry4
3: .line 205
aload 1 /* limbs */
iconst_4
lload 4 /* new4 */
lload 6 /* carry4 */
bipush 26
lshl
lsub
lastore
4: .line 207
aload 0 /* this */
aload 1 /* limbs */
lload 6 /* carry4 */
iconst_5
invokevirtual sun.security.util.math.intpoly.IntegerPolynomial1305.reduceIn:([JJI)V
5: .line 208
aload 0 /* this */
aload 1 /* limbs */
invokevirtual sun.security.util.math.intpoly.IntegerPolynomial1305.carry:([J)V
6: .line 209
return
end local 6 // long carry4
end local 4 // long new4
end local 2 // long carry3
end local 1 // long[] limbs
end local 0 // sun.security.util.math.intpoly.IntegerPolynomial1305 this
LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/security/util/math/intpoly/IntegerPolynomial1305;
0 7 1 limbs [J
1 7 2 carry3 J
2 7 4 new4 J
3 7 6 carry4 J
MethodParameters:
Name Flags
limbs
}
SourceFile: "IntegerPolynomial1305.java"