Author: Alex Gaynor <alex.gay...@gmail.com>
Branch: kill-someobject
Changeset: r57861:5881a4cad188
Date: 2012-10-07 20:41 +0200
http://bitbucket.org/pypy/pypy/changeset/5881a4cad188/

Log:    remove some references to cpy, the old allocation flavor for
        PyObject

diff --git a/pypy/rpython/memory/gctransform/refcounting.py 
b/pypy/rpython/memory/gctransform/refcounting.py
--- a/pypy/rpython/memory/gctransform/refcounting.py
+++ b/pypy/rpython/memory/gctransform/refcounting.py
@@ -201,9 +201,7 @@
             return self.static_deallocator_funcptrs[TYPE]
         #print_call_chain(self)
 
-        if TYPE._gckind == 'cpy':
-            return # you don't really have an RPython deallocator for PyObjects
-        rtti = get_rtti(TYPE) 
+        rtti = get_rtti(TYPE)
         if rtti is not None and hasattr(rtti._obj, 'destructor_funcptr'):
             destrptr = rtti._obj.destructor_funcptr
             DESTR_ARG = lltype.typeOf(destrptr).TO.ARGS[0]
@@ -266,7 +264,6 @@
         return fptr
 
     def dynamic_deallocation_funcptr_for_type(self, TYPE):
-        assert TYPE._gckind != 'cpy'
         if TYPE in self.dynamic_deallocator_funcptrs:
             return self.dynamic_deallocator_funcptrs[TYPE]
         #print_call_chain(self)
diff --git a/pypy/rpython/memory/gctransform/transform.py 
b/pypy/rpython/memory/gctransform/transform.py
--- a/pypy/rpython/memory/gctransform/transform.py
+++ b/pypy/rpython/memory/gctransform/transform.py
@@ -505,7 +505,6 @@
         if add_flags:
             flags.update(add_flags)
         flavor = flags['flavor']
-        assert flavor != 'cpy', "cannot malloc CPython objects directly"
         meth = getattr(self, 'gct_fv_%s_malloc_varsize' % flavor, None)
         assert meth, "%s has no support for malloc_varsize with flavor %r" % 
(self, flavor) 
         return self.varsize_malloc_helper(hop, flags, meth, [])
@@ -583,7 +582,6 @@
         flags = op.args[1].value
         flavor = flags['flavor']
         v = op.args[0]
-        assert flavor != 'cpy', "cannot free CPython objects directly"
         if flavor == 'raw':
             v = hop.genop("cast_ptr_to_adr", [v], resulttype=llmemory.Address)
             if flags.get('track_allocation', True):
diff --git a/pypy/rpython/rmodel.py b/pypy/rpython/rmodel.py
--- a/pypy/rpython/rmodel.py
+++ b/pypy/rpython/rmodel.py
@@ -172,16 +172,15 @@
             isinstance(T.TO, (lltype.Struct,
                               lltype.Array,
                               lltype.ForwardReference))):
-            assert T.TO._gckind != 'cpy'
             return DummyValueBuilder(rtyper, T.TO)
         else:
             return None
 
     def rtype_bltn_list(self, hop):
-        raise TyperError, 'no list() support for %r' % self
+        raise TyperError('no list() support for %r' % self)
 
     def rtype_unichr(self, hop):
-        raise TyperError, 'no unichr() support for %r' % self
+        raise TyperError('no unichr() support for %r' % self)
 
     # default implementation of some operations
 
_______________________________________________
pypy-commit mailing list
pypy-commit@python.org
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to