[pypy-commit] pypy jit-short_from_state: make sure loop starts and ends with the same debug_merge_point

hakanardo noreply at buildbot.pypy.org
Sat May 21 16:03:06 CEST 2011


Author: Hakan Ardo <hakan at debian.org>
Branch: jit-short_from_state
Changeset: r44350:4e2e1cebeead
Date: 2011-05-21 14:08 +0200
http://bitbucket.org/pypy/pypy/changeset/4e2e1cebeead/

Log:	make sure loop starts and ends with the same debug_merge_point

diff --git a/pypy/jit/metainterp/pyjitpl.py b/pypy/jit/metainterp/pyjitpl.py
--- a/pypy/jit/metainterp/pyjitpl.py
+++ b/pypy/jit/metainterp/pyjitpl.py
@@ -1951,7 +1951,10 @@
         self.history.inputargs = original_boxes[num_green_args:]
         greenkey = original_boxes[:num_green_args]
         self.history.record(rop.JUMP, live_arg_boxes[num_green_args:], None)
-        loop_token = compile.compile_new_loop(self, [], greenkey, start,
+
+        assert start > 0
+        assert self.history.operations[start-1].getopnum() == rop.DEBUG_MERGE_POINT
+        loop_token = compile.compile_new_loop(self, [], greenkey, start-1,
                                               start_resumedescr, False)
         self.history.operations.pop()     # remove the JUMP
         if loop_token is None:


More information about the pypy-commit mailing list