llvm-project/compiler-rt/test
Alexey Samsonov 081a24e3a7 [UBSan] Implement runtime suppressions (PR25066).
Summary:
Add the ability to suppress UBSan reports for files/functions/modules
at runtime. The user can now pass UBSAN_OPTIONS=suppressions=supp.txt
with the contents of the form:

signed-integer-overflow:file-with-known-overflow.cpp
alignment:function_doing_unaligned_access
vptr:shared_object_with_vptr_failures.so

Suppression categories match the arguments passed to -fsanitize=
flag (although, see below). There is no overhead if suppressions are
not provided. Otherwise there is extra overhead for symbolization.

Limitations:
1) sometimes suppressions need debug info / symbol table to function
   properly (although sometimes frontend generates enough info to
   do the match).
2) it's only possible to suppress recoverable UB kinds - if you've
   built the code with -fno-sanitize-recover=undefined, suppressions
   will not work.
3) categories are fine-grained check kinds, not groups like "undefined"
   or "integer", so you can't write "undefined:file_with_ub.cc".

Reviewers: rsmith, kcc

Subscribers: cfe-commits

Differential Revision: http://reviews.llvm.org/D15363

llvm-svn: 256018
2015-12-18 19:56:42 +00:00
..
BlocksRuntime Move tests for BlocksRuntime and builtins to corresponding directories under test/ 2014-02-14 09:47:31 +00:00
asan [asan] Move halt_on_error_suppress_equal_pcs.cc to Posix directory. 2015-12-10 08:34:28 +00:00
builtins Add a generic version of __divtc3.c for long double complex division. 2015-11-22 19:13:49 +00:00
cfi [cfi] Limit cross-dso tests to Linux. 2015-12-16 00:24:18 +00:00
dfsan [AArch64|DFSAN] XPASS custom.cc, as it got fixed by r243686 2015-07-31 10:50:29 +00:00
lsan [LSan] Fix tests with some libstdc++ implementations. 2015-11-19 17:18:02 +00:00
msan [msan] Intercept ctermid, ctermid_r. 2015-12-14 22:57:49 +00:00
profile [PGO] add a test case in profiler runtime 2015-12-11 05:43:55 +00:00
safestack [compiler-rt] [safestack] Silent overflow.c test on aarch64 2015-12-14 11:58:43 +00:00
sanitizer_common [asan] try to fix ARM bots 2015-12-15 01:05:35 +00:00
tsan [tsan] Update dispatch_group support to avoid using a disposed group object 2015-12-14 13:32:57 +00:00
ubsan [UBSan] Implement runtime suppressions (PR25066). 2015-12-18 19:56:42 +00:00
CMakeLists.txt Revert "[CMake] Provide options for toggling on and off various runtime libraries." 2015-12-10 00:40:58 +00:00
lit.common.cfg [windows] Add retries to cope with linker/filesystem flakiness 2015-09-02 20:45:36 +00:00
lit.common.configured.in [CMake] Rename COMPILER_RT_TEST_TARGET_TRIPLE to more appropriate COMPILER_RT_DEFAULT_TARGET_TRIPLE. 2015-09-08 22:48:35 +00:00