Author: Maciej Fijalkowski <[email protected]>
Branch: jitframe-on-heap
Changeset: r60139:02e616816493
Date: 2013-01-17 19:46 +0200
http://bitbucket.org/pypy/pypy/changeset/02e616816493/

Log:    fix fix fix

diff --git a/pypy/jit/metainterp/compile.py b/pypy/jit/metainterp/compile.py
--- a/pypy/jit/metainterp/compile.py
+++ b/pypy/jit/metainterp/compile.py
@@ -309,7 +309,7 @@
 
 def do_compile_bridge(metainterp_sd, faildescr, inputargs, operations,
                       original_loop_token, log=True):
-    metainterp_sd.logger_ops.log_bridge(inputargs, operations, -2)
+    metainterp_sd.logger_ops.log_bridge(inputargs, operations, "compiling")
     return metainterp_sd.cpu.compile_bridge(faildescr, inputargs, operations,
                                             original_loop_token, log=log)
 
@@ -402,7 +402,7 @@
         ops_offset = asminfo.ops_offset
     else:
         ops_offset = None
-    metainterp_sd.logger_ops.log_bridge(inputargs, operations, faildescr,
+    metainterp_sd.logger_ops.log_bridge(inputargs, operations, None, faildescr,
                                         ops_offset)
     #
     #if metainterp_sd.warmrunnerdesc is not None:    # for tests
diff --git a/pypy/jit/metainterp/logger.py b/pypy/jit/metainterp/logger.py
--- a/pypy/jit/metainterp/logger.py
+++ b/pypy/jit/metainterp/logger.py
@@ -30,20 +30,19 @@
             debug_stop("jit-log-opt-loop")
         return logops
 
-    def log_bridge(self, inputargs, operations, descr=None, ops_offset=None):
-        # XXX great idea to pass number = -1 or -2 to mean stuff
-        return
-        if number == -1:
+    def log_bridge(self, inputargs, operations, extra=None,
+                   descr=None, ops_offset=None):
+        if extra == "noopt":
             debug_start("jit-log-noopt-bridge")
             logops = self._log_operations(inputargs, operations, ops_offset)
             debug_stop("jit-log-noopt-bridge")
-        elif number == -2:
+        elif extra == "compiling":
             debug_start("jit-log-compiling-bridge")
             logops = self._log_operations(inputargs, operations, ops_offset)
             debug_stop("jit-log-compiling-bridge")
         else:
             debug_start("jit-log-opt-bridge")
-            debug_print("# bridge out of Guard", number,
+            debug_print("# bridge out of Guard", compute_unique_id(descr),
                         "with", len(operations), "ops")
             logops = self._log_operations(inputargs, operations, ops_offset)
             debug_stop("jit-log-opt-bridge")
diff --git a/pypy/jit/metainterp/test/test_logger.py 
b/pypy/jit/metainterp/test/test_logger.py
--- a/pypy/jit/metainterp/test/test_logger.py
+++ b/pypy/jit/metainterp/test/test_logger.py
@@ -1,16 +1,17 @@
-import sys
+
+import re
 from pypy.rlib import debug
 from pypy.jit.tool.oparser import pure_parse
 from pypy.jit.metainterp import logger
 from pypy.jit.metainterp.typesystem import llhelper
 from StringIO import StringIO
 from pypy.jit.metainterp.optimizeopt.util import equaloplists
-from pypy.jit.metainterp.history import AbstractDescr, JitCellToken, 
BasicFailDescr
+from pypy.jit.metainterp.history import AbstractDescr, JitCellToken, 
BasicFailDescr, BasicFinalDescr
 from pypy.jit.backend.model import AbstractCPU
 
 
 class Descr(AbstractDescr):
-    pass
+    final_descr = False
 
 def capturing(func, *args, **kwds):
     log_stream = StringIO()
@@ -108,9 +109,10 @@
         inp = '''
         []
         guard_not_invalidated(descr=descr) []
-        finish()
+        finish(descr=finaldescr)
         '''
-        loop = pure_parse(inp, namespace={'descr': Descr()})
+        loop = pure_parse(inp, namespace={'descr': Descr(),
+                                          'finaldescr': BasicFinalDescr()})
         logger = Logger(self.make_metainterp_sd())
         output = logger.log_loop(loop, {'descr': Descr()})
         assert 'guard_not_invalidated(descr=' in output
@@ -164,7 +166,7 @@
         loop = pure_parse(inp, namespace=namespace)
         logger = Logger(self.make_metainterp_sd(), guard_number=True)
         output = logger.log_loop(loop)
-        assert output.splitlines()[-1] == "guard_true(i0, descr=<Guard0>) [i0]"
+        assert re.match("guard_true\(i0, descr=<Guard\d+>\) \[i0\]", 
output.splitlines()[-1])
         pure_parse(output)
 
         logger = Logger(self.make_metainterp_sd(), guard_number=False)
@@ -198,7 +200,8 @@
     def test_intro_bridge(self):
         bare_logger = logger.Logger(self.make_metainterp_sd())
         output = capturing(bare_logger.log_bridge, [], [], 3)
-        assert output.splitlines()[0] == "# bridge out of Guard 3 with 0 ops"
+        assert re.match("# bridge out of Guard \d+ with 0 ops",
+                        output.splitlines()[0])
         pure_parse(output)
 
     def test_repr_single_op(self):
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to