[pypy-svn] r72857 - in pypy/branch/kill-asm-call/pypy/jit/backend/llsupport: . test
fijal at codespeak.net
fijal at codespeak.net
Thu Mar 25 22:38:04 CET 2010
Author: fijal
Date: Thu Mar 25 22:38:02 2010
New Revision: 72857
Modified:
pypy/branch/kill-asm-call/pypy/jit/backend/llsupport/gc.py
pypy/branch/kill-asm-call/pypy/jit/backend/llsupport/llmodel.py
pypy/branch/kill-asm-call/pypy/jit/backend/llsupport/test/test_gc.py
Log:
Pass around rtyper as well
Modified: pypy/branch/kill-asm-call/pypy/jit/backend/llsupport/gc.py
==============================================================================
--- pypy/branch/kill-asm-call/pypy/jit/backend/llsupport/gc.py (original)
+++ pypy/branch/kill-asm-call/pypy/jit/backend/llsupport/gc.py Thu Mar 25 22:38:02 2010
@@ -19,8 +19,8 @@
# ____________________________________________________________
class GcLLDescription(GcCache):
- def __init__(self, gcdescr, translator=None):
- GcCache.__init__(self, translator is not None)
+ def __init__(self, gcdescr, translator=None, rtyper=None):
+ GcCache.__init__(self, translator is not None, rtyper)
self.gcdescr = gcdescr
def _freeze_(self):
return True
@@ -41,8 +41,8 @@
moving_gc = False
gcrootmap = None
- def __init__(self, gcdescr, translator):
- GcLLDescription.__init__(self, gcdescr, translator)
+ def __init__(self, gcdescr, translator, rtyper):
+ GcLLDescription.__init__(self, gcdescr, translator, rtyper)
# grab a pointer to the Boehm 'malloc' function
from pypy.rpython.tool import rffi_platform
compilation_info = rffi_platform.configure_boehm()
@@ -327,11 +327,11 @@
class GcLLDescr_framework(GcLLDescription):
DEBUG = False # forced to True by x86/test/test_zrpy_gc.py
- def __init__(self, gcdescr, translator, llop1=llop):
+ def __init__(self, gcdescr, translator, rtyper, llop1=llop):
from pypy.rpython.memory.gctypelayout import _check_typeid
from pypy.rpython.memory.gcheader import GCHeaderBuilder
from pypy.rpython.memory.gctransform import framework
- GcLLDescription.__init__(self, gcdescr, translator)
+ GcLLDescription.__init__(self, gcdescr, translator, rtyper)
assert self.translate_support_code, "required with the framework GC"
self.translator = translator
self.llop1 = llop1
@@ -611,7 +611,7 @@
# ____________________________________________________________
-def get_ll_description(gcdescr, translator=None):
+def get_ll_description(gcdescr, translator=None, rtyper=None):
# translator is None if translate_support_code is False.
if gcdescr is not None:
name = gcdescr.config.translation.gctransformer
@@ -622,4 +622,4 @@
except KeyError:
raise NotImplementedError("GC transformer %r not supported by "
"the JIT backend" % (name,))
- return cls(gcdescr, translator)
+ return cls(gcdescr, translator, rtyper)
Modified: pypy/branch/kill-asm-call/pypy/jit/backend/llsupport/llmodel.py
==============================================================================
--- pypy/branch/kill-asm-call/pypy/jit/backend/llsupport/llmodel.py (original)
+++ pypy/branch/kill-asm-call/pypy/jit/backend/llsupport/llmodel.py Thu Mar 25 22:38:02 2010
@@ -31,7 +31,7 @@
translator = rtyper.annotator.translator
else:
translator = None
- self.gc_ll_descr = get_ll_description(gcdescr, translator)
+ self.gc_ll_descr = get_ll_description(gcdescr, translator, rtyper)
if translator and translator.config.translation.gcremovetypeptr:
self.vtable_offset = None
else:
Modified: pypy/branch/kill-asm-call/pypy/jit/backend/llsupport/test/test_gc.py
==============================================================================
--- pypy/branch/kill-asm-call/pypy/jit/backend/llsupport/test/test_gc.py (original)
+++ pypy/branch/kill-asm-call/pypy/jit/backend/llsupport/test/test_gc.py Thu Mar 25 22:38:02 2010
@@ -9,7 +9,7 @@
def test_boehm():
- gc_ll_descr = GcLLDescr_boehm(None, None)
+ gc_ll_descr = GcLLDescr_boehm(None, None, None)
#
record = []
prev_funcptr_for_new = gc_ll_descr.funcptr_for_new
@@ -167,7 +167,8 @@
gcdescr = get_description(config_)
translator = FakeTranslator()
llop1 = FakeLLOp()
- gc_ll_descr = GcLLDescr_framework(gcdescr, FakeTranslator(), llop1)
+ gc_ll_descr = GcLLDescr_framework(gcdescr, FakeTranslator(), None,
+ llop1)
gc_ll_descr.initialize()
self.llop1 = llop1
self.gc_ll_descr = gc_ll_descr
More information about the Pypy-commit
mailing list