| OLD | NEW |
| 1 #!/usr/bin/python | 1 #!/usr/bin/python |
| 2 # Copyright (c) 2013 The Native Client Authors. All rights reserved. | 2 # Copyright (c) 2013 The Native Client Authors. All rights reserved. |
| 3 # Use of this source code is governed by a BSD-style license that can be | 3 # Use of this source code is governed by a BSD-style license that can be |
| 4 # found in the LICENSE file. | 4 # found in the LICENSE file. |
| 5 | 5 |
| 6 ''' Installs and runs (a subset of) the gcc toolchain test suite against | 6 ''' Installs and runs (a subset of) the gcc toolchain test suite against |
| 7 various nacl and non-nacl toolchains | 7 various nacl and non-nacl toolchains |
| 8 ''' | 8 ''' |
| 9 | 9 |
| 10 import glob | 10 import glob |
| (...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 85 print 'Unknown platform:', platform | 85 print 'Unknown platform:', platform |
| 86 | 86 |
| 87 config_map = { 'pnacl': 'llvm_pnacl', | 87 config_map = { 'pnacl': 'llvm_pnacl', |
| 88 'naclgcc': 'nacl_gcc', | 88 'naclgcc': 'nacl_gcc', |
| 89 'localgcc': 'local_gcc'} | 89 'localgcc': 'local_gcc'} |
| 90 | 90 |
| 91 failures = [] | 91 failures = [] |
| 92 if compiler == 'pnacl': | 92 if compiler == 'pnacl': |
| 93 # O3_O0 is clang -O3 followed by pnacl-translate -O0 | 93 # O3_O0 is clang -O3 followed by pnacl-translate -O0 |
| 94 optmodes = ['O0', 'O3', 'O0_O0', 'O3_O0'] | 94 optmodes = ['O0', 'O3', 'O0_O0', 'O3_O0'] |
| 95 if platform == 'x86-32': |
| 96 # Add some extra Subzero configurations. |
| 97 optmodes.extend(['O3_sz', 'O3_O0_sz']) |
| 98 # TODO(stichnot): Consider pruning some configurations if the tests run |
| 99 # too long. |
| 95 else: | 100 else: |
| 96 optmodes = ['O0', 'O3'] | 101 optmodes = ['O0', 'O3'] |
| 97 for optmode in optmodes: | 102 for optmode in optmodes: |
| 98 # TODO: support an option like -k? For now, always keep going | 103 # TODO: support an option like -k? For now, always keep going |
| 99 config = '_'.join((config_map[compiler], platform, optmode)) | 104 config = '_'.join((config_map[compiler], platform, optmode)) |
| 100 | 105 |
| 101 # Test zero-cost C++ exception handling. | 106 # Test zero-cost C++ exception handling. |
| 102 retcode = eh_tests(status.context, config, | 107 retcode = eh_tests(status.context, config, |
| 103 'known_eh_failures_' + compiler + '.txt', extra_args, | 108 'known_eh_failures_' + compiler + '.txt', extra_args, |
| 104 use_sjlj_eh=False) | 109 use_sjlj_eh=False) |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 137 platform = sys.argv[2] | 142 platform = sys.argv[2] |
| 138 tester_argv = sys.argv[3:] | 143 tester_argv = sys.argv[3:] |
| 139 except IndexError: | 144 except IndexError: |
| 140 usage() | 145 usage() |
| 141 sys.exit(1) | 146 sys.exit(1) |
| 142 | 147 |
| 143 return run_torture(status, compiler, platform, tester_argv) | 148 return run_torture(status, compiler, platform, tester_argv) |
| 144 | 149 |
| 145 if __name__ == '__main__': | 150 if __name__ == '__main__': |
| 146 sys.exit(main()) | 151 sys.exit(main()) |
| OLD | NEW |