diff options
Diffstat (limited to 'libjava/testsuite/libjava.lang/PR31264.java')
-rw-r--r-- | libjava/testsuite/libjava.lang/PR31264.java | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/libjava/testsuite/libjava.lang/PR31264.java b/libjava/testsuite/libjava.lang/PR31264.java new file mode 100644 index 000000000..5c0e85f01 --- /dev/null +++ b/libjava/testsuite/libjava.lang/PR31264.java @@ -0,0 +1,28 @@ +/* + * Javolution - Java(TM) Solution for Real-Time and Embedded Systems + * Copyright (C) 2006 - Javolution (http://javolution.org/) + * All rights reserved. + * + * Permission to use, copy, modify, and distribute this software is + * freely granted, provided that this notice is preserved. + */ + +public final class PR31264 +{ + public static long fubar(double d, int n) + { + long bits = Double.doubleToRawLongBits(d); + int exp = ((int)(bits >> 52)) & 0x7FF; + long m = bits & 0x000fffffffffffffL; + if (exp == 0) + { + if (m == 0) return 0L; + return fubar(d * 18014398509481984L, n - 54); // 2^54 Exact. + } + return m; + } + + public static void main(String[] argv) + { + } +} |