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 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
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
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
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 180.0
ddiv
ldc 3.141592653589793
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 180.0
dmul
ldc 3.141592653589793
ddiv
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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 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, 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=3, 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
istore 2
start local 2 1: iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 x I
0 2 1 y I
1 2 2 r 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
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
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
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 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
invokestatic java.lang.Double.isNaN:(D)Z
ifne 1
dload 2
invokestatic java.lang.Double.isNaN:(D)Z
ifeq 2
1: StackMap locals:
StackMap stack:
dload 0
dload 2
dadd
dreturn
2: StackMap locals:
StackMap stack:
dload 0
dload 2
dcmpl
ifne 4
3: dload 2
dreturn
4: StackMap locals:
StackMap stack:
dload 0
dconst_0
dadd
invokestatic java.lang.Double.doubleToRawLongBits:(D)J
lstore 4
start local 4 5: dload 2
dload 0
dcmpl
ifle 10
6: lload 4
lload 4
lconst_0
lcmp
iflt 7
lconst_1
goto 8
StackMap locals: double double long
StackMap stack: long
7: ldc -1
StackMap locals: double double long
StackMap stack: long long
8: ladd
lstore 4
9: goto 16
10: StackMap locals:
StackMap stack:
getstatic java.lang.Math.$assertionsDisabled:Z
ifne 11
dload 2
dload 0
dcmpg
iflt 11
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
11: StackMap locals:
StackMap stack:
lload 4
lconst_0
lcmp
ifle 13
12: lload 4
lconst_1
lsub
lstore 4
goto 16
13: StackMap locals:
StackMap stack:
lload 4
lconst_0
lcmp
ifge 15
14: lload 4
lconst_1
ladd
lstore 4
goto 16
15: StackMap locals:
StackMap stack:
ldc -9223372036854775807
lstore 4
16: StackMap locals:
StackMap stack:
lload 4
invokestatic java.lang.Double.longBitsToDouble:(J)D
dreturn
end local 4 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 start D
0 17 2 direction D
5 17 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
invokestatic java.lang.Float.isNaN:(F)Z
ifne 1
dload 1
invokestatic java.lang.Double.isNaN:(D)Z
ifeq 2
1: StackMap locals:
StackMap stack:
fload 0
dload 1
d2f
fadd
freturn
2: StackMap locals:
StackMap stack:
fload 0
f2d
dload 1
dcmpl
ifne 4
3: dload 1
d2f
freturn
4: StackMap locals:
StackMap stack:
fload 0
fconst_0
fadd
invokestatic java.lang.Float.floatToRawIntBits:(F)I
istore 3
start local 3 5: dload 1
fload 0
f2d
dcmpl
ifle 10
6: iload 3
iload 3
iflt 7
iconst_1
goto 8
StackMap locals: float double int
StackMap stack: int
7: iconst_m1
StackMap locals: float double int
StackMap stack: int int
8: iadd
istore 3
9: goto 16
10: StackMap locals:
StackMap stack:
getstatic java.lang.Math.$assertionsDisabled:Z
ifne 11
dload 1
fload 0
f2d
dcmpg
iflt 11
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
11: StackMap locals:
StackMap stack:
iload 3
ifle 13
12: iinc 3 -1
goto 16
13: StackMap locals:
StackMap stack:
iload 3
ifge 15
14: iinc 3 1
goto 16
15: StackMap locals:
StackMap stack:
ldc -2147483647
istore 3
16: StackMap locals:
StackMap stack:
iload 3
invokestatic java.lang.Float.intBitsToFloat:(I)F
freturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 start F
0 17 1 direction D
5 17 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=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
dadd
dstore 0
3: dload 0
invokestatic java.lang.Double.doubleToRawLongBits:(D)J
4: dload 0
dconst_0
dcmpl
iflt 5
lconst_1
goto 6
StackMap locals:
StackMap stack: long
5: ldc -1
6: 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 7 0 d D
MethodParameters:
Name Flags
d
public static float nextUp(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
fadd
fstore 0
3: fload 0
invokestatic java.lang.Float.floatToRawIntBits:(F)I
4: fload 0
fconst_0
fcmpl
iflt 5
iconst_1
goto 6
StackMap locals:
StackMap stack: int
5: iconst_m1
6: 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 7 0 f F
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