Author: Remi Meier <remi.me...@gmail.com>
Branch: stmgc-c4
Changeset: r65640:cea9abd542dc
Date: 2013-07-25 12:01 +0200
http://bitbucket.org/pypy/pypy/changeset/cea9abd542dc/

Log:    make jitviewer show rewritten trace

diff --git a/pypy/tool/jitlogparser/parser.py b/pypy/tool/jitlogparser/parser.py
--- a/pypy/tool/jitlogparser/parser.py
+++ b/pypy/tool/jitlogparser/parser.py
@@ -452,6 +452,7 @@
         mapping[loop.descr] = loop
     for line in lines:
         if line:
+            line = purge_thread_numbers(line)
             num, count = line.split(':', 2)
             mapping[num].count = int(count)
 
diff --git a/rpython/jit/backend/x86/assembler.py 
b/rpython/jit/backend/x86/assembler.py
--- a/rpython/jit/backend/x86/assembler.py
+++ b/rpython/jit/backend/x86/assembler.py
@@ -517,9 +517,9 @@
         clt.allgcrefs = []
         clt.frame_info.clear() # for now
 
-        # if log:
-        #     operations = self._inject_debugging_code(looptoken, operations,
-        #                                              'e', looptoken.number)
+        if log:
+            operations = self._inject_debugging_code(looptoken, operations,
+                                                     'e', looptoken.number)
 
         regalloc = RegAlloc(self, self.cpu.translate_support_code)
         #
@@ -568,7 +568,7 @@
             self.cpu.profile_agent.native_code_written(name,
                                                        rawstart, full_size)
         return AsmInfo(ops_offset, rawstart + looppos,
-                       size_excluding_failure_stuff - looppos)
+                       size_excluding_failure_stuff - looppos), operations
 
     def assemble_bridge(self, faildescr, inputargs, operations,
                         original_loop_token, log, logger=None):
@@ -578,9 +578,9 @@
 
         self.setup(original_loop_token)
         descr_number = compute_unique_id(faildescr)
-        # if log:
-        #     operations = self._inject_debugging_code(faildescr, operations,
-        #                                              'b', descr_number)
+        if log:
+            operations = self._inject_debugging_code(faildescr, operations,
+                                                     'b', descr_number)
 
         arglocs = self.rebuild_faillocs_from_descr(faildescr, inputargs)
         regalloc = RegAlloc(self, self.cpu.translate_support_code)
@@ -615,7 +615,9 @@
             name = "Bridge # %s" % (descr_number,)
             self.cpu.profile_agent.native_code_written(name,
                                                        rawstart, fullsize)
-        return AsmInfo(ops_offset, startpos + rawstart, codeendpos - startpos)
+        return AsmInfo(ops_offset, startpos + rawstart,
+                       codeendpos - startpos), operations
+        
 
     def write_pending_failure_recoveries(self):
         # for each pending guard, generate the code of the recovery stub
diff --git a/rpython/jit/metainterp/compile.py 
b/rpython/jit/metainterp/compile.py
--- a/rpython/jit/metainterp/compile.py
+++ b/rpython/jit/metainterp/compile.py
@@ -343,9 +343,9 @@
     metainterp_sd.profiler.start_backend()
     debug_start("jit-backend")
     try:
-        asminfo = do_compile_loop(metainterp_sd, loop.inputargs,
-                                  operations, original_jitcell_token,
-                                  name=loopname)
+        asminfo, new_ops = do_compile_loop(metainterp_sd, loop.inputargs,
+                                           operations, original_jitcell_token,
+                                           name=loopname)
     finally:
         debug_stop("jit-backend")
     metainterp_sd.profiler.end_backend()
@@ -361,7 +361,7 @@
         ops_offset = asminfo.ops_offset
     else:
         ops_offset = None
-    metainterp_sd.logger_ops.log_loop(loop.inputargs, loop.operations, n,
+    metainterp_sd.logger_ops.log_loop(loop.inputargs, new_ops, n,
                                       type, ops_offset,
                                       name=loopname)
     #
@@ -387,9 +387,9 @@
     metainterp_sd.profiler.start_backend()
     debug_start("jit-backend")
     try:
-        asminfo = do_compile_bridge(metainterp_sd, faildescr, inputargs,
-                                    operations,
-                                    original_loop_token)
+        asminfo, new_ops = do_compile_bridge(metainterp_sd, faildescr,
+                                             inputargs, operations,
+                                             original_loop_token)
     finally:
         debug_stop("jit-backend")
     metainterp_sd.profiler.end_backend()
@@ -404,7 +404,7 @@
         ops_offset = asminfo.ops_offset
     else:
         ops_offset = None
-    metainterp_sd.logger_ops.log_bridge(inputargs, operations, None, faildescr,
+    metainterp_sd.logger_ops.log_bridge(inputargs, new_ops, None, faildescr,
                                         ops_offset)
     #
     #if metainterp_sd.warmrunnerdesc is not None:    # for tests
_______________________________________________
pypy-commit mailing list
pypy-commit@python.org
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to