[pypy-commit] pypy jit-targets: fallback to preamble if inlining short preamble fails

hakanardo noreply at buildbot.pypy.org
Tue Nov 8 10:27:00 CET 2011


Author: Hakan Ardo <hakan at debian.org>
Branch: jit-targets
Changeset: r48901:ac810b69b113
Date: 2011-11-07 18:36 +0100
http://bitbucket.org/pypy/pypy/changeset/ac810b69b113/

Log:	fallback to preamble if inlining short preamble fails

diff --git a/pypy/jit/metainterp/optimizeopt/unroll.py b/pypy/jit/metainterp/optimizeopt/unroll.py
--- a/pypy/jit/metainterp/optimizeopt/unroll.py
+++ b/pypy/jit/metainterp/optimizeopt/unroll.py
@@ -518,8 +518,9 @@
                 except InvalidLoop:
                     debug_print("Inlining failed unexpectedly",
                                 "jumping to preamble instead")
-                    assert False, "FIXME: Construct jump op"
-                    self.optimizer.send_extra_operation(op)
+                    assert cell_token.target_tokens[0].virtual_state is None
+                    jumpop.setdescr(cell_token.target_tokens[0])
+                    self.optimizer.send_extra_operation(jumpop)
                 return True
         debug_stop('jit-log-virtualstate')
 


More information about the pypy-commit mailing list