Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(608)

Side by Side Diff: tests/irt_private_pthread/nacl.scons

Issue 140653005: Adds tls_edit utility which patches irt_core.nexe's TLS usage. (Closed) Base URL: svn://svn.chromium.org/native_client/trunk/src/native_client
Patch Set: gyp builds with host toolsets should not inherit target flags for arm and mips Created 6 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 # -*- python -*- 1 # -*- python -*-
2 # Copyright (c) 2012 The Native Client Authors. All rights reserved. 2 # Copyright (c) 2012 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('env') 6 Import('env')
7 7
8 # This test needs the IRT version of __aeabi_read_tp, and not the one that 8 # This test needs the IRT version of __aeabi_read_tp, and not the one that
9 # gets linked into pexes post-translation. 9 # gets linked into pexes post-translation.
10 if env.Bit('bitcode'): 10 if env.Bit('bitcode'):
11 Return() 11 Return()
12 12
13 # This test reports races under tsan because: 13 # This test reports races under tsan because:
14 # * The Valgrind interceptors are not hooked up because we are not 14 # * The Valgrind interceptors are not hooked up because we are not
15 # linking this test with '-Wl,-u,have_nacl_valgrind_interceptors'. 15 # linking this test with '-Wl,-u,have_nacl_valgrind_interceptors'.
16 # * The Valgrind interceptors don't work because we use malloc() in 16 # * The Valgrind interceptors don't work because we use malloc() in
17 # __pthread_initialize() and the intercepted malloc() uses TLS. 17 # __pthread_initialize() and the intercepted malloc() uses TLS.
18 is_broken = env.Bit('running_on_valgrind') 18 is_broken = env.Bit('running_on_valgrind')
19 19
20 irt_thread_test_nexe = env.ComponentProgram( 20 irt_thread_test_raw = env.ComponentProgram(
21 'irt_thread_test', ['irt_thread_test.c'], 21 'irt_thread_test_raw', ['irt_thread_test.c'],
22 EXTRA_LIBS=['irt_support_private']) 22 EXTRA_LIBS=['irt_support_private'])
23
24 tls_edit_exe = env.GetTLSEdit()
25
26 irt_thread_test_nexe = env.Command(
27 'irt_thread_test.nexe',
28 [tls_edit_exe, irt_thread_test_raw],
29 '${SOURCES} ${TARGET}'
30 )
31
23 node = env.CommandSelLdrTestNacl('irt_thread_test.out', irt_thread_test_nexe) 32 node = env.CommandSelLdrTestNacl('irt_thread_test.out', irt_thread_test_nexe)
24 env.AddNodeToTestSuite(node, ['small_tests'], 'run_irt_thread_test', 33 env.AddNodeToTestSuite(node, ['small_tests'], 'run_irt_thread_test',
25 is_broken=is_broken) 34 is_broken=is_broken)
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698