Author: Matti Picus <[email protected]>
Branch: missing-ndarray-attributes
Changeset: r60851:530f3bab420e
Date: 2013-02-04 00:35 +0200
http://bitbucket.org/pypy/pypy/changeset/530f3bab420e/

Log:    argsort for Float16, but rely on lexical identity of float16 and
        signed short

diff --git a/pypy/module/micronumpy/test/test_numarray.py 
b/pypy/module/micronumpy/test/test_numarray.py
--- a/pypy/module/micronumpy/test/test_numarray.py
+++ b/pypy/module/micronumpy/test/test_numarray.py
@@ -1688,7 +1688,7 @@
         assert s1[39:31:-1] == s2[32:40]
         assert s1[:39:-1] == s2[40:]
 
-        a = array([1, -1, 10000], dtype='float16')
+        a = array([3.14, -1.5, 10000], dtype='float16')
         s1 = map(ord,a.tostring())
         s2 = map(ord, a.byteswap().tostring())
         s3 = [s1[1], s1[0],s1[3], s1[2], s1[5], s1[4]]
diff --git a/pypy/module/micronumpy/types.py b/pypy/module/micronumpy/types.py
--- a/pypy/module/micronumpy/types.py
+++ b/pypy/module/micronumpy/types.py
@@ -959,12 +959,13 @@
 
     _attrs_ = ()
     _STORAGE_T = rffi.USHORT
-    T = rffi.DOUBLE
+    T = rffi.SHORT
 
     BoxType = interp_boxes.W_Float16Box
 
-    def get_element_size(self):
-        return rffi.sizeof(self._STORAGE_T)
+    @specialize.argtype(1)
+    def box(self, value):
+        return self.BoxType(rffi.cast(rffi.DOUBLE, value))
 
     def runpack_str(self, s):
         assert len(s) == 2
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to