Author: Maciej Fijalkowski <fij...@gmail.com> Branch: Changeset: r79552:b46f34f3f2a9 Date: 2015-09-08 20:10 +0200 http://bitbucket.org/pypy/pypy/changeset/b46f34f3f2a9/
Log: fix diff --git a/rpython/jit/metainterp/optimizeopt/info.py b/rpython/jit/metainterp/optimizeopt/info.py --- a/rpython/jit/metainterp/optimizeopt/info.py +++ b/rpython/jit/metainterp/optimizeopt/info.py @@ -708,6 +708,12 @@ def get_known_class(self, cpu): if not self._const.nonnull(): return None + if cpu.supports_guard_gc_type: + # we should only be called on an unknown box here from + # virtualstate.py, which is only when the cpu supports + # guard_gc_type + if not cpu.check_is_object(self._const.getref_base()): + return None return cpu.ts.cls_of_box(self._const) def same_info(self, other): diff --git a/rpython/jit/metainterp/optimizeopt/test/test_optimizeopt.py b/rpython/jit/metainterp/optimizeopt/test/test_optimizeopt.py --- a/rpython/jit/metainterp/optimizeopt/test/test_optimizeopt.py +++ b/rpython/jit/metainterp/optimizeopt/test/test_optimizeopt.py @@ -8767,6 +8767,11 @@ escape_n(ix) jump(p0) """ + ops = """ + [] + escape_n(0) + jump() + """ self.optimize_loop(ops, ops) diff --git a/rpython/jit/metainterp/optimizeopt/test/test_util.py b/rpython/jit/metainterp/optimizeopt/test/test_util.py --- a/rpython/jit/metainterp/optimizeopt/test/test_util.py +++ b/rpython/jit/metainterp/optimizeopt/test/test_util.py @@ -135,7 +135,7 @@ node2addr = lltype.cast_opaque_ptr(llmemory.GCREF, node2) myptr = lltype.cast_opaque_ptr(llmemory.GCREF, node) mynode2 = lltype.malloc(NODE) - myarray = lltype.cast_opaque_ptr(llmemory.GCREF, lltype.malloc(lltype.GcArray(lltype.Signed), 13)) + myarray = lltype.cast_opaque_ptr(llmemory.GCREF, lltype.malloc(lltype.GcArray(lltype.Signed), 13, zero=True)) mynode2.parent.typeptr = node_vtable myptr2 = lltype.cast_opaque_ptr(llmemory.GCREF, mynode2) mynode3 = lltype.malloc(NODE2) _______________________________________________ pypy-commit mailing list pypy-commit@python.org https://mail.python.org/mailman/listinfo/pypy-commit