[pypy-commit] pypy unsigned-dtypes: Add UInt64 dtype and make some fixes on the others

justinpeel noreply at buildbot.pypy.org
Thu Sep 1 06:52:44 CEST 2011


Author: Justin Peel <notmuchtotell at gmail.com>
Branch: unsigned-dtypes
Changeset: r46973:11460491de24
Date: 2011-08-31 22:52 -0600
http://bitbucket.org/pypy/pypy/changeset/11460491de24/

Log:	Add UInt64 dtype and make some fixes on the others

diff --git a/pypy/module/micronumpy/interp_dtype.py b/pypy/module/micronumpy/interp_dtype.py
--- a/pypy/module/micronumpy/interp_dtype.py
+++ b/pypy/module/micronumpy/interp_dtype.py
@@ -293,7 +293,7 @@
     pass
 
 W_UInt8Dtype = create_low_level_dtype(
-    num = 1, kind = SIGNEDLTR, name = "uint8",
+    num = 2, kind = UNSIGNEDLTR, name = "uint8",
     aliases = ["uint8"],
     applevel_types = [],
     T = rffi.UCHAR,
@@ -315,7 +315,7 @@
     pass
 
 W_UInt16Dtype = create_low_level_dtype(
-    num = 3, kind = SIGNEDLTR, name = "uint16",
+    num = 4, kind = UNSIGNEDLTR, name = "uint16",
     aliases = ["uint16"],
     applevel_types = [],
     T = rffi.USHORT,
@@ -358,6 +358,19 @@
 class W_Int64Dtype(IntegerArithmeticDtype, W_Int64Dtype):
     pass
 
+W_UInt64Dtype = create_low_level_dtype(
+    num = 10, kind = UNSIGNEDLTR, name = "uint64",
+    aliases = [],
+    applevel_types = [],
+    T = rffi.ULONGLONG,
+    valtype = rffi.ULONGLONG._type,
+    expected_size = 8,
+)
+class W_UInt64Dtype(IntegerArithmeticDtype, W_UInt64Dtype):
+    pass
+
+
+
 W_Float64Dtype = create_low_level_dtype(
     num = 12, kind = FLOATINGLTR, name = "float64",
     aliases = [],
@@ -375,8 +388,8 @@
 
 ALL_DTYPES = [
     W_BoolDtype,
-    W_Int8Dtype, W_Int16Dtype, W_Int32Dtype, W_UInt32Dtype,
-    W_Int64Dtype,
+    W_Int8Dtype, W_UInt8Dtype, W_Int16Dtype, W_UInt16Dtype,
+    W_Int32Dtype, W_UInt32Dtype, W_Int64Dtype, W_UInt64Dtype,
     W_Float64Dtype
 ]
 


More information about the pypy-commit mailing list