Author: Alex Gaynor <[email protected]>
Branch: kill-someobject
Changeset: r57836:d2c5a48866bd
Date: 2012-10-07 19:33 +0200
http://bitbucket.org/pypy/pypy/changeset/d2c5a48866bd/
Log: Remove a bunch of PyObject stuff from the GCs
diff --git a/pypy/rpython/memory/gcwrapper.py b/pypy/rpython/memory/gcwrapper.py
--- a/pypy/rpython/memory/gcwrapper.py
+++ b/pypy/rpython/memory/gcwrapper.py
@@ -5,6 +5,7 @@
from pypy.rpython.memory import gctypelayout
from pypy.objspace.flow.model import Constant
+
class GCManagedHeap(object):
def __init__(self, llinterp, flowgraphs, gc_class, GC_PARAMS={}):
@@ -152,9 +153,6 @@
else:
return True
- def pyobjectptr(self, klass):
- raise NotImplementedError(klass)
-
# ____________________________________________________________
class LLInterpRootWalker:
@@ -193,8 +191,7 @@
super(DirectRunLayoutBuilder, self).__init__(GCClass, lltype2vtable)
def make_finalizer_funcptr_for_type(self, TYPE):
- from pypy.rpython.memory.gctransform.support import get_rtti, \
- type_contains_pyobjs
+ from pypy.rpython.memory.gctransform.support import get_rtti
rtti = get_rtti(TYPE)
if rtti is not None and hasattr(rtti._obj, 'destructor_funcptr'):
destrptr = rtti._obj.destructor_funcptr
@@ -203,7 +200,6 @@
else:
return None, False
- assert not type_contains_pyobjs(TYPE), "not implemented"
t = self.llinterp.typer.annotator.translator
light = not FinalizerAnalyzer(t).analyze_light_finalizer(destrgraph)
def ll_finalizer(addr, dummy):
@@ -218,8 +214,7 @@
return llhelper(gctypelayout.GCData.FINALIZER_OR_CT, ll_finalizer),
light
def make_custom_trace_funcptr_for_type(self, TYPE):
- from pypy.rpython.memory.gctransform.support import get_rtti, \
- type_contains_pyobjs
+ from pypy.rpython.memory.gctransform.support import get_rtti
rtti = get_rtti(TYPE)
if rtti is not None and hasattr(rtti._obj, 'custom_trace_funcptr'):
return rtti._obj.custom_trace_funcptr
diff --git a/pypy/rpython/memory/lltypelayout.py
b/pypy/rpython/memory/lltypelayout.py
--- a/pypy/rpython/memory/lltypelayout.py
+++ b/pypy/rpython/memory/lltypelayout.py
@@ -47,8 +47,6 @@
return "i"
elif isinstance(TYPE, lltype.FuncType):
return "i"
- elif isinstance(TYPE, lltype.PyObjectType):
- return "i"
else:
assert 0, "type %s not yet implemented" % (TYPE, )
@@ -71,8 +69,6 @@
return get_fixed_size(lltype.Unsigned)
elif isinstance(TYPE, lltype.FuncType):
return get_fixed_size(lltype.Unsigned)
- elif isinstance(TYPE, lltype.PyObjectType):
- return get_fixed_size(lltype.Unsigned)
assert 0, "not yet implemented"
def get_variable_size(TYPE):
@@ -89,8 +85,6 @@
return 0
elif isinstance(TYPE, lltype.FuncType):
return 0
- elif isinstance(TYPE, lltype.PyObjectType):
- return 0
elif isinstance(TYPE, lltype.Ptr):
return 0
else:
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit