Author: Tim Felgentreff <[email protected]>
Branch: 64bit
Changeset: r576:3187da37d491
Date: 2014-01-13 10:35 +0100
http://bitbucket.org/pypy/lang-smalltalk/changeset/3187da37d491/
Log: show loops, only start metainterp at test method, not with
"asSymbol" of the selector
diff --git a/spyvm/test/jittest/base.py b/spyvm/test/jittest/base.py
--- a/spyvm/test/jittest/base.py
+++ b/spyvm/test/jittest/base.py
@@ -2,20 +2,18 @@
import os
import sys
-# TODO:
+from rpython import conftest
+class o:
+ view = False
+ viewloops = True
+conftest.option = o
+
from pypy.tool.jitlogparser.parser import SimpleParser, Op
from pypy.tool.jitlogparser.storage import LoopStorage
-
from rpython.jit.metainterp.test.support import LLJitMixin
from rpython.jit.metainterp.resoperation import opname
from rpython.jit.tool import oparser
from rpython.tool import logparser
-from rpython import conftest
-
-class o:
- view = False
- viewloops = True
-conftest.option = o
sys.setrecursionlimit(5000)
@@ -98,47 +96,15 @@
interp = info["interpreter"]
selector = info["selector"]
+ w_selector = interp.perform(interp.space.wrap_string(selector),
+ "asSymbol")
def interpret():
- return interp.perform(interp.space.wrap_int(0), selector)
+ return interp.perform(interp.space.wrap_int(0), w_selector)
- # XXX custom fishing, depends on the exact env var and format
- logfile = tmpdir.join("x.pypylog")
- os.environ['PYPYLOG'] = "jit-log-opt:%s" % logfile
self.meta_interp(interpret, [], listcomp=True, listops=True,
backendopt=True, inline=True)
-
from rpython.jit.metainterp.warmspot import get_stats
- import re
loops = get_stats().get_all_loops()
- logstr = "[bed8a96917a] {jit-log-opt-loop\n"
- logstr += "# Loop 0 (exp: eval) : entry bridge with %d ops\n" %
len(loops[len(loops) -1].operations)
- logstr += "[p0, p1]\n"
- counter = 1
- for op in loops[len(loops) -1].operations:
- counter += 1
- op = str(op)
- match = re.match("[a-zA-Z0-9]+\.[a-zA-Z0-9]+:\d+", op)
- if match:
- op = op[0:match.span()[1]].strip()
- if op.startswith("i"):
- op = "+%d: %s" % (counter, op)
- logstr += op
- logstr += "\n"
- logfile.write(logstr + "[bed8a999a87] jit-log-opt-loop}\n")
-
- import pdb; pdb.set_trace()
- data = logparser.parse_log_file(str(tmpdir.join("x.pypylog")),
verbose=False)
- data = logparser.extract_category(data, "jit-log-opt-")
-
- storage = LoopStorage()
- traces = [SimpleParser.parse_from_input(t) for t in data]
- main_loops = storage.reconnect_loops(traces)
- traces_w = []
- for trace in traces:
- if trace in main_loops:
- traces_w.append(Trace(trace))
- else:
- traces_w[len(traces_w) - 1].addbridge(trace)
- return traces_w
+ return []
def assert_matches(self, trace, expected):
expected_lines = [
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit