diff --git a/CMakeLists.txt b/CMakeLists.txt index 5fb0f60ad..f12c52574 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -229,6 +229,8 @@ if (LIBCXX_BUILT_STANDALONE) elseif (LLVM_USE_SANITIZER STREQUAL "Undefined") list(APPEND LIBCXX_CXX_FLAGS "-fsanitize=undefined -fno-sanitize=vptr,function -fno-sanitize-recover") + elseif (LLVM_USE_SANITIZER STREQUAL "Thread") + list(APPEND LIBCXX_CXX_FLAGS "-fsanitize=thread") else() message(WARNING "Unsupported value of LLVM_USE_SANITIZER: ${LLVM_USE_SANITIZER}") endif() diff --git a/test/lit.cfg b/test/lit.cfg index 9098b658b..34875b0fe 100644 --- a/test/lit.cfg +++ b/test/lit.cfg @@ -455,6 +455,9 @@ class Configuration(object): '-fno-sanitize=vptr,function', '-fno-sanitize-recover', '-O3'] self.config.available_features.add('ubsan') + elif san == 'Thread': + self.compile_flags += ['-fsanitize=thread'] + self.config.available_features.add('tsan') else: self.lit_config.fatal('unsupported value for ' 'libcxx_use_san: {0}'.format(san))