Author: David Schneider <[email protected]>
Branch: jitframe-on-heap
Changeset: r61415:dcb16cd1fff9
Date: 2013-02-18 17:25 +0100
http://bitbucket.org/pypy/pypy/changeset/dcb16cd1fff9/

Log:    kill arm version of viewcode

diff --git a/rpython/jit/backend/arm/tool/viewcode.py 
b/rpython/jit/backend/arm/tool/viewcode.py
deleted file mode 100755
--- a/rpython/jit/backend/arm/tool/viewcode.py
+++ /dev/null
@@ -1,88 +0,0 @@
-#!/usr/bin/env python
-"""
-Try:
-    ./viewcode.py file.asm
-    ./viewcode.py --decode dumpfile
-"""
-import os, sys, py
-import subprocess
-
-def machine_code_dump(data, originaddr, backend_name, label_list=None):
-    objdump_backend_option = {
-        'arm': 'arm',
-        'arm_32': 'arm',
-    }
-    assert backend_name in objdump_backend_option
-    tmpfile = get_tmp_file()
-    objdump = 'objdump -M reg-names-std --adjust-vma=%(origin)d -D 
--architecture=arm --target=binary %(file)s'
-    #
-    f = open(tmpfile, 'wb')
-    f.write(data)
-    f.close()
-    p = subprocess.Popen(objdump % {
-        'file': tmpfile,
-        'origin': originaddr,
-    }, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
-    stdout, stderr = p.communicate()
-    assert not p.returncode, ('Encountered an error running objdump: %s' %
-                              stderr)
-    # drop some objdump cruft
-    lines = stdout.splitlines(True)[6:]     # drop some objdump cruft
-    return format_code_dump_with_labels(originaddr, lines, label_list)
-
-def format_code_dump_with_labels(originaddr, lines, label_list):
-    from rpython.rlib.rarithmetic import r_uint
-    if not label_list:
-        label_list = []
-    originaddr = r_uint(originaddr)
-    itlines = iter(lines)
-    yield itlines.next() # don't process the first line
-    for lbl_start, lbl_name in label_list:
-        for line in itlines:
-            addr, _ = line.split(':', 1)
-            addr = int(addr, 16)
-            if addr >= originaddr+lbl_start:
-                yield '\n'
-                if lbl_name is None:
-                    yield '--end of the loop--\n'
-                else:
-                    yield str(lbl_name) + '\n'
-                yield line
-                break
-            yield line
-    # yield all the remaining lines
-    for line in itlines:
-        yield line
-
-def objdump(input):
-    os.system('objdump -D -M reg-names-std --architecture=arm --target=binary 
%s' % input)
-
-
-def get_tmp_file():
-    # don't use rpython.tool.udir here to avoid removing old usessions which
-    # might still contain interesting executables
-    udir = py.path.local.make_numbered_dir(prefix='viewcode-', keep=2)
-    tmpfile = str(udir.join('dump.tmp'))
-    return tmpfile
-
-def decode(source):
-    with open(source, 'r') as f:
-        data = f.read().strip()
-        data = data.decode('hex')
-
-    target = get_tmp_file()
-    with open(target, 'wb') as f:
-        f.write(data)
-    return target
-
-
-if __name__ == '__main__':
-    if len(sys.argv) == 2:
-        objdump(sys.argv[1])
-    elif len(sys.argv) == 3:
-        assert sys.argv[1] == '--decode'
-        f = decode(sys.argv[2])
-        objdump(f)
-    else:
-        print >> sys.stderr, __doc__
-        sys.exit(2)
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to