[test][HWASAN] Add XFAILs for missing hwasan features
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:55:21 +0000 (12:55 -0700)
Reviewed By: thurston

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

compiler-rt/test/sanitizer_common/TestCases/Linux/allow_user_segv.cpp
compiler-rt/test/sanitizer_common/TestCases/Linux/deepbind.cpp
compiler-rt/test/sanitizer_common/TestCases/Linux/malloc_usable_size.c
compiler-rt/test/sanitizer_common/TestCases/Linux/mlock_test.cpp
compiler-rt/test/sanitizer_common/TestCases/Posix/dump_registers.cpp
compiler-rt/test/sanitizer_common/TestCases/Posix/mmap_write_exec.cpp
compiler-rt/test/sanitizer_common/TestCases/Posix/print-module-map.cpp
compiler-rt/test/sanitizer_common/TestCases/Posix/weak_hook_test.cpp
compiler-rt/test/sanitizer_common/TestCases/get_allocated_begin.cpp
compiler-rt/test/sanitizer_common/TestCases/malloc_hook.cpp
compiler-rt/test/sanitizer_common/TestCases/max_allocation_size.cpp

index 03ddf06..1c74015 100644 (file)
@@ -3,6 +3,9 @@
 // Fails with debug checks: https://bugs.llvm.org/show_bug.cgi?id=46860
 // XFAIL: !compiler-rt-optimized && tsan
 
+// FIXME: Implement.
+// XFAIL: hwasan
+
 // RUN: %clangxx -O0 %s -o %t
 
 // RUN: %env_tool_opts=handle_segv=0 not %run %t 2>&1 | FileCheck %s --check-prefix=CHECK0
index 81150fa..4482713 100644 (file)
@@ -1,6 +1,9 @@
 // RUN: %clangxx %s -o %t && %run not %t 1 2>&1 | FileCheck %s
 // UNSUPPORTED: lsan,ubsan,android
 
+// FIXME: Implement.
+// XFAIL: hwasan
+
 #include <dlfcn.h>
 #include <stdio.h>
 #include <string>
index 55a06b6..f91799f 100644 (file)
@@ -1,7 +1,10 @@
 // RUN: %clang -O2 %s -o %t && %run %t
 
-// Ubsan does not provide allocator.
-// UNSUPPORTED: ubsan
+// Must not be implemented, no other reason to install interceptors.
+// XFAIL: ubsan
+
+// FIXME: Implement.
+// XFAIL: hwasan
 
 #include <assert.h>
 #include <malloc.h>
index a952922..09b05d1 100644 (file)
@@ -1,13 +1,24 @@
+// Test that sanitizers suppress mlock.
 // RUN: %clang  %s -o %t && %run %t
-// XFAIL: ubsan,lsan
+
+// No shadow, so no need to disable mlock.
+// XFAIL: ubsan, lsan
+
+// FIXME: Implement.
+// XFAIL: hwasan
 
 #include <assert.h>
 #include <sys/mman.h>
 
 int main() {
+#if defined(__has_feature)
+#  if __has_feature(hwaddress_sanitizer)
+  // Don't mlock, it may claim all memory.
+  abort();
+#  endif
+#endif
   assert(0 == mlockall(MCL_CURRENT));
   assert(0 == mlock((void *)0x12345, 0x5678));
   assert(0 == munlockall());
   assert(0 == munlock((void *)0x987, 0x654));
 }
-
index 07e87be..f09b2bf 100644 (file)
@@ -4,11 +4,7 @@
 // RUN: %run %t 2>&1 | FileCheck %s --check-prefix=CHECK-DUMP
 //
 // FIXME: Implement.
-// UNSUPPORTED: asan
-// UNSUPPORTED: lsan
-// UNSUPPORTED: msan
-// UNSUPPORTED: tsan
-// UNSUPPORTED: ubsan
+// XFAIL: *
 
 #include <signal.h>
 
index eec2161..f4165b7 100644 (file)
@@ -7,6 +7,9 @@
 // TODO: Fix option on Android, it hangs there for unknown reasons.
 // XFAIL: android
 
+// FIXME: Implement.
+// XFAIL: hwasan
+
 #if defined(__APPLE__)
 #include <Availability.h>
 #endif
index c0e80d9..00df724 100644 (file)
@@ -18,8 +18,8 @@
 // FIXME: Add linux support.
 // XFAIL: msan && target={{.*linux.*}}
 
-// FIXME: Add lsan support.
-// XFAIL: lsan
+// FIXME: Implement.
+// XFAIL: lsan, hwasan
 
 int global;
 
index ba98f47..e95de73 100644 (file)
@@ -1,10 +1,11 @@
 // Test the weak hooks.
-// RUN: %clangxx %s -o %t
-// RUN: %run %t
+// RUN: %clangxx %s -o %t && %run %t
 
-// Hooks are not implemented for lsan.
-// XFAIL: lsan
-// XFAIL: ubsan
+// Must not be implemented, no other reason to install interceptors.
+// XFAIL: lsan, ubsan
+
+// FIXME: Implement.
+// XFAIL: hwasan
 
 #include <assert.h>
 #include <string.h>
index 1683063..5f31b1f 100644 (file)
@@ -1,7 +1,10 @@
 // RUN: %clangxx -O0 -g %s -o %t && %run %t
 
-// UBSan does not have its own allocator
-// UNSUPPORTED: ubsan
+// Must not be implemented, no other reason to install interceptors.
+// XFAIL: ubsan
+
+// FIXME: Implement.
+// XFAIL: hwasan
 
 #include <assert.h>
 #include <sanitizer/allocator_interface.h>
index 160e4e1..1239108 100644 (file)
@@ -2,8 +2,13 @@
 
 // Malloc/free hooks are not supported on Windows.
 // XFAIL: target={{.*windows-msvc.*}}
+
+// Must not be implemented, no other reason to install interceptors.
 // XFAIL: ubsan
 
+// FIXME: Implement.
+// XFAIL: hwasan
+
 #include <stdlib.h>
 #include <unistd.h>
 #include <sanitizer/allocator_interface.h>
index 44f2935..41ff450 100644 (file)
@@ -43,6 +43,9 @@
 // win32 is disabled due to failing errno tests.
 // UNSUPPORTED: ubsan, target={{.*windows-msvc.*}}
 
+// FIXME: Implement.
+// XFAIL: hwasan
+
 #include <assert.h>
 #include <errno.h>
 #include <limits>