[pypy-commit] pypy default: support bridges
fijal
noreply at buildbot.pypy.org
Thu Jul 14 11:04:10 CEST 2011
Author: Maciej Fijalkowski <fijall at gmail.com>
Branch:
Changeset: r45586:e152619384f9
Date: 2011-07-14 11:03 +0200
http://bitbucket.org/pypy/pypy/changeset/e152619384f9/
Log: support bridges
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
@@ -341,8 +341,11 @@
# a bridge
m = re.search('has address ([\da-f]+)', entry)
addr = int(m.group(1), 16)
+ entry = entry.lower()
+ m = re.search('guard \d+', entry)
+ addrs[addr] = m.group(0)
else:
- name = entry[:entry.find('(') - 1]
+ name = entry[:entry.find('(') - 1].lower()
addrs[int(m.group(1), 16)] = name
dumps = {}
for entry in extract_category(log, 'jit-backend-dump'):
@@ -358,12 +361,15 @@
nonstrict=True)
loop = parser.parse()
comm = loop.comment
- name = comm[2:comm.find(':')-1]
+ comm = comm.lower()
+ if comm.startswith('# bridge'):
+ m = re.search('guard \d+', comm)
+ name = m.group(0)
+ else:
+ name = comm[2:comm.find(':')-1]
if name in dumps:
bname, start_ofs, dump = dumps[name]
parser.postprocess(loop, backend_tp=bname, backend_dump=dump,
dump_start=start_ofs)
- else:
- xxx
loops.append(loop)
return log, loops
diff --git a/pypy/tool/jitlogparser/test/test_parser.py b/pypy/tool/jitlogparser/test/test_parser.py
--- a/pypy/tool/jitlogparser/test/test_parser.py
+++ b/pypy/tool/jitlogparser/test/test_parser.py
@@ -218,4 +218,6 @@
def test_import_log_2():
_, loops = import_log(str(py.path.local(__file__).join('..',
'logtest2.log')))
- xxx
+ assert 'cmp' in loops[1].operations[1].asm
+ # bridge
+ assert 'cmp' in loops[3].operations[1].asm
More information about the pypy-commit
mailing list