Add tsan support to v8's gyp and test driver.
Tests only the default variant for now. BUG= R=jochen@chromium.org Review URL: https://codereview.chromium.org/412853002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22561 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
This commit is contained in:
parent
dcc2a25f2f
commit
f5a4b26061
@ -35,6 +35,7 @@
|
||||
'component%': 'static_library',
|
||||
'clang%': 0,
|
||||
'asan%': 0,
|
||||
'tsan%': 0,
|
||||
'visibility%': 'hidden',
|
||||
'v8_enable_backtrace%': 0,
|
||||
'v8_enable_i18n_support%': 1,
|
||||
@ -186,6 +187,27 @@
|
||||
],
|
||||
},
|
||||
}],
|
||||
['tsan==1', {
|
||||
'target_defaults': {
|
||||
'cflags+': [
|
||||
'-fno-omit-frame-pointer',
|
||||
'-gline-tables-only',
|
||||
'-fsanitize=thread',
|
||||
'-fPIC',
|
||||
'-Wno-c++11-extensions',
|
||||
],
|
||||
'cflags!': [
|
||||
'-fomit-frame-pointer',
|
||||
],
|
||||
'ldflags': [
|
||||
'-fsanitize=thread',
|
||||
'-pie',
|
||||
],
|
||||
'defines': [
|
||||
'THREAD_SANITIZER',
|
||||
],
|
||||
},
|
||||
}],
|
||||
['OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris" \
|
||||
or OS=="netbsd"', {
|
||||
'target_defaults': {
|
||||
|
@ -388,6 +388,7 @@ def Execute(arch, mode, args, options, suites, workspace):
|
||||
"no_snap": False,
|
||||
"simulator": utils.UseSimulator(arch),
|
||||
"system": utils.GuessOS(),
|
||||
"tsan": False,
|
||||
}
|
||||
all_tests = []
|
||||
num_tests = 0
|
||||
|
@ -213,6 +213,9 @@ def BuildOptions():
|
||||
default=False, action="store_true")
|
||||
result.add_option("-t", "--timeout", help="Timeout in seconds",
|
||||
default= -1, type="int")
|
||||
result.add_option("--tsan",
|
||||
help="Regard test expectations for TSAN",
|
||||
default=False, action="store_true")
|
||||
result.add_option("-v", "--verbose", help="Verbose output",
|
||||
default=False, action="store_true")
|
||||
result.add_option("--valgrind", help="Run tests through valgrind",
|
||||
@ -275,6 +278,9 @@ def ProcessOptions(options):
|
||||
if options.asan:
|
||||
options.extra_flags.append("--invoke-weak-callbacks")
|
||||
|
||||
if options.tsan:
|
||||
VARIANTS = ["default"]
|
||||
|
||||
if options.j == 0:
|
||||
options.j = multiprocessing.cpu_count()
|
||||
|
||||
@ -459,6 +465,7 @@ def Execute(arch, mode, args, options, suites, workspace):
|
||||
"simulator_run": simulator_run,
|
||||
"simulator": utils.UseSimulator(arch),
|
||||
"system": utils.GuessOS(),
|
||||
"tsan": options.tsan,
|
||||
}
|
||||
all_tests = []
|
||||
num_tests = 0
|
||||
|
Loading…
Reference in New Issue
Block a user