Author: Michal Bendowski <mic...@bendowski.pl>
Branch: jvm-improvements
Changeset: r51381:79b211ffff3c
Date: 2012-01-16 21:19 +0100
http://bitbucket.org/pypy/pypy/changeset/79b211ffff3c/

Log:    Simpler implementations of float2longlong and longlong2float.

diff --git a/pypy/translator/jvm/src/pypy/PyPy.java 
b/pypy/translator/jvm/src/pypy/PyPy.java
--- a/pypy/translator/jvm/src/pypy/PyPy.java
+++ b/pypy/translator/jvm/src/pypy/PyPy.java
@@ -8,7 +8,6 @@
 import java.util.Map;
 import java.text.DecimalFormat;
 import java.lang.reflect.Array;
-import java.nio.ByteBuffer;
 
 /**
  * Class with a number of utility routines.  One instance of this is
@@ -285,17 +284,11 @@
     }
 
     public double pypy__longlong2float(long l) {
-        ByteBuffer buf = ByteBuffer.allocate(8);
-        buf.putLong(l);
-        buf.flip();
-        return buf.getDouble();
+        return Double.longBitsToDouble(l);
     }
 
     public long pypy__float2longlong(double d) {
-        ByteBuffer buf = ByteBuffer.allocate(8);
-        buf.putDouble(d);
-        buf.flip();
-        return buf.getLong();
+        return Double.doubleToRawLongBits(d);
     }
 
     public double ooparse_float(String s) {
_______________________________________________
pypy-commit mailing list
pypy-commit@python.org
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to