Author: Maciej Fijalkowski <fij...@gmail.com>
Branch: share-guard-info
Changeset: r79763:1f99b59fd373
Date: 2015-09-22 13:01 +0200
http://bitbucket.org/pypy/pypy/changeset/1f99b59fd373/

Log:    no sharing across guard_exception

diff --git a/rpython/jit/metainterp/optimizeopt/optimizer.py 
b/rpython/jit/metainterp/optimizeopt/optimizer.py
--- a/rpython/jit/metainterp/optimizeopt/optimizer.py
+++ b/rpython/jit/metainterp/optimizeopt/optimizer.py
@@ -603,12 +603,13 @@
                                              self._last_guard_op)
         else:
             op = self.store_final_boxes_in_guard(guard_op, pendingfields)
-            if op.getopnum() != rop.GUARD_EXCEPTION:
-                self._last_guard_op = op
+            self._last_guard_op = op
             # for unrolling
             for farg in op.getfailargs():
                 if farg:
                     self.force_box(farg)
+        if op.getopnum() == rop.GUARD_EXCEPTION:
+            self._last_guard_op = None
         return op
 
 
_______________________________________________
pypy-commit mailing list
pypy-commit@python.org
https://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to