llvm-project/llvm/test/Instrumentation/AddressSanitizer
Dmitry Vyukov 618d580ec9 asan: optimization experiments
The experiments can be used to evaluate potential optimizations that remove
instrumentation (assess false negatives). Instead of completely removing
some instrumentation, you set Exp to a non-zero value (mask of optimization
experiments that want to remove instrumentation of this instruction).
If Exp is non-zero, this pass will emit special calls into runtime
(e.g. __asan_report_exp_load1 instead of __asan_report_load1). These calls
make runtime terminate the program in a special way (with a different
exit status). Then you run the new compiler on a buggy corpus, collect
the special terminations (ideally, you don't see them at all -- no false
negatives) and make the decision on the optimization.

The exact reaction to experiments in runtime is not implemented in this patch.
It will be defined and implemented in a subsequent patch.

http://reviews.llvm.org/D8198

llvm-svn: 232502
2015-03-17 16:59:19 +00:00
..
X86 [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
adaptive_global_redzones.ll [asan] adaptive redzones for globals (the larger the global the larger is the redzone) 2013-01-24 10:35:40 +00:00
asan-vs-gvn.ll [opaque pointer type] Add textual IR support for explicit type parameter to gep operator 2015-03-13 18:20:45 +00:00
basic.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
debug_info.ll DebugInfo: Move new hierarchy into place 2015-03-03 17:24:31 +00:00
do-not-instrument-cstring.ll Recommit of r223513 and r223514. 2014-12-05 22:19:18 +00:00
do-not-instrument-internal-globals.ll [ASan] Add -asan-module to the ASan .ll tests. 2014-03-20 11:16:34 +00:00
do-not-instrument-llvm-metadata.ll IR: Add COMDATs to the IR 2014-06-27 18:19:56 +00:00
do-not-instrument-promotable-allocas.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
do-not-touch-comdat-global.ll Change the .ll syntax for comdats and add a syntactic sugar. 2015-01-06 22:55:16 +00:00
do-not-touch-odr-global.ll [ASan] Add -asan-module to the ASan .ll tests. 2014-03-20 11:16:34 +00:00
do-not-touch-threadlocal.ll [ASan] Add -asan-module to the ASan .ll tests. 2014-03-20 11:16:34 +00:00
experiment-call.ll asan: optimization experiments 2015-03-17 16:59:19 +00:00
experiment.ll asan: optimization experiments 2015-03-17 16:59:19 +00:00
freebsd.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
global_metadata.ll [opaque pointer type] Add textual IR support for explicit type parameter to gep operator 2015-03-13 18:20:45 +00:00
instrument-dynamic-allocas.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
instrument-no-return.ll [ASan] Add -asan-module to the ASan .ll tests. 2014-03-20 11:16:34 +00:00
instrument-stack.ll asan: do not instrument direct inbounds accesses to stack variables 2015-03-04 13:27:53 +00:00
instrument_global.ll [opaque pointer type] Add textual IR support for explicit type parameter to gep operator 2015-03-13 18:20:45 +00:00
instrument_initializer_metadata.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
instrument_load_then_store.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
instrumentation-with-call-threshold.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
lifetime-uar.ll [asan] Skip promotable allocas to improve performance at -O0 2015-02-27 03:12:36 +00:00
lifetime.ll [asan] Skip promotable allocas to improve performance at -O0 2015-02-27 03:12:36 +00:00
stack-poisoning.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
stack_dynamic_alloca.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
stack_layout.ll [asan] Skip promotable allocas to improve performance at -O0 2015-02-27 03:12:36 +00:00
test64.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
ubsan.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
undecidable-dynamic-alloca-1.ll [asan] Change dynamic alloca instrumentation to only consider allocas that are dominating all exits from function. 2014-12-01 08:47:58 +00:00