Bug 1438471 - Remove dead code: nm-symbolicate.py r=mstange

MozReview-Commit-ID: 7qaYBvLzPZL

--HG--
extra : rebase_source : 32d70ea42c5d286b074dde3f55090f6f2437d734
This commit is contained in:
Sylvestre Ledru 2018-02-22 08:59:39 +01:00
Родитель 817239a522
Коммит 1e5d4345d7
1 изменённых файлов: 0 добавлений и 48 удалений

Просмотреть файл

@ -1,48 +0,0 @@
#!/usr/bin/env python
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
import sys, subprocess, os
def NMSymbolicate(library, addresses):
target_tools_prefix = os.environ.get("TARGET_TOOLS_PREFIX", "")
args = [
target_tools_prefix + "nm", "-D", "-S", library
]
nm_lines = subprocess.check_output(args).split("\n")
symbol_table = []
for line in nm_lines:
pieces = line.split(" ", 4)
if len(pieces) != 4 or pieces[2] != "T":
continue
start = int(pieces[0], 16)
end = int(pieces[1], 16)
symbol = pieces[3]
symbol_table.append({
"start": int(pieces[0], 16),
"end": int(pieces[0], 16) + int(pieces[1], 16),
"funcName": pieces[3]
});
for addressStr in addresses:
address = int(addressStr, 16)
symbolForAddress = None
for symbol in symbol_table:
if address >= symbol["start"] and address <= symbol["end"]:
symbolForAddress = symbol
break
if symbolForAddress:
print symbolForAddress["funcName"]
else:
print "??" # match addr2line
print ":0" # no line information from nm
if len(sys.argv) > 1:
NMSymbolicate(sys.argv[1], sys.argv[2:])
sys.exit(0)
print "Usage: nm-symbolicate.py <library> <addresses> > merged.sym"