Author: Hakan Ardo <ha...@debian.org>
Branch: jit-targets
Changeset: r48902:0a92fe884bc3
Date: 2011-11-07 19:02 +0100
http://bitbucket.org/pypy/pypy/changeset/0a92fe884bc3/

Log:    abort unsupported case

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
@@ -527,6 +527,7 @@
         retraced_count = cell_token.retraced_count
         limit = 
self.optimizer.metainterp_sd.warmrunnerdesc.memory_manager.retrace_limit
         if retraced_count<limit:
+            debug_print('Retracing (%d/%d)', retraced_count, limit)
             cell_token.retraced_count += 1
             return False
 
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
@@ -1959,7 +1959,8 @@
                 # Found!  Compile it as a loop.
                 # raises in case it works -- which is the common case
                 if self.partial_trace:
-                    assert start == self.retracing_from # FIXME: Giveup
+                    if  start != self.retracing_from: 
+                        raise SwitchToBlackhole(ABORT_BAD_LOOP) # For now
                 self.compile_loop(original_boxes, live_arg_boxes, start, 
resumedescr)
                 # creation of the loop was cancelled!
                 self.staticdata.log('cancelled, tracing more...')
_______________________________________________
pypy-commit mailing list
pypy-commit@python.org
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to