OLD | NEW |
1 #!/usr/bin/env python2 | 1 #!/usr/bin/env python2 |
2 | 2 |
3 import argparse | 3 import argparse |
4 import itertools | 4 import itertools |
5 import os | 5 import os |
6 import re | 6 import re |
7 import subprocess | 7 import subprocess |
8 import sys | 8 import sys |
9 | 9 |
10 from utils import shellcmd | 10 from utils import shellcmd |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
63 | 63 |
64 cmd = [] | 64 cmd = [] |
65 if not args.llvm_source: | 65 if not args.llvm_source: |
66 cmd = [os.path.join(llvm_bin_path, 'llvm-as'), llfile, '-o', '-', '|', | 66 cmd = [os.path.join(llvm_bin_path, 'llvm-as'), llfile, '-o', '-', '|', |
67 os.path.join(llvm_bin_path, 'pnacl-freeze')] | 67 os.path.join(llvm_bin_path, 'pnacl-freeze')] |
68 if not args.no_local_syms: | 68 if not args.no_local_syms: |
69 cmd += ['--allow-local-symbol-tables'] | 69 cmd += ['--allow-local-symbol-tables'] |
70 cmd += ['|'] | 70 cmd += ['|'] |
71 cmd += [args.llvm2ice] | 71 cmd += [args.llvm2ice] |
72 if args.insts: | 72 if args.insts: |
73 cmd += ['-verbose', 'inst', '-notranslate'] | 73 # If the tests are based on '-verbose inst' output, force |
| 74 # single-threaded translation because dump output does not get |
| 75 # reassembled into order. |
| 76 cmd += ['-verbose', 'inst', '-notranslate', '-threads=0'] |
74 if not args.llvm_source: | 77 if not args.llvm_source: |
75 cmd += ['--bitcode-format=pnacl'] | 78 cmd += ['--bitcode-format=pnacl'] |
76 if not args.no_local_syms: | 79 if not args.no_local_syms: |
77 cmd += ['--allow-local-symbol-tables'] | 80 cmd += ['--allow-local-symbol-tables'] |
78 if args.llvm or args.llvm_source: | 81 if args.llvm or args.llvm_source: |
79 cmd += ['--build-on-read=0'] | 82 cmd += ['--build-on-read=0'] |
80 else: | 83 else: |
81 cmd += ['--build-on-read=1'] | 84 cmd += ['--build-on-read=1'] |
82 cmd += args.args | 85 cmd += args.args |
83 if args.llvm_source: | 86 if args.llvm_source: |
84 cmd += [llfile] | 87 cmd += [llfile] |
85 | 88 |
86 stdout_result = shellcmd(cmd, echo=args.echo_cmd) | 89 stdout_result = shellcmd(cmd, echo=args.echo_cmd) |
87 if not args.echo_cmd: | 90 if not args.echo_cmd: |
88 sys.stdout.write(stdout_result) | 91 sys.stdout.write(stdout_result) |
89 | 92 |
90 if __name__ == '__main__': | 93 if __name__ == '__main__': |
91 main() | 94 main() |
OLD | NEW |