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 import tempfile | 9 import tempfile |
10 | 10 |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
67 argparser.add_argument('--assemble', required=False, | 67 argparser.add_argument('--assemble', required=False, |
68 action='store_true', | 68 action='store_true', |
69 help='Assemble the output') | 69 help='Assemble the output') |
70 argparser.add_argument('--disassemble', required=False, | 70 argparser.add_argument('--disassemble', required=False, |
71 action='store_true', | 71 action='store_true', |
72 help='Disassemble the assembled output') | 72 help='Disassemble the assembled output') |
73 argparser.add_argument('--dis-flags', required=False, | 73 argparser.add_argument('--dis-flags', required=False, |
74 action='append', default=[], | 74 action='append', default=[], |
75 help='Add a disassembler flag') | 75 help='Add a disassembler flag') |
76 argparser.add_argument('--filetype', default='iasm', dest='filetype', | 76 argparser.add_argument('--filetype', default='iasm', dest='filetype', |
77 choices=['obj', 'asm', 'iasm'], | 77 choices=['obj', 'asm', 'iasm', 'hasm'], |
78 help='Output file type. Default %(default)s.') | 78 help='Output file type. Default %(default)s.') |
79 argparser.add_argument('--target', default='x8632', dest='target', | 79 argparser.add_argument('--target', default='x8632', dest='target', |
80 choices=['x8632','arm32','mips32'], | 80 choices=['x8632','arm32','mips32'], |
81 help='Target architecture. Default %(default)s.') | 81 help='Target architecture. Default %(default)s.') |
82 argparser.add_argument('--echo-cmd', required=False, | 82 argparser.add_argument('--echo-cmd', required=False, |
83 action='store_true', | 83 action='store_true', |
84 help='Trace command that generates ICE instructions') | 84 help='Trace command that generates ICE instructions') |
85 argparser.add_argument('--tbc', required=False, action='store_true', | 85 argparser.add_argument('--tbc', required=False, action='store_true', |
86 help='Input is textual bitcode (not .ll)') | 86 help='Input is textual bitcode (not .ll)') |
87 argparser.add_argument('--expect-fail', required=False, action='store_true', | 87 argparser.add_argument('--expect-fail', required=False, action='store_true', |
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
159 [asm_temp.name]) | 159 [asm_temp.name]) |
160 | 160 |
161 stdout_result = shellcmd(cmd, echo=args.echo_cmd) | 161 stdout_result = shellcmd(cmd, echo=args.echo_cmd) |
162 if not args.echo_cmd: | 162 if not args.echo_cmd: |
163 sys.stdout.write(stdout_result) | 163 sys.stdout.write(stdout_result) |
164 if asm_temp: | 164 if asm_temp: |
165 os.remove(asm_temp.name) | 165 os.remove(asm_temp.name) |
166 | 166 |
167 if __name__ == '__main__': | 167 if __name__ == '__main__': |
168 main() | 168 main() |
OLD | NEW |