Author: Maciej Fijalkowski <fij...@gmail.com>
Branch: kill-someobject
Changeset: r58014:875dd99dd21d
Date: 2012-10-11 20:13 +0200
http://bitbucket.org/pypy/pypy/changeset/875dd99dd21d/

Log:    merge

diff --git a/pypy/rpython/llinterp.py b/pypy/rpython/llinterp.py
--- a/pypy/rpython/llinterp.py
+++ b/pypy/rpython/llinterp.py
@@ -496,7 +496,7 @@
             vars.append(op.result)
 
         for v in vars:
-            TYPE = getattr(v, 'concretetype', None)
+            TYPE = v.concretetype
             if isinstance(TYPE, lltype.Ptr) and TYPE.TO._gckind == 'gc':
                 roots.append(_address_of_local_var(self, v))
 
diff --git a/pypy/translator/backendopt/support.py 
b/pypy/translator/backendopt/support.py
--- a/pypy/translator/backendopt/support.py
+++ b/pypy/translator/backendopt/support.py
@@ -32,12 +32,8 @@
     return c
 
 def var_needsgc(var):
-    if hasattr(var, 'concretetype'):
-        vartype = var.concretetype
-        return isinstance(vartype, lltype.Ptr) and vartype._needsgc()
-    else:
-        # assume PyObjPtr
-        return True
+    vartype = var.concretetype
+    return isinstance(vartype, lltype.Ptr) and vartype._needsgc()
 
 def find_calls_from(translator, graph, memo=None):
     if memo and graph in memo:
diff --git a/pypy/translator/c/gc.py b/pypy/translator/c/gc.py
--- a/pypy/translator/c/gc.py
+++ b/pypy/translator/c/gc.py
@@ -64,16 +64,6 @@
     def rtti_type(self):
         return ''
 
-    def OP_GC_PUSH_ALIVE_PYOBJ(self, funcgen, op):
-        expr = funcgen.expr(op.args[0])
-        if expr == 'NULL':
-            return ''
-        return 'Py_XINCREF(%s);' % expr
-
-    def OP_GC_POP_ALIVE_PYOBJ(self, funcgen, op):
-        expr = funcgen.expr(op.args[0])
-        return 'Py_XDECREF(%s);' % expr
-
     def OP_GC_SET_MAX_HEAP_SIZE(self, funcgen, op):
         return ''
 
_______________________________________________
pypy-commit mailing list
pypy-commit@python.org
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to