public final class com.oracle.truffle.api.ExactMath
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: com.oracle.truffle.api.ExactMath
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 // com.oracle.truffle.api.ExactMath this
0: .line 51
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 52
return
end local 0 // com.oracle.truffle.api.ExactMath this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/api/ExactMath;
public static int multiplyHigh(int, int);
descriptor: (II)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 // int x
start local 1 // int y
0: .line 56
iload 0 /* x */
i2l
iload 1 /* y */
i2l
lmul
lstore 2 /* r */
start local 2 // long r
1: .line 57
lload 2 /* r */
bipush 32
lshr
l2i
ireturn
end local 2 // long r
end local 1 // int y
end local 0 // int x
LocalVariableTable:
Start End Slot Name Signature
0 2 0 x I
0 2 1 y I
1 2 2 r J
MethodParameters:
Name Flags
x
y
public static int multiplyHighUnsigned(int, int);
descriptor: (II)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=8, args_size=2
start local 0 // int x
start local 1 // int y
0: .line 62
iload 0 /* x */
i2l
ldc 4294967295
land
lstore 2 /* xl */
start local 2 // long xl
1: .line 63
iload 1 /* y */
i2l
ldc 4294967295
land
lstore 4 /* yl */
start local 4 // long yl
2: .line 64
lload 2 /* xl */
lload 4 /* yl */
lmul
lstore 6 /* r */
start local 6 // long r
3: .line 65
lload 6 /* r */
bipush 32
lshr
l2i
ireturn
end local 6 // long r
end local 4 // long yl
end local 2 // long xl
end local 1 // int y
end local 0 // int x
LocalVariableTable:
Start End Slot Name Signature
0 4 0 x I
0 4 1 y I
1 4 2 xl J
2 4 4 yl J
3 4 6 r J
MethodParameters:
Name Flags
x
y
public static long multiplyHigh(long, long);
descriptor: (JJ)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=20, args_size=2
start local 0 // long x
start local 2 // long y
0: .line 75
lload 0 /* x */
ldc 4294967295
land
lstore 4 /* x0 */
start local 4 // long x0
1: .line 76
lload 0 /* x */
bipush 32
lshr
lstore 10 /* x1 */
start local 10 // long x1
2: .line 78
lload 2 /* y */
ldc 4294967295
land
lstore 6 /* y0 */
start local 6 // long y0
3: .line 79
lload 2 /* y */
bipush 32
lshr
lstore 12 /* y1 */
start local 12 // long y1
4: .line 81
lload 4 /* x0 */
lload 6 /* y0 */
lmul
lstore 8 /* z0 */
start local 8 // long z0
5: .line 82
lload 10 /* x1 */
lload 6 /* y0 */
lmul
lload 8 /* z0 */
bipush 32
lushr
ladd
lstore 18 /* t */
start local 18 // long t
6: .line 83
lload 18 /* t */
ldc 4294967295
land
lstore 14 /* z1 */
start local 14 // long z1
7: .line 84
lload 18 /* t */
bipush 32
lshr
lstore 16 /* z2 */
start local 16 // long z2
8: .line 85
lload 14 /* z1 */
lload 4 /* x0 */
lload 12 /* y1 */
lmul
ladd
lstore 14 /* z1 */
9: .line 87
lload 10 /* x1 */
lload 12 /* y1 */
lmul
lload 16 /* z2 */
ladd
lload 14 /* z1 */
bipush 32
lshr
ladd
lreturn
end local 18 // long t
end local 16 // long z2
end local 14 // long z1
end local 12 // long y1
end local 10 // long x1
end local 8 // long z0
end local 6 // long y0
end local 4 // long x0
end local 2 // long y
end local 0 // long x
LocalVariableTable:
Start End Slot Name Signature
0 10 0 x J
0 10 2 y J
1 10 4 x0 J
3 10 6 y0 J
5 10 8 z0 J
2 10 10 x1 J
4 10 12 y1 J
7 10 14 z1 J
8 10 16 z2 J
6 10 18 t J
MethodParameters:
Name Flags
x
y
public static long multiplyHighUnsigned(long, long);
descriptor: (JJ)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=20, args_size=2
start local 0 // long x
start local 2 // long y
0: .line 97
lload 0 /* x */
ldc 4294967295
land
lstore 4 /* x0 */
start local 4 // long x0
1: .line 98
lload 0 /* x */
bipush 32
lushr
lstore 10 /* x1 */
start local 10 // long x1
2: .line 100
lload 2 /* y */
ldc 4294967295
land
lstore 6 /* y0 */
start local 6 // long y0
3: .line 101
lload 2 /* y */
bipush 32
lushr
lstore 12 /* y1 */
start local 12 // long y1
4: .line 103
lload 4 /* x0 */
lload 6 /* y0 */
lmul
lstore 8 /* z0 */
start local 8 // long z0
5: .line 104
lload 10 /* x1 */
lload 6 /* y0 */
lmul
lload 8 /* z0 */
bipush 32
lushr
ladd
lstore 18 /* t */
start local 18 // long t
6: .line 105
lload 18 /* t */
ldc 4294967295
land
lstore 14 /* z1 */
start local 14 // long z1
7: .line 106
lload 18 /* t */
bipush 32
lushr
lstore 16 /* z2 */
start local 16 // long z2
8: .line 107
lload 14 /* z1 */
lload 4 /* x0 */
lload 12 /* y1 */
lmul
ladd
lstore 14 /* z1 */
9: .line 109
lload 10 /* x1 */
lload 12 /* y1 */
lmul
lload 16 /* z2 */
ladd
lload 14 /* z1 */
bipush 32
lushr
ladd
lreturn
end local 18 // long t
end local 16 // long z2
end local 14 // long z1
end local 12 // long y1
end local 10 // long x1
end local 8 // long z0
end local 6 // long y0
end local 4 // long x0
end local 2 // long y
end local 0 // long x
LocalVariableTable:
Start End Slot Name Signature
0 10 0 x J
0 10 2 y J
1 10 4 x0 J
3 10 6 y0 J
5 10 8 z0 J
2 10 10 x1 J
4 10 12 y1 J
7 10 14 z1 J
8 10 16 z2 J
6 10 18 t J
MethodParameters:
Name Flags
x
y
}
SourceFile: "ExactMath.java"