| OLD | NEW |
| 1 # -*- python -*- | 1 # -*- python -*- |
| 2 # Copyright (c) 2011 The Native Client Authors. All rights reserved. | 2 # Copyright (c) 2011 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 import os | 6 import os |
| 7 | 7 |
| 8 Import('env') | 8 Import('env') |
| 9 | 9 |
| 10 env.Replace(EXTRA_LIBS=['pthread']) | 10 env.Replace(EXTRA_LIBS=['pthread']) |
| 11 | 11 |
| 12 env.ComponentProgram('egyptian_cotton.nexe', 'egyptian_cotton.c') | 12 egyptian_cotton_nexe = env.ComponentProgram('egyptian_cotton', |
| 13 'egyptian_cotton.c') |
| 13 | 14 |
| 14 platform_limits_known = False | 15 platform_limits_known = False |
| 15 | 16 |
| 16 # this test accepts the number of threads to attempt to create as an | 17 # this test accepts the number of threads to attempt to create as an |
| 17 # argument. NACL_THREAD_MAX is 8192 for x86-32 and x86-64, and 4096 | 18 # argument. NACL_THREAD_MAX is 8192 for x86-32 and x86-64, and 4096 |
| 18 # for the Arm. See the header files | 19 # for the Arm. See the header files |
| 19 # src/trusted/service_runtime/arch/{x86,arm}/sel_ldr_{x86,arm}.h for | 20 # src/trusted/service_runtime/arch/{x86,arm}/sel_ldr_{x86,arm}.h for |
| 20 # the current values (and update this comment to reflect reality!). | 21 # the current values (and update this comment to reflect reality!). |
| 21 # On the x86_32, the actual number of threads possible is slightly | 22 # On the x86_32, the actual number of threads possible is slightly |
| 22 # fewer than 8192, since the service runtime's trusted internal | 23 # fewer than 8192, since the service runtime's trusted internal |
| (...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 112 # TODO(bsy): figure out why this fails on atom64 with 1GB RAM. | 113 # TODO(bsy): figure out why this fails on atom64 with 1GB RAM. |
| 113 # Disable thread_stack_alloc_test on one specific atom64 box. | 114 # Disable thread_stack_alloc_test on one specific atom64 box. |
| 114 if os.environ.get('COMPUTERNAME') == 'NACL-ATOM1': | 115 if os.environ.get('COMPUTERNAME') == 'NACL-ATOM1': |
| 115 tests = [t for t in tests if t[0] != 'thread_stack_alloc_test'] | 116 tests = [t for t in tests if t[0] != 'thread_stack_alloc_test'] |
| 116 | 117 |
| 117 # This test does not make much sense on Valgrind, and is too slow. | 118 # This test does not make much sense on Valgrind, and is too slow. |
| 118 if env.IsRunningUnderValgrind(): | 119 if env.IsRunningUnderValgrind(): |
| 119 tests = [t for t in tests if t[0] != 'thread_stack_alloc_test'] | 120 tests = [t for t in tests if t[0] != 'thread_stack_alloc_test'] |
| 120 | 121 |
| 121 def ThreadTestNode(name, args): | 122 def ThreadTestNode(name, args): |
| 122 cmd = [env.File('egyptian_cotton.nexe')] + args | 123 return env.CommandSelLdrTestNacl(name + '.out', |
| 123 return env.CommandSelLdrTestNacl(name + '.out', command = cmd) | 124 egyptian_cotton_nexe, |
| 125 args=args) |
| 124 | 126 |
| 125 nodes = [ ThreadTestNode(name, args) for name, args in tests ] | 127 nodes = [ ThreadTestNode(name, args) for name, args in tests ] |
| 126 | 128 |
| 127 is_broken = env.Bit('target_arm') and env.UsingEmulator() | 129 is_broken = env.Bit('target_arm') and env.UsingEmulator() |
| 128 for p, n in zip(tests, nodes): | 130 for p, n in zip(tests, nodes): |
| 129 env.AddNodeToTestSuite(n, ['small_tests', 'sel_ldr_tests'], 'run_' + p[0], | 131 env.AddNodeToTestSuite(n, ['small_tests', 'sel_ldr_tests'], 'run_' + p[0], |
| 130 is_broken=is_broken) | 132 is_broken=is_broken) |
| OLD | NEW |