[libcxx-commits] [PATCH] D108394: add tsan shared library

Vitaly Buka via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Wed Sep 15 22:36:46 PDT 2021


vitalybuka added inline comments.


================
Comment at: compiler-rt/lib/tsan/tests/CMakeLists.txt:63
 
+function(add_tsan_tests arch test_runtime)
+  cmake_parse_arguments(TEST "" "KIND" "CFLAGS" ${ARGN})
----------------
multiple places below use asan


================
Comment at: compiler-rt/lib/tsan/tests/CMakeLists.txt:87
+    if(MSVC)
+
+      # With the MSVC CRT, the choice between static and dynamic CRT is made at
----------------
there is no tsan for MSVC or windows


================
Comment at: compiler-rt/test/tsan/CMakeLists.txt:45-64
+  if(COMPILER_RT_TSAN_HAS_STATIC_RUNTIME)
+    string(TOLOWER "-${arch}-${OS_NAME}-dynamic" TSAN_TEST_CONFIG_SUFFIX)
+    set(TSAN_TEST_DYNAMIC True)
+    set(CONFIG_NAME ${ARCH_UPPER_CASE}${OS_NAME}DynamicConfig)
+    configure_lit_site_cfg(
+    ${CMAKE_CURRENT_SOURCE_DIR}/lit.site.cfg.py.in
+    ${CMAKE_CURRENT_BINARY_DIR}/${CONFIG_NAME}/lit.site.cfg.py
----------------
This block is misaligned.



================
Comment at: compiler-rt/test/tsan/lit.site.cfg.py.in:3
 
 config.name_suffix = "@TSAN_TEST_CONFIG_SUFFIX@"
 config.tsan_lit_source_dir = "@TSAN_LIT_SOURCE_DIR@"
----------------
This one sets variable but nothing uses it,

More interesting stuff is in lit.cfg.py.
We need to match config.asan_dynamic from there.

We need to pass -shared-libsan into tests, in similar way as we do "-shared-libasan"
Then we need something as config.available_features.add("asan-dynamic-runtime")




Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D108394/new/

https://reviews.llvm.org/D108394



More information about the libcxx-commits mailing list