Author: Hakan Ardo <[email protected]>
Branch: jit-short_from_state
Changeset: r46288:1c804054e46f
Date: 2011-08-05 14:24 +0200
http://bitbucket.org/pypy/pypy/changeset/1c804054e46f/

Log:    dont derefere opaque pointers in short preamble

diff --git a/pypy/jit/metainterp/optimizeopt/heap.py 
b/pypy/jit/metainterp/optimizeopt/heap.py
--- a/pypy/jit/metainterp/optimizeopt/heap.py
+++ b/pypy/jit/metainterp/optimizeopt/heap.py
@@ -127,6 +127,8 @@
             return
         for structvalue in self._cached_fields_getfield_op.keys():
             op = self._cached_fields_getfield_op[structvalue]
+            if optimizer.getvalue(op.getarg(0)) in optimizer.opaque_pointers:
+                continue
             if op and structvalue in self._cached_fields:
                 if op.getopnum() == rop.SETFIELD_GC:
                     result = op.getarg(1)
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to