[pypy-svn] r79194 - pypy/branch/jit-free/pypy/jit/metainterp

arigo at codespeak.net arigo at codespeak.net
Wed Nov 17 14:41:47 CET 2010


Author: arigo
Date: Wed Nov 17 14:41:45 2010
New Revision: 79194

Modified:
   pypy/branch/jit-free/pypy/jit/metainterp/compile.py
   pypy/branch/jit-free/pypy/jit/metainterp/history.py
Log:
Also record how many bridges are attached to a given LoopToken,
and print it when we free the loop and the attached bridges.


Modified: pypy/branch/jit-free/pypy/jit/metainterp/compile.py
==============================================================================
--- pypy/branch/jit-free/pypy/jit/metainterp/compile.py	(original)
+++ pypy/branch/jit-free/pypy/jit/metainterp/compile.py	Wed Nov 17 14:41:45 2010
@@ -155,6 +155,7 @@
     if not we_are_translated():
         show_loop(metainterp_sd)
         TreeLoop.check_consistency_of(inputargs, operations)
+    original_loop_token.bridges_count += 1
     metainterp_sd.profiler.start_backend()
     debug_start("jit-backend")
     try:

Modified: pypy/branch/jit-free/pypy/jit/metainterp/history.py
==============================================================================
--- pypy/branch/jit-free/pypy/jit/metainterp/history.py	(original)
+++ pypy/branch/jit-free/pypy/jit/metainterp/history.py	Wed Nov 17 14:41:45 2010
@@ -734,6 +734,7 @@
     cpu = None
     number = -1
     generation = r_longlong(0)
+    bridges_count = 0
 
     def __init__(self, cpu=None):
         self.cpu = cpu
@@ -753,7 +754,8 @@
             # loop token, which means that it has been successfully
             # compiled by the backend.  Free it now.
             debug_start("jit-free-looptoken")
-            debug_print("Freeing loop #", self.number)
+            debug_print("Freeing loop #", self.number, 'with',
+                        self.bridges_count, 'attached bridges')
             self.cpu.free_loop_and_bridges(self)
             debug_stop("jit-free-looptoken")
 



More information about the Pypy-commit mailing list