public final class java.lang.Math
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: java.lang.Math
super_class: java.lang.Object
{
public static final double E;
descriptor: D
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 2.718281828459045
public static final double PI;
descriptor: D
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 3.141592653589793
private static final double DEGREES_TO_RADIANS;
descriptor: D
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0.017453292519943295
private static final double RADIANS_TO_DEGREES;
descriptor: D
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 57.29577951308232
private static long negativeZeroFloatBits;
descriptor: J
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static long negativeZeroDoubleBits;
descriptor: J
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
static double twoToTheDoubleScaleUp;
descriptor: D
flags: (0x0008) ACC_STATIC
static double twoToTheDoubleScaleDown;
descriptor: D
flags: (0x0008) ACC_STATIC
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=2, locals=0, args_size=0
0: ldc Ljava/lang/Math;
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.Math.$assertionsDisabled:Z
3: ldc -0.0
invokestatic java.lang.Float.floatToRawIntBits:(F)I
i2l
putstatic java.lang.Math.negativeZeroFloatBits:J
4: ldc -0.0
invokestatic java.lang.Double.doubleToRawLongBits:(D)J
putstatic java.lang.Math.negativeZeroDoubleBits:J
5: sipush 512
invokestatic java.lang.Math.powerOfTwoD:(I)D
putstatic java.lang.Math.twoToTheDoubleScaleUp:D
6: sipush -512
invokestatic java.lang.Math.powerOfTwoD:(I)D
putstatic java.lang.Math.twoToTheDoubleScaleDown:D
return
LocalVariableTable:
Start End Slot Name Signature
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/lang/Math;
public static double sin(double);
descriptor: (D)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: dload 0
invokestatic java.lang.StrictMath.sin:(D)D
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 a D
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
a
public static double cos(double);
descriptor: (D)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: dload 0
invokestatic java.lang.StrictMath.cos:(D)D
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 a D
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
a
public static double tan(double);
descriptor: (D)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: dload 0
invokestatic java.lang.StrictMath.tan:(D)D
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 a D
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
a
public static double asin(double);
descriptor: (D)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: dload 0
invokestatic java.lang.StrictMath.asin:(D)D
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 a D
MethodParameters:
Name Flags
a
public static double acos(double);
descriptor: (D)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: dload 0
invokestatic java.lang.StrictMath.acos:(D)D
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 a D
MethodParameters:
Name Flags
a
public static double atan(double);
descriptor: (D)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: dload 0
invokestatic java.lang.StrictMath.atan:(D)D
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 a D
MethodParameters:
Name Flags
a
public static double toRadians(double);
descriptor: (D)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: dload 0
ldc 0.017453292519943295
dmul
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 angdeg D
MethodParameters:
Name Flags
angdeg
public static double toDegrees(double);
descriptor: (D)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: dload 0
ldc 57.29577951308232
dmul
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 angrad D
MethodParameters:
Name Flags
angrad
public static double exp(double);
descriptor: (D)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: dload 0
invokestatic java.lang.StrictMath.exp:(D)D
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 a D
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
a
public static double log(double);
descriptor: (D)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: dload 0
invokestatic java.lang.StrictMath.log:(D)D
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 a D
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
a
public static double log10(double);
descriptor: (D)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: dload 0
invokestatic java.lang.StrictMath.log10:(D)D
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 a D
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
a
public static double sqrt(double);
descriptor: (D)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: dload 0
invokestatic java.lang.StrictMath.sqrt:(D)D
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 a D
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
a
public static double cbrt(double);
descriptor: (D)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: dload 0
invokestatic java.lang.StrictMath.cbrt:(D)D
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 a D
MethodParameters:
Name Flags
a
public static double IEEEremainder(double, double);
descriptor: (DD)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 2 0: dload 0
dload 2
invokestatic java.lang.StrictMath.IEEEremainder:(DD)D
dreturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 f1 D
0 1 2 f2 D
MethodParameters:
Name Flags
f1
f2
public static double ceil(double);
descriptor: (D)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: dload 0
invokestatic java.lang.StrictMath.ceil:(D)D
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 a D
MethodParameters:
Name Flags
a
public static double floor(double);
descriptor: (D)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: dload 0
invokestatic java.lang.StrictMath.floor:(D)D
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 a D
MethodParameters:
Name Flags
a
public static double rint(double);
descriptor: (D)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: dload 0
invokestatic java.lang.StrictMath.rint:(D)D
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 a D
MethodParameters:
Name Flags
a
public static double atan2(double, double);
descriptor: (DD)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 2 0: dload 0
dload 2
invokestatic java.lang.StrictMath.atan2:(DD)D
dreturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 y D
0 1 2 x D
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
y
x
public static double pow(double, double);
descriptor: (DD)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 2 0: dload 0
dload 2
invokestatic java.lang.StrictMath.pow:(DD)D
dreturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 a D
0 1 2 b D
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
a
b
public static int round(float);
descriptor: (F)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=5, args_size=1
start local 0 0: fload 0
invokestatic java.lang.Float.floatToRawIntBits:(F)I
istore 1
start local 1 1: iload 1
ldc 2139095040
iand
2: bipush 23
3: ishr
istore 2
start local 2 4: sipush 149
5: iload 2
6: isub
istore 3
start local 3 7: iload 3
bipush -32
iand
ifne 14
8: iload 1
ldc 8388607
iand
9: ldc 8388608
10: ior
istore 4
start local 4 11: iload 1
ifge 13
12: iload 4
ineg
istore 4
13: StackMap locals: float int int int int
StackMap stack:
iload 4
iload 3
ishr
iconst_1
iadd
iconst_1
ishr
ireturn
end local 4 14: StackMap locals:
StackMap stack:
fload 0
f2i
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 a F
1 15 1 intBits I
4 15 2 biasedExp I
7 15 3 shift I
11 14 4 r I
MethodParameters:
Name Flags
a
public static long round(double);
descriptor: (D)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=10, args_size=1
start local 0 0: dload 0
invokestatic java.lang.Double.doubleToRawLongBits:(D)J
lstore 2
start local 2 1: lload 2
ldc 9218868437227405312
land
2: bipush 52
3: lshr
lstore 4
start local 4 4: ldc 1074
5: lload 4
6: lsub
lstore 6
start local 6 7: lload 6
ldc -64
land
lconst_0
lcmp
ifne 14
8: lload 2
ldc 4503599627370495
land
9: ldc 4503599627370496
10: lor
lstore 8
start local 8 11: lload 2
lconst_0
lcmp
ifge 13
12: lload 8
lneg
lstore 8
13: StackMap locals: double long long long long
StackMap stack:
lload 8
lload 6
l2i
lshr
lconst_1
ladd
iconst_1
lshr
lreturn
end local 8 14: StackMap locals:
StackMap stack:
dload 0
d2l
lreturn
end local 6 end local 4 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 a D
1 15 2 longBits J
4 15 4 biasedExp J
7 15 6 shift J
11 14 8 r J
MethodParameters:
Name Flags
a
public static double random();
descriptor: ()D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: getstatic java.lang.Math$RandomNumberGeneratorHolder.randomNumberGenerator:Ljava/util/Random;
invokevirtual java.util.Random.nextDouble:()D
dreturn
LocalVariableTable:
Start End Slot Name Signature
public static int addExact(int, int);
descriptor: (II)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: iload 0
iload 1
iadd
istore 2
start local 2 1: iload 0
iload 2
ixor
iload 1
iload 2
ixor
iand
ifge 3
2: new java.lang.ArithmeticException
dup
ldc "integer overflow"
invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: int
StackMap stack:
iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 x I
0 4 1 y I
1 4 2 r I
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
x
y
public static long addExact(long, long);
descriptor: (JJ)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=6, args_size=2
start local 0 start local 2 0: lload 0
lload 2
ladd
lstore 4
start local 4 1: lload 0
lload 4
lxor
lload 2
lload 4
lxor
land
lconst_0
lcmp
ifge 3
2: new java.lang.ArithmeticException
dup
ldc "long overflow"
invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: long
StackMap stack:
lload 4
lreturn
end local 4 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 x J
0 4 2 y J
1 4 4 r J
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
x
y
public static int subtractExact(int, int);
descriptor: (II)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: iload 0
iload 1
isub
istore 2
start local 2 1: iload 0
iload 1
ixor
iload 0
iload 2
ixor
iand
ifge 3
2: new java.lang.ArithmeticException
dup
ldc "integer overflow"
invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: int
StackMap stack:
iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 x I
0 4 1 y I
1 4 2 r I
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
x
y
public static long subtractExact(long, long);
descriptor: (JJ)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=6, args_size=2
start local 0 start local 2 0: lload 0
lload 2
lsub
lstore 4
start local 4 1: lload 0
lload 2
lxor
lload 0
lload 4
lxor
land
lconst_0
lcmp
ifge 3
2: new java.lang.ArithmeticException
dup
ldc "long overflow"
invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: long
StackMap stack:
lload 4
lreturn
end local 4 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 x J
0 4 2 y J
1 4 4 r J
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
x
y
public static int multiplyExact(int, int);
descriptor: (II)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: iload 0
i2l
iload 1
i2l
lmul
lstore 2
start local 2 1: lload 2
l2i
i2l
lload 2
lcmp
ifeq 3
2: new java.lang.ArithmeticException
dup
ldc "integer overflow"
invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: long
StackMap stack:
lload 2
l2i
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 x I
0 4 1 y I
1 4 2 r J
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
x
y
public static long multiplyExact(long, int);
descriptor: (JI)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 2 0: lload 0
iload 2
i2l
invokestatic java.lang.Math.multiplyExact:(JJ)J
lreturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 x J
0 1 2 y I
MethodParameters:
Name Flags
x
y
public static long multiplyExact(long, long);
descriptor: (JJ)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=10, args_size=2
start local 0 start local 2 0: lload 0
lload 2
lmul
lstore 4
start local 4 1: lload 0
invokestatic java.lang.Math.abs:(J)J
lstore 6
start local 6 2: lload 2
invokestatic java.lang.Math.abs:(J)J
lstore 8
start local 8 3: lload 6
lload 8
lor
bipush 31
lushr
lconst_0
lcmp
ifeq 7
4: lload 2
lconst_0
lcmp
ifeq 5
lload 4
lload 2
ldiv
lload 0
lcmp
ifne 6
5: StackMap locals: long long long
StackMap stack:
lload 0
ldc -9223372036854775808
lcmp
ifne 7
lload 2
ldc -1
lcmp
ifne 7
6: StackMap locals:
StackMap stack:
new java.lang.ArithmeticException
dup
ldc "long overflow"
invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
athrow
7: StackMap locals:
StackMap stack:
lload 4
lreturn
end local 8 end local 6 end local 4 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 x J
0 8 2 y J
1 8 4 r J
2 8 6 ax J
3 8 8 ay J
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
x
y
public static int incrementExact(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: iload 0
ldc 2147483647
if_icmpne 2
1: new java.lang.ArithmeticException
dup
ldc "integer overflow"
invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
iload 0
iconst_1
iadd
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 a I
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
a
public static long incrementExact(long);
descriptor: (J)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: lload 0
ldc 9223372036854775807
lcmp
ifne 2
1: new java.lang.ArithmeticException
dup
ldc "long overflow"
invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
lload 0
lconst_1
ladd
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 a J
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
a
public static int decrementExact(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: iload 0
ldc -2147483648
if_icmpne 2
1: new java.lang.ArithmeticException
dup
ldc "integer overflow"
invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
iload 0
iconst_1
isub
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 a I
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
a
public static long decrementExact(long);
descriptor: (J)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: lload 0
ldc -9223372036854775808
lcmp
ifne 2
1: new java.lang.ArithmeticException
dup
ldc "long overflow"
invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
lload 0
lconst_1
lsub
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 a J
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
a
public static int negateExact(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: iload 0
ldc -2147483648
if_icmpne 2
1: new java.lang.ArithmeticException
dup
ldc "integer overflow"
invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
iload 0
ineg
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 a I
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
a
public static long negateExact(long);
descriptor: (J)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: lload 0
ldc -9223372036854775808
lcmp
ifne 2
1: new java.lang.ArithmeticException
dup
ldc "long overflow"
invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
lload 0
lneg
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 a J
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
a
public static int toIntExact(long);
descriptor: (J)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: lload 0
l2i
i2l
lload 0
lcmp
ifeq 2
1: new java.lang.ArithmeticException
dup
ldc "integer overflow"
invokespecial java.lang.ArithmeticException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
lload 0
l2i
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 value J
MethodParameters:
Name Flags
value
public static long multiplyFull(int, int);
descriptor: (II)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: iload 0
i2l
iload 1
i2l
lmul
lreturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 x I
0 1 1 y I
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 start local 2 0: lload 0
lconst_0
lcmp
iflt 1
lload 2
lconst_0
lcmp
ifge 11
1: StackMap locals:
StackMap stack:
lload 0
bipush 32
lshr
lstore 4
start local 4 2: lload 0
ldc 4294967295
land
lstore 6
start local 6 3: lload 2
bipush 32
lshr
lstore 8
start local 8 4: lload 2
ldc 4294967295
land
lstore 10
start local 10 5: lload 6
lload 10
lmul
lstore 12
start local 12 6: lload 4
lload 10
lmul
lload 12
bipush 32
lushr
ladd
lstore 14
start local 14 7: lload 14
ldc 4294967295
land
lstore 16
start local 16 8: lload 14
bipush 32
lshr
lstore 18
start local 18 9: lload 16
lload 6
lload 8
lmul
ladd
lstore 16
10: lload 4
lload 8
lmul
lload 18
ladd
lload 16
bipush 32
lshr
ladd
lreturn
end local 18 end local 16 end local 14 end local 12 end local 10 end local 8 end local 6 end local 4 11: StackMap locals:
StackMap stack:
lload 0
bipush 32
lushr
lstore 4
start local 4 12: lload 2
bipush 32
lushr
lstore 6
start local 6 13: lload 0
ldc 4294967295
land
lstore 8
start local 8 14: lload 2
ldc 4294967295
land
lstore 10
start local 10 15: lload 4
lload 6
lmul
lstore 12
start local 12 16: lload 8
lload 10
lmul
lstore 14
start local 14 17: lload 4
lload 8
ladd
lload 6
lload 10
ladd
lmul
lstore 16
start local 16 18: lload 16
lload 12
lsub
lload 14
lsub
lstore 18
start local 18 19: lload 14
bipush 32
lushr
lload 18
ladd
bipush 32
lushr
lload 12
ladd
lreturn
end local 18 end local 16 end local 14 end local 12 end local 10 end local 8 end local 6 end local 4 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 x J
0 20 2 y J
2 11 4 x1 J
3 11 6 x2 J
4 11 8 y1 J
5 11 10 y2 J
6 11 12 z2 J
7 11 14 t J
8 11 16 z1 J
9 11 18 z0 J
12 20 4 x1 J
13 20 6 y1 J
14 20 8 x2 J
15 20 10 y2 J
16 20 12 A J
17 20 14 B J
18 20 16 C J
19 20 18 K J
MethodParameters:
Name Flags
x
y
public static int floorDiv(int, int);
descriptor: (II)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: iload 0
iload 1
idiv
istore 2
start local 2 1: iload 0
iload 1
ixor
ifge 3
iload 2
iload 1
imul
iload 0
if_icmpeq 3
2: iinc 2 -1
3: StackMap locals: int
StackMap stack:
iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 x I
0 4 1 y I
1 4 2 r I
MethodParameters:
Name Flags
x
y
public static long floorDiv(long, int);
descriptor: (JI)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 2 0: lload 0
iload 2
i2l
invokestatic java.lang.Math.floorDiv:(JJ)J
lreturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 x J
0 1 2 y I
MethodParameters:
Name Flags
x
y
public static long floorDiv(long, long);
descriptor: (JJ)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=6, args_size=2
start local 0 start local 2 0: lload 0
lload 2
ldiv
lstore 4
start local 4 1: lload 0
lload 2
lxor
lconst_0
lcmp
ifge 3
lload 4
lload 2
lmul
lload 0
lcmp
ifeq 3
2: lload 4
lconst_1
lsub
lstore 4
3: StackMap locals: long
StackMap stack:
lload 4
lreturn
end local 4 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 x J
0 4 2 y J
1 4 4 r J
MethodParameters:
Name Flags
x
y
public static int floorMod(int, int);
descriptor: (II)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: iload 0
iload 0
iload 1
invokestatic java.lang.Math.floorDiv:(II)I
iload 1
imul
isub
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 x I
0 1 1 y I
MethodParameters:
Name Flags
x
y
public static int floorMod(long, int);
descriptor: (JI)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 2 0: lload 0
lload 0
iload 2
invokestatic java.lang.Math.floorDiv:(JI)J
iload 2
i2l
lmul
lsub
l2i
ireturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 x J
0 1 2 y I
MethodParameters:
Name Flags
x
y
public static long floorMod(long, long);
descriptor: (JJ)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=4, args_size=2
start local 0 start local 2 0: lload 0
lload 0
lload 2
invokestatic java.lang.Math.floorDiv:(JJ)J
lload 2
lmul
lsub
lreturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 x J
0 1 2 y J
MethodParameters:
Name Flags
x
y
public static int abs(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iload 0
ifge 1
iload 0
ineg
goto 2
StackMap locals:
StackMap stack:
1: iload 0
StackMap locals:
StackMap stack: int
2: ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 a I
MethodParameters:
Name Flags
a
public static long abs(long);
descriptor: (J)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: lload 0
lconst_0
lcmp
ifge 1
lload 0
lneg
goto 2
StackMap locals:
StackMap stack:
1: lload 0
StackMap locals:
StackMap stack: long
2: lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 a J
MethodParameters:
Name Flags
a
public static float abs(float);
descriptor: (F)F
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: fload 0
fconst_0
fcmpg
ifgt 1
fconst_0
fload 0
fsub
goto 2
StackMap locals:
StackMap stack:
1: fload 0
StackMap locals:
StackMap stack: float
2: freturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 a F
MethodParameters:
Name Flags
a
public static double abs(double);
descriptor: (D)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: dload 0
dconst_0
dcmpg
ifgt 1
dconst_0
dload 0
dsub
goto 2
StackMap locals:
StackMap stack:
1: dload 0
StackMap locals:
StackMap stack: double
2: dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 a D
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
a
public static int max(int, int);
descriptor: (II)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 0
iload 1
if_icmplt 1
iload 0
goto 2
StackMap locals:
StackMap stack:
1: iload 1
StackMap locals:
StackMap stack: int
2: ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 a I
0 3 1 b I
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
a
b
public static long max(long, long);
descriptor: (JJ)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 2 0: lload 0
lload 2
lcmp
iflt 1
lload 0
goto 2
StackMap locals:
StackMap stack:
1: lload 2
StackMap locals:
StackMap stack: long
2: lreturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 a J
0 3 2 b J
MethodParameters:
Name Flags
a
b
public static float max(float, float);
descriptor: (FF)F
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: fload 0
fload 0
fcmpl
ifeq 2
1: fload 0
freturn
2: StackMap locals:
StackMap stack:
fload 0
fconst_0
fcmpl
ifne 6
3: fload 1
fconst_0
fcmpl
ifne 6
4: fload 0
invokestatic java.lang.Float.floatToRawIntBits:(F)I
i2l
getstatic java.lang.Math.negativeZeroFloatBits:J
lcmp
ifne 6
5: fload 1
freturn
6: StackMap locals:
StackMap stack:
fload 0
fload 1
fcmpl
iflt 7
fload 0
goto 8
StackMap locals:
StackMap stack:
7: fload 1
StackMap locals:
StackMap stack: float
8: freturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 a F
0 9 1 b F
MethodParameters:
Name Flags
a
b
public static double max(double, double);
descriptor: (DD)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 2 0: dload 0
dload 0
dcmpl
ifeq 2
1: dload 0
dreturn
2: StackMap locals:
StackMap stack:
dload 0
dconst_0
dcmpl
ifne 6
3: dload 2
dconst_0
dcmpl
ifne 6
4: dload 0
invokestatic java.lang.Double.doubleToRawLongBits:(D)J
getstatic java.lang.Math.negativeZeroDoubleBits:J
lcmp
ifne 6
5: dload 2
dreturn
6: StackMap locals:
StackMap stack:
dload 0
dload 2
dcmpl
iflt 7
dload 0
goto 8
StackMap locals:
StackMap stack:
7: dload 2
StackMap locals:
StackMap stack: double
8: dreturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 a D
0 9 2 b D
MethodParameters:
Name Flags
a
b
public static int min(int, int);
descriptor: (II)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 0
iload 1
if_icmpgt 1
iload 0
goto 2
StackMap locals:
StackMap stack:
1: iload 1
StackMap locals:
StackMap stack: int
2: ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 a I
0 3 1 b I
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
a
b
public static long min(long, long);
descriptor: (JJ)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 2 0: lload 0
lload 2
lcmp
ifgt 1
lload 0
goto 2
StackMap locals:
StackMap stack:
1: lload 2
StackMap locals:
StackMap stack: long
2: lreturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 a J
0 3 2 b J
MethodParameters:
Name Flags
a
b
public static float min(float, float);
descriptor: (FF)F
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: fload 0
fload 0
fcmpl
ifeq 2
1: fload 0
freturn
2: StackMap locals:
StackMap stack:
fload 0
fconst_0
fcmpl
ifne 6
3: fload 1
fconst_0
fcmpl
ifne 6
4: fload 1
invokestatic java.lang.Float.floatToRawIntBits:(F)I
i2l
getstatic java.lang.Math.negativeZeroFloatBits:J
lcmp
ifne 6
5: fload 1
freturn
6: StackMap locals:
StackMap stack:
fload 0
fload 1
fcmpg
ifgt 7
fload 0
goto 8
StackMap locals:
StackMap stack:
7: fload 1
StackMap locals:
StackMap stack: float
8: freturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 a F
0 9 1 b F
MethodParameters:
Name Flags
a
b
public static double min(double, double);
descriptor: (DD)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 2 0: dload 0
dload 0
dcmpl
ifeq 2
1: dload 0
dreturn
2: StackMap locals:
StackMap stack:
dload 0
dconst_0
dcmpl
ifne 6
3: dload 2
dconst_0
dcmpl
ifne 6
4: dload 2
invokestatic java.lang.Double.doubleToRawLongBits:(D)J
getstatic java.lang.Math.negativeZeroDoubleBits:J
lcmp
ifne 6
5: dload 2
dreturn
6: StackMap locals:
StackMap stack:
dload 0
dload 2
dcmpg
ifgt 7
dload 0
goto 8
StackMap locals:
StackMap stack:
7: dload 2
StackMap locals:
StackMap stack: double
8: dreturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 a D
0 9 2 b D
MethodParameters:
Name Flags
a
b
public static double fma(double, double, double);
descriptor: (DDD)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=13, args_size=3
start local 0 start local 2 start local 4 0: dload 0
invokestatic java.lang.Double.isNaN:(D)Z
ifne 1
dload 2
invokestatic java.lang.Double.isNaN:(D)Z
ifne 1
dload 4
invokestatic java.lang.Double.isNaN:(D)Z
ifeq 2
1: StackMap locals:
StackMap stack:
ldc NaN
dreturn
2: StackMap locals:
StackMap stack:
dload 0
invokestatic java.lang.Double.isInfinite:(D)Z
istore 6
start local 6 3: dload 2
invokestatic java.lang.Double.isInfinite:(D)Z
istore 7
start local 7 4: dload 4
invokestatic java.lang.Double.isInfinite:(D)Z
istore 8
start local 8 5: iload 6
ifne 6
iload 7
ifne 6
iload 8
ifeq 16
6: StackMap locals: int int int
StackMap stack:
iload 6
ifeq 7
dload 2
dconst_0
dcmpl
ifeq 8
7: StackMap locals:
StackMap stack:
iload 7
ifeq 9
dload 0
dconst_0
dcmpl
ifne 9
8: StackMap locals:
StackMap stack:
ldc NaN
dreturn
9: StackMap locals:
StackMap stack:
dload 0
dload 2
dmul
dstore 11
start local 11 10: dload 11
invokestatic java.lang.Double.isInfinite:(D)Z
ifeq 13
iload 6
ifne 13
iload 7
ifne 13
11: getstatic java.lang.Math.$assertionsDisabled:Z
ifne 12
dload 4
invokestatic java.lang.Double.isInfinite:(D)Z
ifne 12
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
12: StackMap locals: double double double int int int top top double
StackMap stack:
dload 4
dreturn
13: StackMap locals:
StackMap stack:
dload 11
dload 4
dadd
dstore 9
start local 9 14: getstatic java.lang.Math.$assertionsDisabled:Z
ifne 15
dload 9
invokestatic java.lang.Double.isFinite:(D)Z
ifeq 15
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
15: StackMap locals: double double double int int int double double
StackMap stack:
dload 9
dreturn
end local 11 end local 9 16: StackMap locals:
StackMap stack:
new java.math.BigDecimal
dup
dload 0
invokespecial java.math.BigDecimal.<init>:(D)V
new java.math.BigDecimal
dup
dload 2
invokespecial java.math.BigDecimal.<init>:(D)V
invokevirtual java.math.BigDecimal.multiply:(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;
astore 11
start local 11 17: dload 4
dconst_0
dcmpl
ifne 21
18: dload 0
dconst_0
dcmpl
ifeq 19
dload 2
dconst_0
dcmpl
ifne 20
19: StackMap locals: double double double int int int top top java.math.BigDecimal
StackMap stack:
dload 0
dload 2
dmul
dload 4
dadd
dreturn
20: StackMap locals:
StackMap stack:
aload 11
invokevirtual java.math.BigDecimal.doubleValue:()D
dreturn
21: StackMap locals:
StackMap stack:
aload 11
new java.math.BigDecimal
dup
dload 4
invokespecial java.math.BigDecimal.<init>:(D)V
invokevirtual java.math.BigDecimal.add:(Ljava/math/BigDecimal;)Ljava/math/BigDecimal;
invokevirtual java.math.BigDecimal.doubleValue:()D
dreturn
end local 11 end local 8 end local 7 end local 6 end local 4 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 a D
0 22 2 b D
0 22 4 c D
3 22 6 infiniteA Z
4 22 7 infiniteB Z
5 22 8 infiniteC Z
14 16 9 result D
10 16 11 product D
17 22 11 product Ljava/math/BigDecimal;
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
a
b
c
public static float fma(float, float, float);
descriptor: (FFF)F
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: fload 0
f2d
fload 1
f2d
dmul
fload 2
f2d
dadd
d2f
fstore 3
start local 3 1: fload 3
freturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 a F
0 2 1 b F
0 2 2 c F
1 2 3 result F
RuntimeVisibleAnnotations:
jdk.internal.HotSpotIntrinsicCandidate()
MethodParameters:
Name Flags
a
b
c
public static double ulp(double);
descriptor: (D)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: dload 0
invokestatic java.lang.Math.getExponent:(D)I
istore 2
start local 2 1: iload 2
lookupswitch { // 2
-1023: 3
1024: 2
default: 4
}
2: StackMap locals: int
StackMap stack:
dload 0
invokestatic java.lang.Math.abs:(D)D
dreturn
3: StackMap locals:
StackMap stack:
ldc 4.9E-324
dreturn
4: StackMap locals:
StackMap stack:
getstatic java.lang.Math.$assertionsDisabled:Z
ifne 6
iload 2
sipush 1023
if_icmpgt 5
iload 2
sipush -1022
if_icmpge 6
StackMap locals:
StackMap stack:
5: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
6: StackMap locals:
StackMap stack:
iinc 2 -52
7: iload 2
sipush -1022
if_icmplt 9
8: iload 2
invokestatic java.lang.Math.powerOfTwoD:(I)D
dreturn
9: StackMap locals:
StackMap stack:
lconst_1
10: iload 2
sipush -1074
isub
11: lshl
invokestatic java.lang.Double.longBitsToDouble:(J)D
dreturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 d D
1 12 2 exp I
MethodParameters:
Name Flags
d
public static float ulp(float);
descriptor: (F)F
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: fload 0
invokestatic java.lang.Math.getExponent:(F)I
istore 1
start local 1 1: iload 1
lookupswitch { // 2
-127: 3
128: 2
default: 4
}
2: StackMap locals: int
StackMap stack:
fload 0
invokestatic java.lang.Math.abs:(F)F
freturn
3: StackMap locals:
StackMap stack:
ldc 1.4E-45
freturn
4: StackMap locals:
StackMap stack:
getstatic java.lang.Math.$assertionsDisabled:Z
ifne 6
iload 1
bipush 127
if_icmpgt 5
iload 1
bipush -126
if_icmpge 6
StackMap locals:
StackMap stack:
5: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
6: StackMap locals:
StackMap stack:
iinc 1 -23
7: iload 1
bipush -126
if_icmplt 9
8: iload 1
invokestatic java.lang.Math.powerOfTwoF:(I)F
freturn
9: StackMap locals:
StackMap stack:
iconst_1
10: iload 1
sipush -149
isub
11: ishl
invokestatic java.lang.Float.intBitsToFloat:(I)F
freturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 f F
1 12 1 exp I
MethodParameters:
Name Flags
f
public static double signum(double);
descriptor: (D)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: dload 0
dconst_0
dcmpl
ifeq 1
dload 0
invokestatic java.lang.Double.isNaN:(D)Z
ifeq 2
StackMap locals:
StackMap stack:
1: dload 0
goto 3
StackMap locals:
StackMap stack:
2: dconst_1
dload 0
invokestatic java.lang.Math.copySign:(DD)D
StackMap locals:
StackMap stack: double
3: dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 d D
MethodParameters:
Name Flags
d
public static float signum(float);
descriptor: (F)F
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: fload 0
fconst_0
fcmpl
ifeq 1
fload 0
invokestatic java.lang.Float.isNaN:(F)Z
ifeq 2
StackMap locals:
StackMap stack:
1: fload 0
goto 3
StackMap locals:
StackMap stack:
2: fconst_1
fload 0
invokestatic java.lang.Math.copySign:(FF)F
StackMap locals:
StackMap stack: float
3: freturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 f F
MethodParameters:
Name Flags
f
public static double sinh(double);
descriptor: (D)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: dload 0
invokestatic java.lang.StrictMath.sinh:(D)D
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 x D
MethodParameters:
Name Flags
x
public static double cosh(double);
descriptor: (D)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: dload 0
invokestatic java.lang.StrictMath.cosh:(D)D
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 x D
MethodParameters:
Name Flags
x
public static double tanh(double);
descriptor: (D)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: dload 0
invokestatic java.lang.StrictMath.tanh:(D)D
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 x D
MethodParameters:
Name Flags
x
public static double hypot(double, double);
descriptor: (DD)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 2 0: dload 0
dload 2
invokestatic java.lang.StrictMath.hypot:(DD)D
dreturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 x D
0 1 2 y D
MethodParameters:
Name Flags
x
y
public static double expm1(double);
descriptor: (D)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: dload 0
invokestatic java.lang.StrictMath.expm1:(D)D
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 x D
MethodParameters:
Name Flags
x
public static double log1p(double);
descriptor: (D)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: dload 0
invokestatic java.lang.StrictMath.log1p:(D)D
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 x D
MethodParameters:
Name Flags
x
public static double copySign(double, double);
descriptor: (DD)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=4, args_size=2
start local 0 start local 2 0: dload 2
invokestatic java.lang.Double.doubleToRawLongBits:(D)J
1: ldc -9223372036854775808
2: land
3: dload 0
invokestatic java.lang.Double.doubleToRawLongBits:(D)J
4: ldc 9223372036854775807
5: land
6: lor
invokestatic java.lang.Double.longBitsToDouble:(J)D
dreturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 magnitude D
0 7 2 sign D
MethodParameters:
Name Flags
magnitude
sign
public static float copySign(float, float);
descriptor: (FF)F
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: fload 1
invokestatic java.lang.Float.floatToRawIntBits:(F)I
1: ldc -2147483648
2: iand
3: fload 0
invokestatic java.lang.Float.floatToRawIntBits:(F)I
4: ldc 2147483647
5: iand
6: ior
invokestatic java.lang.Float.intBitsToFloat:(I)F
freturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 magnitude F
0 7 1 sign F
MethodParameters:
Name Flags
magnitude
sign
public static int getExponent(float);
descriptor: (F)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: fload 0
invokestatic java.lang.Float.floatToRawIntBits:(F)I
ldc 2139095040
iand
1: bipush 23
2: ishr
3: bipush 127
4: isub
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 f F
MethodParameters:
Name Flags
f
public static int getExponent(double);
descriptor: (D)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: dload 0
invokestatic java.lang.Double.doubleToRawLongBits:(D)J
ldc 9218868437227405312
land
1: bipush 52
2: lshr
3: ldc 1023
4: lsub
l2i
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 d D
MethodParameters:
Name Flags
d
public static double nextAfter(double, double);
descriptor: (DD)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=6, args_size=2
start local 0 start local 2 0: dload 0
dload 2
dcmpl
ifle 7
1: dload 0
dconst_0
dcmpl
ifeq 6
2: dload 0
invokestatic java.lang.Double.doubleToRawLongBits:(D)J
lstore 4
start local 4 3: lload 4
lload 4
lconst_0
lcmp
ifle 4
ldc -1
goto 5
StackMap locals: double double long
StackMap stack: long
4: lconst_1
StackMap locals: double double long
StackMap stack: long long
5: ladd
invokestatic java.lang.Double.longBitsToDouble:(J)D
dreturn
end local 4 6: StackMap locals:
StackMap stack:
ldc -4.9E-324
dreturn
7: StackMap locals:
StackMap stack:
dload 0
dload 2
dcmpg
ifge 12
8: dload 0
dconst_0
dadd
invokestatic java.lang.Double.doubleToRawLongBits:(D)J
lstore 4
start local 4 9: lload 4
lload 4
lconst_0
lcmp
iflt 10
lconst_1
goto 11
StackMap locals: double double long
StackMap stack: long
10: ldc -1
StackMap locals: double double long
StackMap stack: long long
11: ladd
invokestatic java.lang.Double.longBitsToDouble:(J)D
dreturn
end local 4 12: StackMap locals:
StackMap stack:
dload 0
dload 2
dcmpl
ifne 14
13: dload 2
dreturn
14: StackMap locals:
StackMap stack:
dload 0
dload 2
dadd
dreturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 start D
0 15 2 direction D
3 6 4 transducer J
9 12 4 transducer J
MethodParameters:
Name Flags
start
direction
public static float nextAfter(float, double);
descriptor: (FD)F
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: fload 0
f2d
dload 1
dcmpl
ifle 7
1: fload 0
fconst_0
fcmpl
ifeq 6
2: fload 0
invokestatic java.lang.Float.floatToRawIntBits:(F)I
istore 3
start local 3 3: iload 3
iload 3
ifle 4
iconst_m1
goto 5
StackMap locals: float double int
StackMap stack: int
4: iconst_1
StackMap locals: float double int
StackMap stack: int int
5: iadd
invokestatic java.lang.Float.intBitsToFloat:(I)F
freturn
end local 3 6: StackMap locals:
StackMap stack:
ldc -1.4E-45
freturn
7: StackMap locals:
StackMap stack:
fload 0
f2d
dload 1
dcmpg
ifge 12
8: fload 0
fconst_0
fadd
invokestatic java.lang.Float.floatToRawIntBits:(F)I
istore 3
start local 3 9: iload 3
iload 3
iflt 10
iconst_1
goto 11
StackMap locals: float double int
StackMap stack: int
10: iconst_m1
StackMap locals: float double int
StackMap stack: int int
11: iadd
invokestatic java.lang.Float.intBitsToFloat:(I)F
freturn
end local 3 12: StackMap locals:
StackMap stack:
fload 0
f2d
dload 1
dcmpl
ifne 14
13: dload 1
d2f
freturn
14: StackMap locals:
StackMap stack:
fload 0
dload 1
d2f
fadd
freturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 start F
0 15 1 direction D
3 6 3 transducer I
9 12 3 transducer I
MethodParameters:
Name Flags
start
direction
public static double nextUp(double);
descriptor: (D)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=4, args_size=1
start local 0 0: dload 0
ldc Infinity
dcmpg
ifge 5
1: dload 0
dconst_0
dadd
invokestatic java.lang.Double.doubleToRawLongBits:(D)J
lstore 2
start local 2 2: lload 2
lload 2
lconst_0
lcmp
iflt 3
lconst_1
goto 4
StackMap locals: double long
StackMap stack: long
3: ldc -1
StackMap locals: double long
StackMap stack: long long
4: ladd
invokestatic java.lang.Double.longBitsToDouble:(J)D
dreturn
end local 2 5: StackMap locals:
StackMap stack:
dload 0
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 d D
2 5 2 transducer J
MethodParameters:
Name Flags
d
public static float nextUp(float);
descriptor: (F)F
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: fload 0
ldc Infinity
fcmpg
ifge 5
1: fload 0
fconst_0
fadd
invokestatic java.lang.Float.floatToRawIntBits:(F)I
istore 1
start local 1 2: iload 1
iload 1
iflt 3
iconst_1
goto 4
StackMap locals: float int
StackMap stack: int
3: iconst_m1
StackMap locals: float int
StackMap stack: int int
4: iadd
invokestatic java.lang.Float.intBitsToFloat:(I)F
freturn
end local 1 5: StackMap locals:
StackMap stack:
fload 0
freturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 f F
2 5 1 transducer I
MethodParameters:
Name Flags
f
public static double nextDown(double);
descriptor: (D)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=2, args_size=1
start local 0 0: dload 0
invokestatic java.lang.Double.isNaN:(D)Z
ifne 1
dload 0
ldc -Infinity
dcmpl
ifne 2
1: StackMap locals:
StackMap stack:
dload 0
dreturn
2: StackMap locals:
StackMap stack:
dload 0
dconst_0
dcmpl
ifne 4
3: ldc -4.9E-324
dreturn
4: StackMap locals:
StackMap stack:
dload 0
invokestatic java.lang.Double.doubleToRawLongBits:(D)J
5: dload 0
dconst_0
dcmpl
ifle 6
ldc -1
goto 7
StackMap locals:
StackMap stack: long
6: lconst_1
7: StackMap locals: double
StackMap stack: long long
ladd
invokestatic java.lang.Double.longBitsToDouble:(J)D
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 d D
MethodParameters:
Name Flags
d
public static float nextDown(float);
descriptor: (F)F
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: fload 0
invokestatic java.lang.Float.isNaN:(F)Z
ifne 1
fload 0
ldc -Infinity
fcmpl
ifne 2
1: StackMap locals:
StackMap stack:
fload 0
freturn
2: StackMap locals:
StackMap stack:
fload 0
fconst_0
fcmpl
ifne 4
3: ldc -1.4E-45
freturn
4: StackMap locals:
StackMap stack:
fload 0
invokestatic java.lang.Float.floatToRawIntBits:(F)I
5: fload 0
fconst_0
fcmpl
ifle 6
iconst_m1
goto 7
StackMap locals:
StackMap stack: int
6: iconst_1
7: StackMap locals: float
StackMap stack: int int
iadd
invokestatic java.lang.Float.intBitsToFloat:(I)F
freturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 f F
MethodParameters:
Name Flags
f
public static double scalb(double, int);
descriptor: (DI)D
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=8, args_size=2
start local 0 start local 2 0: iconst_0
istore 3
start local 3 1: iconst_0
istore 4
start local 4 2: ldc NaN
dstore 5
start local 5 3: iload 2
ifge 8
4: iload 2
sipush -2099
invokestatic java.lang.Math.max:(II)I
istore 2
5: sipush -512
istore 4
6: getstatic java.lang.Math.twoToTheDoubleScaleDown:D
dstore 5
7: goto 11
8: StackMap locals: int int double
StackMap stack:
iload 2
sipush 2099
invokestatic java.lang.Math.min:(II)I
istore 2
9: sipush 512
istore 4
10: getstatic java.lang.Math.twoToTheDoubleScaleUp:D
dstore 5
11: StackMap locals:
StackMap stack:
iload 2
bipush 8
ishr
bipush 23
iushr
istore 7
start local 7 12: iload 2
iload 7
iadd
sipush 511
iand
iload 7
isub
istore 3
13: dload 0
iload 3
invokestatic java.lang.Math.powerOfTwoD:(I)D
dmul
dstore 0
14: iload 2
iload 3
isub
istore 2
15: goto 18
16: StackMap locals: int
StackMap stack:
dload 0
dload 5
dmul
dstore 0
17: iload 2
iload 4
isub
istore 2
18: StackMap locals:
StackMap stack:
iload 2
ifne 16
19: dload 0
dreturn
end local 7 end local 5 end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 d D
0 20 2 scaleFactor I
1 20 3 exp_adjust I
2 20 4 scale_increment I
3 20 5 exp_delta D
12 20 7 t I
MethodParameters:
Name Flags
d
scaleFactor
public static float scalb(float, int);
descriptor: (FI)F
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: iload 1
sipush 278
invokestatic java.lang.Math.min:(II)I
sipush -278
invokestatic java.lang.Math.max:(II)I
istore 1
1: fload 0
f2d
iload 1
invokestatic java.lang.Math.powerOfTwoD:(I)D
dmul
d2f
freturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 f F
0 2 1 scaleFactor I
MethodParameters:
Name Flags
f
scaleFactor
static double powerOfTwoD(int);
descriptor: (I)D
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: getstatic java.lang.Math.$assertionsDisabled:Z
ifne 2
iload 0
sipush -1022
if_icmplt 1
iload 0
sipush 1023
if_icmple 2
StackMap locals:
StackMap stack:
1: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
iload 0
i2l
ldc 1023
ladd
3: bipush 52
4: lshl
5: ldc 9218868437227405312
6: land
invokestatic java.lang.Double.longBitsToDouble:(J)D
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 n I
MethodParameters:
Name Flags
n
static float powerOfTwoF(int);
descriptor: (I)F
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic java.lang.Math.$assertionsDisabled:Z
ifne 2
iload 0
bipush -126
if_icmplt 1
iload 0
bipush 127
if_icmple 2
StackMap locals:
StackMap stack:
1: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
iload 0
bipush 127
iadd
3: bipush 23
4: ishl
5: ldc 2139095040
6: iand
invokestatic java.lang.Float.intBitsToFloat:(I)F
freturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 n I
MethodParameters:
Name Flags
n
}
SourceFile: "Math.java"
NestMembers:
java.lang.Math$RandomNumberGeneratorHolder
InnerClasses:
private final RandomNumberGeneratorHolder = java.lang.Math$RandomNumberGeneratorHolder of java.lang.Math