Author: Armin Rigo <[email protected]>
Branch: 
Changeset: r68595:5ca199444bb9
Date: 2014-01-10 17:12 +0100
http://bitbucket.org/pypy/pypy/changeset/5ca199444bb9/

Log:    Issue1669: fix. No clue about how to write a test; only checking
        that the original issue is fixed.

diff --git a/rpython/jit/metainterp/heapcache.py 
b/rpython/jit/metainterp/heapcache.py
--- a/rpython/jit/metainterp/heapcache.py
+++ b/rpython/jit/metainterp/heapcache.py
@@ -159,17 +159,17 @@
                                 descr,
                             )
                         elif cache is not None:
-                            if argboxes[2] in self.new_boxes:
-                                try:
-                                    idx_cache = cache[dststart + i]
-                                except KeyError:
-                                    pass
-                                else:
+                            try:
+                                idx_cache = cache[dststart + i]
+                            except KeyError:
+                                pass
+                            else:
+                                if argboxes[2] in self.new_boxes:
                                     for frombox in idx_cache.keys():
                                         if not self.is_unescaped(frombox):
                                             del idx_cache[frombox]
-                            else:
-                                cache[dststart + i].clear()
+                                else:
+                                    idx_cache.clear()
                     return
                 elif (
                     argboxes[2] in self.new_boxes and
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to