diff options
author | Alon Zakai <alonzakai@gmail.com> | 2012-03-11 18:17:53 -0700 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2012-03-11 18:17:53 -0700 |
commit | f5403671bbbd6e52b41f380ac9b21a4063bc2254 (patch) | |
tree | cc6e84f5615df63d175a61e630cbb4e4db5a95da /tools/scan_ll.py | |
parent | 44161f79bdb949534faa50b38979310ed7d93ce4 (diff) |
add llvm function size scanner
Diffstat (limited to 'tools/scan_ll.py')
-rw-r--r-- | tools/scan_ll.py | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/tools/scan_ll.py b/tools/scan_ll.py new file mode 100644 index 00000000..d7d42057 --- /dev/null +++ b/tools/scan_ll.py @@ -0,0 +1,18 @@ +''' +Finds why an .ll file is large by printing functions by size +''' + +import os, sys + +funcs = [] +i = 0 +for line in open(sys.argv[1]): + i += 1 + if line.startswith('define '): + inside = line.replace('define ', '').replace('\n', '') + start = i + elif line.startswith('}'): + funcs.append((inside, i-start)) + +print '\n'.join(map(lambda func: str(func[1]) + ':' + func[0], sorted(funcs, key=lambda func: -func[1]))) + |