[pypy-svn] r76983 - pypy/branch/jit-generator/pypy/jit/metainterp

arigo at codespeak.net arigo at codespeak.net
Thu Sep 9 19:36:29 CEST 2010


Author: arigo
Date: Thu Sep  9 19:36:27 2010
New Revision: 76983

Modified:
   pypy/branch/jit-generator/pypy/jit/metainterp/warmspot.py
Log:
I *think* that there is no point in calling _maybe_enter_from_start()
at any point after the initial entry.


Modified: pypy/branch/jit-generator/pypy/jit/metainterp/warmspot.py
==============================================================================
--- pypy/branch/jit-generator/pypy/jit/metainterp/warmspot.py	(original)
+++ pypy/branch/jit-generator/pypy/jit/metainterp/warmspot.py	Thu Sep  9 19:36:27 2010
@@ -584,9 +584,11 @@
         ts = self.cpu.ts
 
         def ll_portal_runner(*args):
+            start = True
             while 1:
                 try:
-                    jd._maybe_enter_from_start_fn(*args)
+                    if start:
+                        jd._maybe_enter_from_start_fn(*args)
                     return support.maybe_on_top_of_llinterp(rtyper,
                                                       portal_ptr)(*args)
                 except self.ContinueRunningNormally, e:
@@ -595,6 +597,8 @@
                         x = getattr(e, attrname)[count]
                         x = specialize_value(ARGTYPE, x)
                         args = args + (x,)
+                    start = False
+                    continue
                 except self.DoneWithThisFrameVoid:
                     assert result_kind == 'void'
                     return



More information about the Pypy-commit mailing list