[pypy-commit] pypy default: there is also 32bit world, forgot
fijal
noreply at buildbot.pypy.org
Sun Mar 18 11:08:02 CET 2012
Author: Maciej Fijalkowski <fijall at gmail.com>
Branch:
Changeset: r53785:ba43e6d573ff
Date: 2012-03-18 12:07 +0200
http://bitbucket.org/pypy/pypy/changeset/ba43e6d573ff/
Log: there is also 32bit world, forgot
diff --git a/pypy/rlib/rarithmetic.py b/pypy/rlib/rarithmetic.py
--- a/pypy/rlib/rarithmetic.py
+++ b/pypy/rlib/rarithmetic.py
@@ -585,12 +585,15 @@
a, b = arg & 0xFF, arg & 0xFF00
res = (a << 8) | (b >> 8)
elif rffi.sizeof(T) == 4:
- a, b, c, d = arg & 0xFF, arg & 0xFF00, arg & 0xFF0000, arg & 0xFF000000
+ a, b, c, d = arg & 0xFF, arg & 0xFF00, arg & 0xFF0000, arg & r_uint(0xFF000000)
res = (a << 24) | (b << 8) | (c >> 8) | (d >> 24)
elif rffi.sizeof(T) == 8:
- a, b, c, d = arg & 0xFF, arg & 0xFF00, arg & 0xFF0000, arg & 0xFF000000
- e, f, g, h = (arg & (0xFF << 32), arg & (0xFF << 40),
- arg & (0xFF << 48), arg & (r_uint(0xFF) << 56))
+ a, b, c, d = (arg & 0xFF, arg & 0xFF00, arg & 0xFF0000,
+ arg & r_uint(0xFF000000))
+ e, f, g, h = (arg & (r_ulonglong(0xFF) << 32),
+ arg & (r_ulonglong(0xFF) << 40),
+ arg & (r_ulonglong(0xFF) << 48),
+ arg & (r_ulonglong(0xFF) << 56))
res = ((a << 56) | (b << 40) | (c << 24) | (d << 8) | (e >> 8) |
(f >> 24) | (g >> 40) | (h >> 56))
else:
More information about the pypy-commit
mailing list