blob: 3a54d9c566632f8a1018cd38f7135625d1819371 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
import argparse
import sys
def main():
argp = argparse.ArgumentParser()
argp.add_argument("-o", "--output", type=lambda v: open(v, 'w'), default=sys.stdout)
argp.add_argument("logfile", type=open)
argp.add_argument("fcn_name", type=str, nargs='?')
args = argp.parse_args()
fcn_lines = []
found_fcn = False
for line in args.logfile:
if 'visit_function: ' in line \
or 'evaluate_constant: ' in line \
or 'Trans_Monomorphise_List: ' in line \
or 'Trans_Codegen: FUNCTION CODE' in line \
or 'Trans_Codegen- emit_' in line \
:
if found_fcn:
break
fcn_lines = []
if args.fcn_name is not None and args.fcn_name in line:
found_fcn = True
fcn_lines.append(line.strip())
for l in fcn_lines:
args.output.write(l)
args.output.write("\n")
main()
|