[pypy-commit] pypy default: Fix: allow other types too, e.g. an AddressAsInt instance.

arigo noreply at buildbot.pypy.org
Mon Sep 9 19:13:41 CEST 2013


Author: Armin Rigo <arigo at tunes.org>
Branch: 
Changeset: r66869:6aade584984f
Date: 2013-09-09 19:13 +0200
http://bitbucket.org/pypy/pypy/changeset/6aade584984f/

Log:	Fix: allow other types too, e.g. an AddressAsInt instance.

diff --git a/rpython/rtyper/lltypesystem/opimpl.py b/rpython/rtyper/lltypesystem/opimpl.py
--- a/rpython/rtyper/lltypesystem/opimpl.py
+++ b/rpython/rtyper/lltypesystem/opimpl.py
@@ -663,9 +663,7 @@
 def op_raw_store(p, ofs, newvalue):
     from rpython.rtyper.lltypesystem import rffi
     TP = lltype.typeOf(p)
-    if TP != llmemory.Address:
-        assert TP == llmemory.GCREF
-        p = rffi.cast(llmemory.Address, p)
+    p = rffi.cast(llmemory.Address, p)
     TVAL = lltype.typeOf(newvalue)
     p = rffi.cast(rffi.CArrayPtr(TVAL), p + ofs)
     p[0] = newvalue
@@ -673,9 +671,7 @@
 def op_raw_load(TVAL, p, ofs):
     from rpython.rtyper.lltypesystem import rffi
     TP = lltype.typeOf(p)
-    if TP != llmemory.Address:
-        assert TP == llmemory.GCREF
-        p = rffi.cast(llmemory.Address, p)
+    p = rffi.cast(llmemory.Address, p)
     p = rffi.cast(rffi.CArrayPtr(TVAL), p + ofs)
     return p[0]
 op_raw_load.need_result_type = True


More information about the pypy-commit mailing list