Author: Maciej Fijalkowski <fij...@gmail.com> Branch: share-guard-info Changeset: r79642:c06257c68c32 Date: 2015-09-15 09:16 +0200 http://bitbucket.org/pypy/pypy/changeset/c06257c68c32/
Log: share up to 5 guards 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 @@ -573,13 +573,15 @@ return else: guard_op = self.replace_op_with(op, op.getopnum()) - if self._last_guard_op: + if self._last_guard_op and self._last_guard_count < 5: op = self._copy_resume_data_from(guard_op, self._last_guard_op) + self._last_guard_count += 1 else: op = self.store_final_boxes_in_guard(guard_op, pendingfields) self._last_guard_op = op + self._last_guard_count = 0 # for unrolling for farg in op.getfailargs(): if farg: _______________________________________________ pypy-commit mailing list pypy-commit@python.org https://mail.python.org/mailman/listinfo/pypy-commit