class org.apache.commons.math3.util.FastMath$Split
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.apache.commons.math3.util.FastMath$Split
super_class: java.lang.Object
{
public static final org.apache.commons.math3.util.FastMath$Split NAN;
descriptor: Lorg/apache/commons/math3/util/FastMath$Split;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final org.apache.commons.math3.util.FastMath$Split POSITIVE_INFINITY;
descriptor: Lorg/apache/commons/math3/util/FastMath$Split;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final org.apache.commons.math3.util.FastMath$Split NEGATIVE_INFINITY;
descriptor: Lorg/apache/commons/math3/util/FastMath$Split;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
private final double full;
descriptor: D
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final double high;
descriptor: D
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final double low;
descriptor: D
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=0, args_size=0
0: new org.apache.commons.math3.util.FastMath$Split
dup
ldc NaN
dconst_0
invokespecial org.apache.commons.math3.util.FastMath$Split.<init>:(DD)V
putstatic org.apache.commons.math3.util.FastMath$Split.NAN:Lorg/apache/commons/math3/util/FastMath$Split;
1: new org.apache.commons.math3.util.FastMath$Split
dup
ldc Infinity
dconst_0
invokespecial org.apache.commons.math3.util.FastMath$Split.<init>:(DD)V
putstatic org.apache.commons.math3.util.FastMath$Split.POSITIVE_INFINITY:Lorg/apache/commons/math3/util/FastMath$Split;
2: new org.apache.commons.math3.util.FastMath$Split
dup
ldc -Infinity
dconst_0
invokespecial org.apache.commons.math3.util.FastMath$Split.<init>:(DD)V
putstatic org.apache.commons.math3.util.FastMath$Split.NEGATIVE_INFINITY:Lorg/apache/commons/math3/util/FastMath$Split;
return
LocalVariableTable:
Start End Slot Name Signature
void <init>(double);
descriptor: (D)V
flags: (0x0000)
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
dload 1
putfield org.apache.commons.math3.util.FastMath$Split.full:D
2: aload 0
dload 1
invokestatic java.lang.Double.doubleToRawLongBits:(D)J
ldc -134217728
land
invokestatic java.lang.Double.longBitsToDouble:(J)D
putfield org.apache.commons.math3.util.FastMath$Split.high:D
3: aload 0
dload 1
aload 0
getfield org.apache.commons.math3.util.FastMath$Split.high:D
dsub
putfield org.apache.commons.math3.util.FastMath$Split.low:D
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/commons/math3/util/FastMath$Split;
0 5 1 x D
MethodParameters:
Name Flags
x final
void <init>(double, double);
descriptor: (DD)V
flags: (0x0000)
Code:
stack=7, locals=5, args_size=3
start local 0 start local 1 start local 3 0: aload 0
dload 1
dconst_0
dcmpl
ifne 2
dload 3
dconst_0
dcmpl
ifne 1
dload 1
invokestatic java.lang.Double.doubleToRawLongBits:(D)J
ldc -9223372036854775808
lcmp
ifne 1
ldc -0.0
goto 3
StackMap locals:
StackMap stack: uninitialized-this
1: dload 3
goto 3
StackMap locals:
StackMap stack: uninitialized-this
2: dload 1
dload 3
dadd
StackMap locals: uninitialized-this double double
StackMap stack: uninitialized-this double
3: dload 1
dload 3
invokespecial org.apache.commons.math3.util.FastMath$Split.<init>:(DDD)V
4: return
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/commons/math3/util/FastMath$Split;
0 5 1 high D
0 5 3 low D
MethodParameters:
Name Flags
high final
low final
void <init>(double, double, double);
descriptor: (DDD)V
flags: (0x0000)
Code:
stack=3, locals=7, args_size=4
start local 0 start local 1 start local 3 start local 5 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
dload 1
putfield org.apache.commons.math3.util.FastMath$Split.full:D
2: aload 0
dload 3
putfield org.apache.commons.math3.util.FastMath$Split.high:D
3: aload 0
dload 5
putfield org.apache.commons.math3.util.FastMath$Split.low:D
4: return
end local 5 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/commons/math3/util/FastMath$Split;
0 5 1 full D
0 5 3 high D
0 5 5 low D
MethodParameters:
Name Flags
full final
high final
low final
public org.apache.commons.math3.util.FastMath$Split multiply(org.apache.commons.math3.util.FastMath$Split);
descriptor: (Lorg/apache/commons/math3/util/FastMath$Split;)Lorg/apache/commons/math3/util/FastMath$Split;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=5, args_size=2
start local 0 start local 1 0: new org.apache.commons.math3.util.FastMath$Split
dup
aload 0
getfield org.apache.commons.math3.util.FastMath$Split.full:D
aload 1
getfield org.apache.commons.math3.util.FastMath$Split.full:D
dmul
invokespecial org.apache.commons.math3.util.FastMath$Split.<init>:(D)V
astore 2
start local 2 1: aload 0
getfield org.apache.commons.math3.util.FastMath$Split.low:D
aload 1
getfield org.apache.commons.math3.util.FastMath$Split.low:D
dmul
aload 2
getfield org.apache.commons.math3.util.FastMath$Split.full:D
aload 0
getfield org.apache.commons.math3.util.FastMath$Split.high:D
aload 1
getfield org.apache.commons.math3.util.FastMath$Split.high:D
dmul
dsub
aload 0
getfield org.apache.commons.math3.util.FastMath$Split.low:D
aload 1
getfield org.apache.commons.math3.util.FastMath$Split.high:D
dmul
dsub
aload 0
getfield org.apache.commons.math3.util.FastMath$Split.high:D
aload 1
getfield org.apache.commons.math3.util.FastMath$Split.low:D
dmul
dsub
dsub
dstore 3
start local 3 2: new org.apache.commons.math3.util.FastMath$Split
dup
aload 2
getfield org.apache.commons.math3.util.FastMath$Split.high:D
aload 2
getfield org.apache.commons.math3.util.FastMath$Split.low:D
dload 3
dadd
invokespecial org.apache.commons.math3.util.FastMath$Split.<init>:(DD)V
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/commons/math3/util/FastMath$Split;
0 3 1 b Lorg/apache/commons/math3/util/FastMath$Split;
1 3 2 mulBasic Lorg/apache/commons/math3/util/FastMath$Split;
2 3 3 mulError D
MethodParameters:
Name Flags
b final
public org.apache.commons.math3.util.FastMath$Split reciprocal();
descriptor: ()Lorg/apache/commons/math3/util/FastMath$Split;
flags: (0x0001) ACC_PUBLIC
Code:
stack=10, locals=7, args_size=1
start local 0 0: dconst_1
aload 0
getfield org.apache.commons.math3.util.FastMath$Split.full:D
ddiv
dstore 1
start local 1 1: new org.apache.commons.math3.util.FastMath$Split
dup
dload 1
invokespecial org.apache.commons.math3.util.FastMath$Split.<init>:(D)V
astore 3
start local 3 2: aload 0
aload 3
invokevirtual org.apache.commons.math3.util.FastMath$Split.multiply:(Lorg/apache/commons/math3/util/FastMath$Split;)Lorg/apache/commons/math3/util/FastMath$Split;
astore 4
start local 4 3: aload 4
getfield org.apache.commons.math3.util.FastMath$Split.high:D
dconst_1
dsub
aload 4
getfield org.apache.commons.math3.util.FastMath$Split.low:D
dadd
dstore 5
start local 5 4: dload 5
invokestatic java.lang.Double.isNaN:(D)Z
ifeq 5
aload 3
goto 6
StackMap locals: org.apache.commons.math3.util.FastMath$Split double org.apache.commons.math3.util.FastMath$Split org.apache.commons.math3.util.FastMath$Split double
StackMap stack:
5: new org.apache.commons.math3.util.FastMath$Split
dup
aload 3
getfield org.apache.commons.math3.util.FastMath$Split.high:D
aload 3
getfield org.apache.commons.math3.util.FastMath$Split.low:D
dload 5
aload 0
getfield org.apache.commons.math3.util.FastMath$Split.full:D
ddiv
dsub
invokespecial org.apache.commons.math3.util.FastMath$Split.<init>:(DD)V
StackMap locals:
StackMap stack: org.apache.commons.math3.util.FastMath$Split
6: areturn
end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/apache/commons/math3/util/FastMath$Split;
1 7 1 approximateInv D
2 7 3 splitInv Lorg/apache/commons/math3/util/FastMath$Split;
3 7 4 product Lorg/apache/commons/math3/util/FastMath$Split;
4 7 5 error D
private org.apache.commons.math3.util.FastMath$Split pow(long);
descriptor: (J)Lorg/apache/commons/math3/util/FastMath$Split;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=7, args_size=2
start local 0 start local 1 0: new org.apache.commons.math3.util.FastMath$Split
dup
dconst_1
invokespecial org.apache.commons.math3.util.FastMath$Split.<init>:(D)V
astore 3
start local 3 1: new org.apache.commons.math3.util.FastMath$Split
dup
aload 0
getfield org.apache.commons.math3.util.FastMath$Split.full:D
aload 0
getfield org.apache.commons.math3.util.FastMath$Split.high:D
aload 0
getfield org.apache.commons.math3.util.FastMath$Split.low:D
invokespecial org.apache.commons.math3.util.FastMath$Split.<init>:(DDD)V
astore 4
start local 4 2: lload 1
lstore 5
start local 5 3: goto 8
4: StackMap locals: org.apache.commons.math3.util.FastMath$Split org.apache.commons.math3.util.FastMath$Split long
StackMap stack:
lload 5
lconst_1
land
lconst_0
lcmp
ifeq 6
5: aload 3
aload 4
invokevirtual org.apache.commons.math3.util.FastMath$Split.multiply:(Lorg/apache/commons/math3/util/FastMath$Split;)Lorg/apache/commons/math3/util/FastMath$Split;
astore 3
6: StackMap locals:
StackMap stack:
aload 4
aload 4
invokevirtual org.apache.commons.math3.util.FastMath$Split.multiply:(Lorg/apache/commons/math3/util/FastMath$Split;)Lorg/apache/commons/math3/util/FastMath$Split;
astore 4
7: lload 5
iconst_1
lushr
lstore 5
StackMap locals:
StackMap stack:
8: lload 5
lconst_0
lcmp
ifne 4
end local 5 9: aload 3
getfield org.apache.commons.math3.util.FastMath$Split.full:D
invokestatic java.lang.Double.isNaN:(D)Z
ifeq 17
10: aload 0
getfield org.apache.commons.math3.util.FastMath$Split.full:D
invokestatic java.lang.Double.isNaN:(D)Z
ifeq 12
11: getstatic org.apache.commons.math3.util.FastMath$Split.NAN:Lorg/apache/commons/math3/util/FastMath$Split;
areturn
12: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.commons.math3.util.FastMath$Split.full:D
invokestatic org.apache.commons.math3.util.FastMath.abs:(D)D
dconst_1
dcmpg
ifge 14
13: new org.apache.commons.math3.util.FastMath$Split
dup
dconst_0
aload 0
getfield org.apache.commons.math3.util.FastMath$Split.full:D
invokestatic org.apache.commons.math3.util.FastMath.copySign:(DD)D
dconst_0
invokespecial org.apache.commons.math3.util.FastMath$Split.<init>:(DD)V
areturn
14: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.commons.math3.util.FastMath$Split.full:D
dconst_0
dcmpg
ifge 16
lload 1
lconst_1
land
lconst_1
lcmp
ifne 16
15: getstatic org.apache.commons.math3.util.FastMath$Split.NEGATIVE_INFINITY:Lorg/apache/commons/math3/util/FastMath$Split;
areturn
16: StackMap locals:
StackMap stack:
getstatic org.apache.commons.math3.util.FastMath$Split.POSITIVE_INFINITY:Lorg/apache/commons/math3/util/FastMath$Split;
areturn
17: StackMap locals:
StackMap stack:
aload 3
areturn
end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/apache/commons/math3/util/FastMath$Split;
0 18 1 e J
1 18 3 result Lorg/apache/commons/math3/util/FastMath$Split;
2 18 4 d2p Lorg/apache/commons/math3/util/FastMath$Split;
3 9 5 p J
MethodParameters:
Name Flags
e final
}
SourceFile: "FastMath.java"
NestHost: org.apache.commons.math3.util.FastMath
InnerClasses:
private Split = org.apache.commons.math3.util.FastMath$Split of org.apache.commons.math3.util.FastMath