Bug on Solaris
Martin Kahlert
martin.kahlert@infineon.com
Tue Jan 8 03:46:00 GMT 2002
Hi!
Sorry,
here are the missing parts (Double.class on Linux/Solaris).
Thanks,
Martin.
--
The early bird catches the worm. If you want something else for
breakfast, get up later.
-------------- next part --------------
Reading .class from Double.class.
Magic number: 0xcafebabe, minor_version: 3, major_version: 45.
Constant pool (count: 121):
#1: Utf8: "java/lang/Double"
#2: Class name: 1="java/lang/Double"
#3: Utf8: "java/lang/Number"
#4: Class name: 3="java/lang/Number"
#5: Utf8: "java/lang/Comparable"
#6: Class name: 5="java/lang/Comparable"
#7: Utf8: "MIN_VALUE"
#8: Utf8: "D"
#9: Utf8: "ConstantValue"
#10: Double 4.9406564584124654418e-324, bits = 0x0000000000000001
#12: Utf8: "MAX_VALUE"
#13: Double 1.7976931348623157081e+308, bits = 0x7fefffffffffffff
#15: Utf8: "NEGATIVE_INFINITY"
#16: Double -inf, bits = 0xfff0000000000000
#18: Utf8: "POSITIVE_INFINITY"
#19: Double inf, bits = 0x7ff0000000000000
#21: Utf8: "NaN"
#22: Double nan, bits = 0x7fffffffffffffff
#24: Utf8: "TYPE"
#25: Utf8: "Ljava/lang/Class;"
#26: Utf8: "value"
#27: Utf8: "serialVersionUID"
#28: Utf8: "J"
#29: Long -9172774392245257468=0x80b3c24a296bfb04
#31: Utf8: "<init>"
#32: Utf8: "(D)V"
#33: Utf8: "Code"
#34: Utf8: "()V"
#35: NameAndType name: 31=<init>, signature: 34=()void
#36: Methodref class: 4=java.lang.Number name_and_type: 35=<<init> ()void>
#37: NameAndType name: 26=value, signature: 8=double
#38: Fieldref class: 2=java.lang.Double name_and_type: 37=<value double>
#39: Utf8: "LineNumberTable"
#40: Utf8: "LocalVariableTable"
#41: Utf8: "this"
#42: Utf8: "Ljava/lang/Double;"
#43: Utf8: "(Ljava/lang/String;)V"
#44: Utf8: "parseDouble"
#45: Utf8: "(Ljava/lang/String;)D"
#46: NameAndType name: 44=parseDouble, signature: 45=(java.lang.String)double
#47: Methodref class: 2=java.lang.Double name_and_type: 46=<parseDouble (java.lang.String)double>
#48: Utf8: "s"
#49: Utf8: "Ljava/lang/String;"
#50: Utf8: "Exceptions"
#51: Utf8: "java/lang/NumberFormatException"
#52: Class name: 51="java/lang/NumberFormatException"
#53: Utf8: "toString"
#54: Utf8: "()Ljava/lang/String;"
#55: Utf8: "(D)Ljava/lang/String;"
#56: NameAndType name: 53=toString, signature: 55=(double)java.lang.String
#57: Methodref class: 2=java.lang.Double name_and_type: 56=<toString (double)java.lang.String>
#58: Utf8: "equals"
#59: Utf8: "(Ljava/lang/Object;)Z"
#60: Utf8: "doubleToLongBits"
#61: Utf8: "(D)J"
#62: NameAndType name: 60=doubleToLongBits, signature: 61=(double)long
#63: Methodref class: 2=java.lang.Double name_and_type: 62=<doubleToLongBits (double)long>
#64: Utf8: "doubleValue"
#65: Utf8: "()D"
#66: NameAndType name: 64=doubleValue, signature: 65=()double
#67: Methodref class: 2=java.lang.Double name_and_type: 66=<doubleValue ()double>
#68: Utf8: "obj"
#69: Utf8: "Ljava/lang/Object;"
#70: Utf8: "d"
#71: Utf8: "hashCode"
#72: Utf8: "()I"
#73: Utf8: "v"
#74: Utf8: "intValue"
#75: Utf8: "longValue"
#76: Utf8: "()J"
#77: Utf8: "floatValue"
#78: Utf8: "()F"
#79: Utf8: "valueOf"
#80: Utf8: "(Ljava/lang/String;)Ljava/lang/Double;"
#81: NameAndType name: 31=<init>, signature: 43=(java.lang.String)void
#82: Methodref class: 2=java.lang.Double name_and_type: 81=<<init> (java.lang.String)void>
#83: Utf8: "isNaN"
#84: Utf8: "()Z"
#85: Utf8: "(D)Z"
#86: NameAndType name: 83=isNaN, signature: 85=(double)boolean
#87: Methodref class: 2=java.lang.Double name_and_type: 86=<isNaN (double)boolean>
#88: Utf8: "isInfinite"
#89: NameAndType name: 88=isInfinite, signature: 85=(double)boolean
#90: Methodref class: 2=java.lang.Double name_and_type: 89=<isInfinite (double)boolean>
#91: Utf8: "compareTo"
#92: Utf8: "(Ljava/lang/Double;)I"
#93: Utf8: "compare"
#94: Utf8: "(DD)I"
#95: NameAndType name: 93=compare, signature: 94=(double,double)int
#96: Methodref class: 2=java.lang.Double name_and_type: 95=<compare (double,double)int>
#97: Utf8: "x"
#98: Utf8: "y"
#99: Utf8: "(Ljava/lang/Object;)I"
#100: NameAndType name: 91=compareTo, signature: 92=(java.lang.Double)int
#101: Methodref class: 2=java.lang.Double name_and_type: 100=<compareTo (java.lang.Double)int>
#102: Utf8: "o"
#103: Utf8: "(DZ)Ljava/lang/String;"
#104: NameAndType name: 53=toString, signature: 103=(double,boolean)java.lang.String
#105: Methodref class: 2=java.lang.Double name_and_type: 104=<toString (double,boolean)java.lang.String>
#106: Utf8: "doubleToRawLongBits"
#107: Utf8: "longBitsToDouble"
#108: Utf8: "(J)D"
#109: Utf8: "initIDs"
#110: Utf8: "<clinit>"
#111: Utf8: "java/lang/VMClassLoader"
#112: Class name: 111="java/lang/VMClassLoader"
#113: Utf8: "getPrimitiveClass"
#114: Utf8: "(C)Ljava/lang/Class;"
#115: NameAndType name: 113=getPrimitiveClass, signature: 114=(char)java.lang.Class
#116: Methodref class: 112=java.lang.VMClassLoader name_and_type: 115=<getPrimitiveClass (char)java.lang.Class>
#117: NameAndType name: 24=TYPE, signature: 25=java.lang.Class
#118: Fieldref class: 2=java.lang.Double name_and_type: 117=<TYPE java.lang.Class>
#119: Utf8: "SourceFile"
#120: Utf8: "Double.java"
Access flags: 0x31 public final super
This class: 2=java.lang.Double, super: 4=java.lang.Number
Interfaces (count: 1):
- Implements: 6=java.lang.Comparable
Fields (count: 8):
Field name:"MIN_VALUE" public static final Signature: 8=double
Attribute "ConstantValue", length:2, value: #10=<Double 4.9406564584124654418e-324>
Field name:"MAX_VALUE" public static final Signature: 8=double
Attribute "ConstantValue", length:2, value: #13=<Double 1.7976931348623157081e+308>
Field name:"NEGATIVE_INFINITY" public static final Signature: 8=double
Attribute "ConstantValue", length:2, value: #16=<Double -inf>
Field name:"POSITIVE_INFINITY" public static final Signature: 8=double
Attribute "ConstantValue", length:2, value: #19=<Double inf>
Field name:"NaN" public static final Signature: 8=double
Attribute "ConstantValue", length:2, value: #22=<Double nan>
Field name:"TYPE" public static final Signature: 25=java.lang.Class
Field name:"value" private final Signature: 8=double
Field name:"serialVersionUID" private static final Signature: 28=long
Attribute "ConstantValue", length:2, value: #29=<Long -9172774392245257468>
Methods (count: 25):
Method name:"<init>" public Signature: 32=(double)void
Attribute "Code", length:62, max_stack:3, max_locals:3, code_length:10
0: aload_0
1: invokespecial #36=<Method java.lang.Number.<init> ()void>
4: aload_0
5: dload_1
6: putfield #38=<Field java.lang.Double.value double>
9: return
Attribute "LineNumberTable", length:6, count: 1
line: 112 at pc: 4
Attribute "LocalVariableTable", length:22, count: 2
slot#0: name: 41=this, type: 42=java.lang.Double (pc: 0 length: 10)
slot#1: name: 26=value, type: 8=double (pc: 0 length: 10)
Method name:"<init>" public Signature: 43=(java.lang.String)void
Attribute "Code", length:65, max_stack:3, max_locals:2, code_length:13
0: aload_0
1: invokespecial #36=<Method java.lang.Number.<init> ()void>
4: aload_0
5: aload_1
6: invokestatic #47=<Method java.lang.Double.parseDouble (java.lang.String)double>
9: putfield #38=<Field java.lang.Double.value double>
12: return
Attribute "LineNumberTable", length:6, count: 1
line: 128 at pc: 4
Attribute "LocalVariableTable", length:22, count: 2
slot#0: name: 41=this, type: 42=java.lang.Double (pc: 0 length: 13)
slot#1: name: 48=s, type: 49=java.lang.String (pc: 0 length: 13)
Attribute "Exceptions", length:4, count: 1
0: #52=<Class java.lang.NumberFormatException>
Method name:"toString" public Signature: 54=()java.lang.String
Attribute "Code", length:50, max_stack:2, max_locals:1, code_length:8
0: aload_0
1: getfield #38=<Field java.lang.Double.value double>
4: invokestatic #57=<Method java.lang.Double.toString (double)java.lang.String>
7: areturn
Attribute "LineNumberTable", length:6, count: 1
line: 141 at pc: 0
Attribute "LocalVariableTable", length:12, count: 1
slot#0: name: 41=this, type: 42=java.lang.Double (pc: 0 length: 8)
Method name:"equals" public Signature: 59=(java.lang.Object)boolean
Attribute "Code", length:112, max_stack:5, max_locals:3, code_length:38
0: aload_1
1: instanceof #2=<Class java.lang.Double>
4: ifne 9
7: iconst_0
8: ireturn
9: aload_1
10: checkcast #2=<Class java.lang.Double>
13: astore_2
14: aload_0
15: getfield #38=<Field java.lang.Double.value double>
18: invokestatic #63=<Method java.lang.Double.doubleToLongBits (double)long>
21: aload_2
22: invokevirtual #67=<Method java.lang.Double.doubleValue ()double>
25: invokestatic #63=<Method java.lang.Double.doubleToLongBits (double)long>
28: lcmp
29: ifne 36
32: iconst_1
33: goto 37
36: iconst_0
37: ireturn
Attribute "LineNumberTable", length:18, count: 4
line: 163 at pc: 0
line: 164 at pc: 7
line: 166 at pc: 9
line: 168 at pc: 14
Attribute "LocalVariableTable", length:32, count: 3
slot#0: name: 41=this, type: 42=java.lang.Double (pc: 0 length: 38)
slot#1: name: 68=obj, type: 69=java.lang.Object (pc: 0 length: 38)
slot#2: name: 70=d, type: 42=java.lang.Double (pc: 9 length: 29)
Method name:"hashCode" public Signature: 72=()int
Attribute "Code", length:73, max_stack:4, max_locals:3, code_length:17
0: aload_0
1: getfield #38=<Field java.lang.Double.value double>
4: invokestatic #63=<Method java.lang.Double.doubleToLongBits (double)long>
7: lstore_1
8: lload_1
9: l2i
10: lload_1
11: bipush 32
13: lushr
14: l2i
15: ixor
16: ireturn
Attribute "LineNumberTable", length:10, count: 2
line: 181 at pc: 0
line: 182 at pc: 8
Attribute "LocalVariableTable", length:22, count: 2
slot#0: name: 41=this, type: 42=java.lang.Double (pc: 0 length: 17)
slot#1: name: 73=v, type: 28=long (pc: 0 length: 17)
Method name:"intValue" public Signature: 72=()int
Attribute "Code", length:48, max_stack:2, max_locals:1, code_length:6
0: aload_0
1: getfield #38=<Field java.lang.Double.value double>
4: d2i
5: ireturn
Attribute "LineNumberTable", length:6, count: 1
line: 191 at pc: 0
Attribute "LocalVariableTable", length:12, count: 1
slot#0: name: 41=this, type: 42=java.lang.Double (pc: 0 length: 6)
Method name:"longValue" public Signature: 76=()long
Attribute "Code", length:48, max_stack:2, max_locals:1, code_length:6
0: aload_0
1: getfield #38=<Field java.lang.Double.value double>
4: d2l
5: lreturn
Attribute "LineNumberTable", length:6, count: 1
line: 200 at pc: 0
Attribute "LocalVariableTable", length:12, count: 1
slot#0: name: 41=this, type: 42=java.lang.Double (pc: 0 length: 6)
Method name:"floatValue" public Signature: 78=()float
Attribute "Code", length:48, max_stack:2, max_locals:1, code_length:6
0: aload_0
1: getfield #38=<Field java.lang.Double.value double>
4: d2f
5: freturn
Attribute "LineNumberTable", length:6, count: 1
line: 209 at pc: 0
Attribute "LocalVariableTable", length:12, count: 1
slot#0: name: 41=this, type: 42=java.lang.Double (pc: 0 length: 6)
Method name:"doubleValue" public Signature: 65=()double
Attribute "Code", length:47, max_stack:2, max_locals:1, code_length:5
0: aload_0
1: getfield #38=<Field java.lang.Double.value double>
4: dreturn
Attribute "LineNumberTable", length:6, count: 1
line: 218 at pc: 0
Attribute "LocalVariableTable", length:12, count: 1
slot#0: name: 41=this, type: 42=java.lang.Double (pc: 0 length: 5)
Method name:"valueOf" public static Signature: 80=(java.lang.String)java.lang.Double
Attribute "Code", length:51, max_stack:3, max_locals:1, code_length:9
0: new #2=<Class java.lang.Double>
3: dup
4: aload_0
5: invokespecial #82=<Method java.lang.Double.<init> (java.lang.String)void>
8: areturn
Attribute "LineNumberTable", length:6, count: 1
line: 237 at pc: 0
Attribute "LocalVariableTable", length:12, count: 1
slot#0: name: 48=s, type: 49=java.lang.String (pc: 0 length: 9)
Attribute "Exceptions", length:4, count: 1
0: #52=<Class java.lang.NumberFormatException>
Method name:"isNaN" public Signature: 84=()boolean
Attribute "Code", length:50, max_stack:2, max_locals:1, code_length:8
0: aload_0
1: getfield #38=<Field java.lang.Double.value double>
4: invokestatic #87=<Method java.lang.Double.isNaN (double)boolean>
7: ireturn
Attribute "LineNumberTable", length:6, count: 1
line: 247 at pc: 0
Attribute "LocalVariableTable", length:12, count: 1
slot#0: name: 41=this, type: 42=java.lang.Double (pc: 0 length: 8)
Method name:"isNaN" public static Signature: 85=(double)boolean
Attribute "Code", length:54, max_stack:4, max_locals:2, code_length:12
0: dload_0
1: dload_0
2: dcmpl
3: ifeq 10
6: iconst_1
7: goto 11
10: iconst_0
11: ireturn
Attribute "LineNumberTable", length:6, count: 1
line: 261 at pc: 0
Attribute "LocalVariableTable", length:12, count: 1
slot#0: name: 73=v, type: 8=double (pc: 0 length: 12)
Method name:"isInfinite" public Signature: 84=()boolean
Attribute "Code", length:50, max_stack:2, max_locals:1, code_length:8
0: aload_0
1: getfield #38=<Field java.lang.Double.value double>
4: invokestatic #90=<Method java.lang.Double.isInfinite (double)boolean>
7: ireturn
Attribute "LineNumberTable", length:6, count: 1
line: 273 at pc: 0
Attribute "LocalVariableTable", length:12, count: 1
slot#0: name: 41=this, type: 42=java.lang.Double (pc: 0 length: 8)
Method name:"isInfinite" public static Signature: 85=(double)boolean
Attribute "Code", length:67, max_stack:4, max_locals:2, code_length:25
0: dload_0
1: ldc2_w #19=<Double inf>
4: dcmpl
5: ifne 11
8: goto 19
11: dload_0
12: ldc2_w #16=<Double -inf>
15: dcmpl
16: ifne 23
19: iconst_1
20: goto 24
23: iconst_0
24: ireturn
Attribute "LineNumberTable", length:6, count: 1
line: 286 at pc: 0
Attribute "LocalVariableTable", length:12, count: 1
slot#0: name: 73=v, type: 8=double (pc: 0 length: 25)
Method name:"compareTo" public Signature: 92=(java.lang.Double)int
Attribute "Code", length:64, max_stack:4, max_locals:2, code_length:12
0: aload_0
1: getfield #38=<Field java.lang.Double.value double>
4: aload_1
5: getfield #38=<Field java.lang.Double.value double>
8: invokestatic #96=<Method java.lang.Double.compare (double,double)int>
11: ireturn
Attribute "LineNumberTable", length:6, count: 1
line: 310 at pc: 0
Attribute "LocalVariableTable", length:22, count: 2
slot#0: name: 41=this, type: 42=java.lang.Double (pc: 0 length: 12)
slot#1: name: 70=d, type: 42=java.lang.Double (pc: 0 length: 12)
Method name:"compare" public static Signature: 94=(double,double)int
Attribute "Code", length:165, max_stack:10, max_locals:4, code_length:73
0: dload_0
1: invokestatic #87=<Method java.lang.Double.isNaN (double)boolean>
4: ifeq 18
7: dload_2
8: invokestatic #87=<Method java.lang.Double.isNaN (double)boolean>
11: ifeq 16
14: iconst_0
15: ireturn
16: iconst_1
17: ireturn
18: dload_2
19: invokestatic #87=<Method java.lang.Double.isNaN (double)boolean>
22: ifeq 27
25: iconst_m1
26: ireturn
27: dload_0
28: dconst_0
29: dcmpl
30: ifne 41
33: dload_2
34: dconst_0
35: dcmpl
36: ifne 41
39: iconst_1
40: ireturn
41: dload_0
42: dconst_0
43: dcmpl
44: ifne 55
47: dload_2
48: dconst_0
49: dcmpl
50: ifne 55
53: iconst_m1
54: ireturn
55: dload_0
56: dload_2
57: dcmpl
58: ifne 63
61: iconst_0
62: ireturn
63: dload_0
64: dload_2
65: dcmpl
66: ifle 71
69: iconst_1
70: ireturn
71: iconst_m1
72: ireturn
Attribute "LineNumberTable", length:46, count: 11
line: 333 at pc: 0
line: 334 at pc: 7
line: 335 at pc: 18
line: 336 at pc: 25
line: 337 at pc: 27
line: 338 at pc: 39
line: 339 at pc: 41
line: 340 at pc: 53
line: 341 at pc: 55
line: 342 at pc: 61
line: 344 at pc: 63
Attribute "LocalVariableTable", length:22, count: 2
slot#0: name: 97=x, type: 8=double (pc: 0 length: 73)
slot#2: name: 98=y, type: 8=double (pc: 0 length: 73)
Method name:"compareTo" public Signature: 99=(java.lang.Object)int
Attribute "Code", length:61, max_stack:2, max_locals:2, code_length:9
0: aload_0
1: aload_1
2: checkcast #2=<Class java.lang.Double>
5: invokevirtual #101=<Method java.lang.Double.compareTo (java.lang.Double)int>
8: ireturn
Attribute "LineNumberTable", length:6, count: 1
line: 360 at pc: 0
Attribute "LocalVariableTable", length:22, count: 2
slot#0: name: 41=this, type: 42=java.lang.Double (pc: 0 length: 9)
slot#1: name: 102=o, type: 69=java.lang.Object (pc: 0 length: 9)
Method name:"toString" public static Signature: 55=(double)java.lang.String
Attribute "Code", length:48, max_stack:3, max_locals:2, code_length:6
0: dload_0
1: iconst_0
2: invokestatic #105=<Method java.lang.Double.toString (double,boolean)java.lang.String>
5: areturn
Attribute "LineNumberTable", length:6, count: 1
line: 412 at pc: 0
Attribute "LocalVariableTable", length:12, count: 1
slot#0: name: 70=d, type: 8=double (pc: 0 length: 6)
Method name:"toString" static native Signature: 103=(double,boolean)java.lang.String
Method name:"doubleToLongBits" public static native Signature: 61=(double)long
Method name:"doubleToRawLongBits" public static native Signature: 61=(double)long
Method name:"longBitsToDouble" public static native Signature: 108=(long)double
Method name:"parseDouble" public static native Signature: 45=(java.lang.String)double
Attribute "Exceptions", length:4, count: 1
0: #52=<Class java.lang.NumberFormatException>
Method name:"initIDs" private static native Signature: 34=()void
Method name:"<clinit>" static Signature: 34=()void
Attribute "Code", length:33, max_stack:1, max_locals:0, code_length:9
0: bipush 68
2: invokestatic #116=<Method java.lang.VMClassLoader.getPrimitiveClass (char)java.lang.Class>
5: putstatic #118=<Field java.lang.Double.TYPE java.lang.Class>
8: return
Attribute "LineNumberTable", length:6, count: 1
line: 83 at pc: 0
Attributes (count: 1):
Attribute "SourceFile", length:2, #120="Double.java"
-------------- next part --------------
Reading .class from Double.class.
Magic number: 0xcafebabe, minor_version: 3, major_version: 45.
Constant pool (count: 121):
#1: Utf8: "java/lang/Double"
#2: Class name: 1="java/lang/Double"
#3: Utf8: "java/lang/Number"
#4: Class name: 3="java/lang/Number"
#5: Utf8: "java/lang/Comparable"
#6: Class name: 5="java/lang/Comparable"
#7: Utf8: "MIN_VALUE"
#8: Utf8: "D"
#9: Utf8: "ConstantValue"
#10: Double 4.9406564584124654418e-324, bits = 0x0000000000000001
#12: Utf8: "MAX_VALUE"
#13: Double 1.7976931348623157081e+308, bits = 0x7fefffffffffffff
#15: Utf8: "NEGATIVE_INFINITY"
#16: Double -inf, bits = 0xfff0000000000000
#18: Utf8: "POSITIVE_INFINITY"
#19: Double inf, bits = 0x7ff0000000000000
#21: Utf8: "NaN"
#22: Double nan, bits = 0x7ff8000000000000
#24: Utf8: "TYPE"
#25: Utf8: "Ljava/lang/Class;"
#26: Utf8: "value"
#27: Utf8: "serialVersionUID"
#28: Utf8: "J"
#29: Long -9172774392245257468=0x80b3c24a296bfb04
#31: Utf8: "<init>"
#32: Utf8: "(D)V"
#33: Utf8: "Code"
#34: Utf8: "()V"
#35: NameAndType name: 31=<init>, signature: 34=()void
#36: Methodref class: 4=java.lang.Number name_and_type: 35=<<init> ()void>
#37: NameAndType name: 26=value, signature: 8=double
#38: Fieldref class: 2=java.lang.Double name_and_type: 37=<value double>
#39: Utf8: "LineNumberTable"
#40: Utf8: "LocalVariableTable"
#41: Utf8: "this"
#42: Utf8: "Ljava/lang/Double;"
#43: Utf8: "(Ljava/lang/String;)V"
#44: Utf8: "parseDouble"
#45: Utf8: "(Ljava/lang/String;)D"
#46: NameAndType name: 44=parseDouble, signature: 45=(java.lang.String)double
#47: Methodref class: 2=java.lang.Double name_and_type: 46=<parseDouble (java.lang.String)double>
#48: Utf8: "s"
#49: Utf8: "Ljava/lang/String;"
#50: Utf8: "Exceptions"
#51: Utf8: "java/lang/NumberFormatException"
#52: Class name: 51="java/lang/NumberFormatException"
#53: Utf8: "toString"
#54: Utf8: "()Ljava/lang/String;"
#55: Utf8: "(D)Ljava/lang/String;"
#56: NameAndType name: 53=toString, signature: 55=(double)java.lang.String
#57: Methodref class: 2=java.lang.Double name_and_type: 56=<toString (double)java.lang.String>
#58: Utf8: "equals"
#59: Utf8: "(Ljava/lang/Object;)Z"
#60: Utf8: "doubleToLongBits"
#61: Utf8: "(D)J"
#62: NameAndType name: 60=doubleToLongBits, signature: 61=(double)long
#63: Methodref class: 2=java.lang.Double name_and_type: 62=<doubleToLongBits (double)long>
#64: Utf8: "doubleValue"
#65: Utf8: "()D"
#66: NameAndType name: 64=doubleValue, signature: 65=()double
#67: Methodref class: 2=java.lang.Double name_and_type: 66=<doubleValue ()double>
#68: Utf8: "obj"
#69: Utf8: "Ljava/lang/Object;"
#70: Utf8: "d"
#71: Utf8: "hashCode"
#72: Utf8: "()I"
#73: Utf8: "v"
#74: Utf8: "intValue"
#75: Utf8: "longValue"
#76: Utf8: "()J"
#77: Utf8: "floatValue"
#78: Utf8: "()F"
#79: Utf8: "valueOf"
#80: Utf8: "(Ljava/lang/String;)Ljava/lang/Double;"
#81: NameAndType name: 31=<init>, signature: 43=(java.lang.String)void
#82: Methodref class: 2=java.lang.Double name_and_type: 81=<<init> (java.lang.String)void>
#83: Utf8: "isNaN"
#84: Utf8: "()Z"
#85: Utf8: "(D)Z"
#86: NameAndType name: 83=isNaN, signature: 85=(double)boolean
#87: Methodref class: 2=java.lang.Double name_and_type: 86=<isNaN (double)boolean>
#88: Utf8: "isInfinite"
#89: NameAndType name: 88=isInfinite, signature: 85=(double)boolean
#90: Methodref class: 2=java.lang.Double name_and_type: 89=<isInfinite (double)boolean>
#91: Utf8: "compareTo"
#92: Utf8: "(Ljava/lang/Double;)I"
#93: Utf8: "compare"
#94: Utf8: "(DD)I"
#95: NameAndType name: 93=compare, signature: 94=(double,double)int
#96: Methodref class: 2=java.lang.Double name_and_type: 95=<compare (double,double)int>
#97: Utf8: "x"
#98: Utf8: "y"
#99: Utf8: "(Ljava/lang/Object;)I"
#100: NameAndType name: 91=compareTo, signature: 92=(java.lang.Double)int
#101: Methodref class: 2=java.lang.Double name_and_type: 100=<compareTo (java.lang.Double)int>
#102: Utf8: "o"
#103: Utf8: "(DZ)Ljava/lang/String;"
#104: NameAndType name: 53=toString, signature: 103=(double,boolean)java.lang.String
#105: Methodref class: 2=java.lang.Double name_and_type: 104=<toString (double,boolean)java.lang.String>
#106: Utf8: "doubleToRawLongBits"
#107: Utf8: "longBitsToDouble"
#108: Utf8: "(J)D"
#109: Utf8: "initIDs"
#110: Utf8: "<clinit>"
#111: Utf8: "java/lang/VMClassLoader"
#112: Class name: 111="java/lang/VMClassLoader"
#113: Utf8: "getPrimitiveClass"
#114: Utf8: "(C)Ljava/lang/Class;"
#115: NameAndType name: 113=getPrimitiveClass, signature: 114=(char)java.lang.Class
#116: Methodref class: 112=java.lang.VMClassLoader name_and_type: 115=<getPrimitiveClass (char)java.lang.Class>
#117: NameAndType name: 24=TYPE, signature: 25=java.lang.Class
#118: Fieldref class: 2=java.lang.Double name_and_type: 117=<TYPE java.lang.Class>
#119: Utf8: "SourceFile"
#120: Utf8: "Double.java"
Access flags: 0x31 public final super
This class: 2=java.lang.Double, super: 4=java.lang.Number
Interfaces (count: 1):
- Implements: 6=java.lang.Comparable
Fields (count: 8):
Field name:"MIN_VALUE" public static final Signature: 8=double
Attribute "ConstantValue", length:2, value: #10=<Double 4.9406564584124654418e-324>
Field name:"MAX_VALUE" public static final Signature: 8=double
Attribute "ConstantValue", length:2, value: #13=<Double 1.7976931348623157081e+308>
Field name:"NEGATIVE_INFINITY" public static final Signature: 8=double
Attribute "ConstantValue", length:2, value: #16=<Double -inf>
Field name:"POSITIVE_INFINITY" public static final Signature: 8=double
Attribute "ConstantValue", length:2, value: #19=<Double inf>
Field name:"NaN" public static final Signature: 8=double
Attribute "ConstantValue", length:2, value: #22=<Double nan>
Field name:"TYPE" public static final Signature: 25=java.lang.Class
Field name:"value" private final Signature: 8=double
Field name:"serialVersionUID" private static final Signature: 28=long
Attribute "ConstantValue", length:2, value: #29=<Long -9172774392245257468>
Methods (count: 25):
Method name:"<init>" public Signature: 32=(double)void
Attribute "Code", length:62, max_stack:3, max_locals:3, code_length:10
0: aload_0
1: invokespecial #36=<Method java.lang.Number.<init> ()void>
4: aload_0
5: dload_1
6: putfield #38=<Field java.lang.Double.value double>
9: return
Attribute "LineNumberTable", length:6, count: 1
line: 112 at pc: 4
Attribute "LocalVariableTable", length:22, count: 2
slot#0: name: 41=this, type: 42=java.lang.Double (pc: 0 length: 10)
slot#1: name: 26=value, type: 8=double (pc: 0 length: 10)
Method name:"<init>" public Signature: 43=(java.lang.String)void
Attribute "Code", length:65, max_stack:3, max_locals:2, code_length:13
0: aload_0
1: invokespecial #36=<Method java.lang.Number.<init> ()void>
4: aload_0
5: aload_1
6: invokestatic #47=<Method java.lang.Double.parseDouble (java.lang.String)double>
9: putfield #38=<Field java.lang.Double.value double>
12: return
Attribute "LineNumberTable", length:6, count: 1
line: 128 at pc: 4
Attribute "LocalVariableTable", length:22, count: 2
slot#0: name: 41=this, type: 42=java.lang.Double (pc: 0 length: 13)
slot#1: name: 48=s, type: 49=java.lang.String (pc: 0 length: 13)
Attribute "Exceptions", length:4, count: 1
0: #52=<Class java.lang.NumberFormatException>
Method name:"toString" public Signature: 54=()java.lang.String
Attribute "Code", length:50, max_stack:2, max_locals:1, code_length:8
0: aload_0
1: getfield #38=<Field java.lang.Double.value double>
4: invokestatic #57=<Method java.lang.Double.toString (double)java.lang.String>
7: areturn
Attribute "LineNumberTable", length:6, count: 1
line: 141 at pc: 0
Attribute "LocalVariableTable", length:12, count: 1
slot#0: name: 41=this, type: 42=java.lang.Double (pc: 0 length: 8)
Method name:"equals" public Signature: 59=(java.lang.Object)boolean
Attribute "Code", length:112, max_stack:5, max_locals:3, code_length:38
0: aload_1
1: instanceof #2=<Class java.lang.Double>
4: ifne 9
7: iconst_0
8: ireturn
9: aload_1
10: checkcast #2=<Class java.lang.Double>
13: astore_2
14: aload_0
15: getfield #38=<Field java.lang.Double.value double>
18: invokestatic #63=<Method java.lang.Double.doubleToLongBits (double)long>
21: aload_2
22: invokevirtual #67=<Method java.lang.Double.doubleValue ()double>
25: invokestatic #63=<Method java.lang.Double.doubleToLongBits (double)long>
28: lcmp
29: ifne 36
32: iconst_1
33: goto 37
36: iconst_0
37: ireturn
Attribute "LineNumberTable", length:18, count: 4
line: 163 at pc: 0
line: 164 at pc: 7
line: 166 at pc: 9
line: 168 at pc: 14
Attribute "LocalVariableTable", length:32, count: 3
slot#0: name: 41=this, type: 42=java.lang.Double (pc: 0 length: 38)
slot#1: name: 68=obj, type: 69=java.lang.Object (pc: 0 length: 38)
slot#2: name: 70=d, type: 42=java.lang.Double (pc: 9 length: 29)
Method name:"hashCode" public Signature: 72=()int
Attribute "Code", length:73, max_stack:4, max_locals:3, code_length:17
0: aload_0
1: getfield #38=<Field java.lang.Double.value double>
4: invokestatic #63=<Method java.lang.Double.doubleToLongBits (double)long>
7: lstore_1
8: lload_1
9: l2i
10: lload_1
11: bipush 32
13: lushr
14: l2i
15: ixor
16: ireturn
Attribute "LineNumberTable", length:10, count: 2
line: 181 at pc: 0
line: 182 at pc: 8
Attribute "LocalVariableTable", length:22, count: 2
slot#0: name: 41=this, type: 42=java.lang.Double (pc: 0 length: 17)
slot#1: name: 73=v, type: 28=long (pc: 0 length: 17)
Method name:"intValue" public Signature: 72=()int
Attribute "Code", length:48, max_stack:2, max_locals:1, code_length:6
0: aload_0
1: getfield #38=<Field java.lang.Double.value double>
4: d2i
5: ireturn
Attribute "LineNumberTable", length:6, count: 1
line: 191 at pc: 0
Attribute "LocalVariableTable", length:12, count: 1
slot#0: name: 41=this, type: 42=java.lang.Double (pc: 0 length: 6)
Method name:"longValue" public Signature: 76=()long
Attribute "Code", length:48, max_stack:2, max_locals:1, code_length:6
0: aload_0
1: getfield #38=<Field java.lang.Double.value double>
4: d2l
5: lreturn
Attribute "LineNumberTable", length:6, count: 1
line: 200 at pc: 0
Attribute "LocalVariableTable", length:12, count: 1
slot#0: name: 41=this, type: 42=java.lang.Double (pc: 0 length: 6)
Method name:"floatValue" public Signature: 78=()float
Attribute "Code", length:48, max_stack:2, max_locals:1, code_length:6
0: aload_0
1: getfield #38=<Field java.lang.Double.value double>
4: d2f
5: freturn
Attribute "LineNumberTable", length:6, count: 1
line: 209 at pc: 0
Attribute "LocalVariableTable", length:12, count: 1
slot#0: name: 41=this, type: 42=java.lang.Double (pc: 0 length: 6)
Method name:"doubleValue" public Signature: 65=()double
Attribute "Code", length:47, max_stack:2, max_locals:1, code_length:5
0: aload_0
1: getfield #38=<Field java.lang.Double.value double>
4: dreturn
Attribute "LineNumberTable", length:6, count: 1
line: 218 at pc: 0
Attribute "LocalVariableTable", length:12, count: 1
slot#0: name: 41=this, type: 42=java.lang.Double (pc: 0 length: 5)
Method name:"valueOf" public static Signature: 80=(java.lang.String)java.lang.Double
Attribute "Code", length:51, max_stack:3, max_locals:1, code_length:9
0: new #2=<Class java.lang.Double>
3: dup
4: aload_0
5: invokespecial #82=<Method java.lang.Double.<init> (java.lang.String)void>
8: areturn
Attribute "LineNumberTable", length:6, count: 1
line: 237 at pc: 0
Attribute "LocalVariableTable", length:12, count: 1
slot#0: name: 48=s, type: 49=java.lang.String (pc: 0 length: 9)
Attribute "Exceptions", length:4, count: 1
0: #52=<Class java.lang.NumberFormatException>
Method name:"isNaN" public Signature: 84=()boolean
Attribute "Code", length:50, max_stack:2, max_locals:1, code_length:8
0: aload_0
1: getfield #38=<Field java.lang.Double.value double>
4: invokestatic #87=<Method java.lang.Double.isNaN (double)boolean>
7: ireturn
Attribute "LineNumberTable", length:6, count: 1
line: 247 at pc: 0
Attribute "LocalVariableTable", length:12, count: 1
slot#0: name: 41=this, type: 42=java.lang.Double (pc: 0 length: 8)
Method name:"isNaN" public static Signature: 85=(double)boolean
Attribute "Code", length:54, max_stack:4, max_locals:2, code_length:12
0: dload_0
1: dload_0
2: dcmpl
3: ifeq 10
6: iconst_1
7: goto 11
10: iconst_0
11: ireturn
Attribute "LineNumberTable", length:6, count: 1
line: 261 at pc: 0
Attribute "LocalVariableTable", length:12, count: 1
slot#0: name: 73=v, type: 8=double (pc: 0 length: 12)
Method name:"isInfinite" public Signature: 84=()boolean
Attribute "Code", length:50, max_stack:2, max_locals:1, code_length:8
0: aload_0
1: getfield #38=<Field java.lang.Double.value double>
4: invokestatic #90=<Method java.lang.Double.isInfinite (double)boolean>
7: ireturn
Attribute "LineNumberTable", length:6, count: 1
line: 273 at pc: 0
Attribute "LocalVariableTable", length:12, count: 1
slot#0: name: 41=this, type: 42=java.lang.Double (pc: 0 length: 8)
Method name:"isInfinite" public static Signature: 85=(double)boolean
Attribute "Code", length:67, max_stack:4, max_locals:2, code_length:25
0: dload_0
1: ldc2_w #19=<Double inf>
4: dcmpl
5: ifne 11
8: goto 19
11: dload_0
12: ldc2_w #16=<Double -inf>
15: dcmpl
16: ifne 23
19: iconst_1
20: goto 24
23: iconst_0
24: ireturn
Attribute "LineNumberTable", length:6, count: 1
line: 286 at pc: 0
Attribute "LocalVariableTable", length:12, count: 1
slot#0: name: 73=v, type: 8=double (pc: 0 length: 25)
Method name:"compareTo" public Signature: 92=(java.lang.Double)int
Attribute "Code", length:64, max_stack:4, max_locals:2, code_length:12
0: aload_0
1: getfield #38=<Field java.lang.Double.value double>
4: aload_1
5: getfield #38=<Field java.lang.Double.value double>
8: invokestatic #96=<Method java.lang.Double.compare (double,double)int>
11: ireturn
Attribute "LineNumberTable", length:6, count: 1
line: 310 at pc: 0
Attribute "LocalVariableTable", length:22, count: 2
slot#0: name: 41=this, type: 42=java.lang.Double (pc: 0 length: 12)
slot#1: name: 70=d, type: 42=java.lang.Double (pc: 0 length: 12)
Method name:"compare" public static Signature: 94=(double,double)int
Attribute "Code", length:165, max_stack:10, max_locals:4, code_length:73
0: dload_0
1: invokestatic #87=<Method java.lang.Double.isNaN (double)boolean>
4: ifeq 18
7: dload_2
8: invokestatic #87=<Method java.lang.Double.isNaN (double)boolean>
11: ifeq 16
14: iconst_0
15: ireturn
16: iconst_1
17: ireturn
18: dload_2
19: invokestatic #87=<Method java.lang.Double.isNaN (double)boolean>
22: ifeq 27
25: iconst_m1
26: ireturn
27: dload_0
28: dconst_0
29: dcmpl
30: ifne 41
33: dload_2
34: dconst_0
35: dcmpl
36: ifne 41
39: iconst_1
40: ireturn
41: dload_0
42: dconst_0
43: dcmpl
44: ifne 55
47: dload_2
48: dconst_0
49: dcmpl
50: ifne 55
53: iconst_m1
54: ireturn
55: dload_0
56: dload_2
57: dcmpl
58: ifne 63
61: iconst_0
62: ireturn
63: dload_0
64: dload_2
65: dcmpl
66: ifle 71
69: iconst_1
70: ireturn
71: iconst_m1
72: ireturn
Attribute "LineNumberTable", length:46, count: 11
line: 333 at pc: 0
line: 334 at pc: 7
line: 335 at pc: 18
line: 336 at pc: 25
line: 337 at pc: 27
line: 338 at pc: 39
line: 339 at pc: 41
line: 340 at pc: 53
line: 341 at pc: 55
line: 342 at pc: 61
line: 344 at pc: 63
Attribute "LocalVariableTable", length:22, count: 2
slot#0: name: 97=x, type: 8=double (pc: 0 length: 73)
slot#2: name: 98=y, type: 8=double (pc: 0 length: 73)
Method name:"compareTo" public Signature: 99=(java.lang.Object)int
Attribute "Code", length:61, max_stack:2, max_locals:2, code_length:9
0: aload_0
1: aload_1
2: checkcast #2=<Class java.lang.Double>
5: invokevirtual #101=<Method java.lang.Double.compareTo (java.lang.Double)int>
8: ireturn
Attribute "LineNumberTable", length:6, count: 1
line: 360 at pc: 0
Attribute "LocalVariableTable", length:22, count: 2
slot#0: name: 41=this, type: 42=java.lang.Double (pc: 0 length: 9)
slot#1: name: 102=o, type: 69=java.lang.Object (pc: 0 length: 9)
Method name:"toString" public static Signature: 55=(double)java.lang.String
Attribute "Code", length:48, max_stack:3, max_locals:2, code_length:6
0: dload_0
1: iconst_0
2: invokestatic #105=<Method java.lang.Double.toString (double,boolean)java.lang.String>
5: areturn
Attribute "LineNumberTable", length:6, count: 1
line: 412 at pc: 0
Attribute "LocalVariableTable", length:12, count: 1
slot#0: name: 70=d, type: 8=double (pc: 0 length: 6)
Method name:"toString" static native Signature: 103=(double,boolean)java.lang.String
Method name:"doubleToLongBits" public static native Signature: 61=(double)long
Method name:"doubleToRawLongBits" public static native Signature: 61=(double)long
Method name:"longBitsToDouble" public static native Signature: 108=(long)double
Method name:"parseDouble" public static native Signature: 45=(java.lang.String)double
Attribute "Exceptions", length:4, count: 1
0: #52=<Class java.lang.NumberFormatException>
Method name:"initIDs" private static native Signature: 34=()void
Method name:"<clinit>" static Signature: 34=()void
Attribute "Code", length:33, max_stack:1, max_locals:0, code_length:9
0: bipush 68
2: invokestatic #116=<Method java.lang.VMClassLoader.getPrimitiveClass (char)java.lang.Class>
5: putstatic #118=<Field java.lang.Double.TYPE java.lang.Class>
8: return
Attribute "LineNumberTable", length:6, count: 1
line: 83 at pc: 0
Attributes (count: 1):
Attribute "SourceFile", length:2, #120="Double.java"
More information about the Java
mailing list