[HWASAN] Run sanitizer_common tests
authorVitaly Buka <vitalybuka@google.com>
Wed, 26 Apr 2023 06:15:34 +0000 (23:15 -0700)
committerVitaly Buka <vitalybuka@google.com>
Wed, 26 Apr 2023 19:58:33 +0000 (12:58 -0700)
ninja check-sanitizer will run tests with hwasan as well

Reviewed By: kstoimenov

Differential Revision: https://reviews.llvm.org/D149234

compiler-rt/test/sanitizer_common/CMakeLists.txt
compiler-rt/test/sanitizer_common/lit.common.cfg.py

index f28ab0f..f2df8ce 100644 (file)
@@ -7,7 +7,7 @@ set(SANITIZER_COMMON_TESTSUITES)
 # FIXME(dliew): We should switch to COMPILER_RT_SANITIZERS_TO_BUILD instead of
 # the hard coded `SUPPORTED_TOOLS_INIT` list once we know that the other
 # sanitizers work.
-set(SUPPORTED_TOOLS_INIT asan lsan msan tsan ubsan)
+set(SUPPORTED_TOOLS_INIT asan lsan hwasan msan tsan ubsan)
 set(SUPPORTED_TOOLS)
   foreach(SANITIZER_TOOL ${SUPPORTED_TOOLS_INIT})
     string(TOUPPER ${SANITIZER_TOOL} SANITIZER_TOOL_UPPER)
index 13a21c6..7d7262b 100644 (file)
@@ -10,6 +10,11 @@ collect_stack_traces = ""
 if config.tool_name == "asan":
   tool_cflags = ["-fsanitize=address"]
   tool_options = "ASAN_OPTIONS"
+elif config.tool_name == "hwasan":
+  tool_cflags = ["-fsanitize=hwaddress", "-fuse-ld=lld"]
+  if config.target_arch == "x86_64":
+    tool_cflags += ["-fsanitize-hwaddress-experimental-aliasing"]
+  tool_options = "HWASAN_OPTIONS"
 elif config.tool_name == "tsan":
   tool_cflags = ["-fsanitize=thread"]
   tool_options = "TSAN_OPTIONS"