Author: Hakan Ardo <ha...@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')
 
_______________________________________________
pypy-commit mailing list
pypy-commit@python.org
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to