47 |
* Signature: (D)J |
* Signature: (D)J |
48 |
*/ |
*/ |
49 |
JNIEXPORT jlong JNICALL |
JNIEXPORT jlong JNICALL |
50 |
Java_java_lang_VMDouble_doubleToLongBits |
Java_java_lang_VMDouble_doubleToLongBits |
51 |
(JNIEnv *env __attribute__((__unused__)), |
(JNIEnv * env __attribute__ ((__unused__)), |
52 |
jclass cls __attribute__((__unused__)), |
jclass cls __attribute__ ((__unused__)), jdouble doubleValue) |
|
jdouble doubleValue) |
|
53 |
{ |
{ |
54 |
jvalue val; |
jvalue val; |
55 |
jlong e, f; |
jlong e, f; |
56 |
val.d = doubleValue; |
val.d = doubleValue; |
57 |
|
|
58 |
e = val.j & 0x7ff0000000000000LL; |
e = val.j & 0x7ff0000000000000LL; |
59 |
f = val.j & 0x000fffffffffffffLL; |
f = val.j & 0x000fffffffffffffLL; |
60 |
|
|
61 |
if (e == 0x7ff0000000000000LL && f != 0L) |
if (e == 0x7ff0000000000000LL && f != 0L) |
62 |
val.j = 0x7ff8000000000000LL; |
val.j = 0x7ff8000000000000LL; |
63 |
|
|
70 |
* Signature: (D)J |
* Signature: (D)J |
71 |
*/ |
*/ |
72 |
JNIEXPORT jlong JNICALL |
JNIEXPORT jlong JNICALL |
73 |
Java_java_lang_VMDouble_doubleToRawLongBits |
Java_java_lang_VMDouble_doubleToRawLongBits |
74 |
(JNIEnv *env __attribute__((__unused__)), |
(JNIEnv * env __attribute__ ((__unused__)), |
75 |
jclass cls __attribute__((__unused__)), |
jclass cls __attribute__ ((__unused__)), jdouble doubleValue) |
|
jdouble doubleValue) |
|
76 |
{ |
{ |
77 |
jvalue val; |
jvalue val; |
78 |
val.d = doubleValue; |
val.d = doubleValue; |
85 |
* Signature: (J)D |
* Signature: (J)D |
86 |
*/ |
*/ |
87 |
JNIEXPORT jdouble JNICALL |
JNIEXPORT jdouble JNICALL |
88 |
Java_java_lang_VMDouble_longBitsToDouble |
Java_java_lang_VMDouble_longBitsToDouble |
89 |
(JNIEnv *env __attribute__((__unused__)), |
(JNIEnv * env __attribute__ ((__unused__)), |
90 |
jclass cls __attribute__((__unused__)), |
jclass cls __attribute__ ((__unused__)), jlong longValue) |
|
jlong longValue) |
|
91 |
{ |
{ |
92 |
jvalue val; |
jvalue val; |
93 |
val.j = longValue; |
val.j = longValue; |
94 |
return val.d; |
return val.d; |
95 |
} |
} |
|
|
|