llvm-project/llvm/lib/Transforms/Instrumentation
Vitaly Buka e3a032a740 Unpoison stack before resume instruction
Summary:
Clang inserts cleanup code before resume similar way as before return instruction.
This makes asan poison local variables causing false use-after-scope reports.

__asan_handle_no_return does not help here as it was executed before
llvm.lifetime.end inserted into resume block.

To avoid false report we need to unpoison stack for resume same way as for return.

PR27453

Reviewers: kcc, eugenis

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

llvm-svn: 276480
2016-07-22 22:04:38 +00:00
..
AddressSanitizer.cpp Unpoison stack before resume instruction 2016-07-22 22:04:38 +00:00
BoundsChecking.cpp Apply clang-tidy's modernize-loop-convert to most of lib/Transforms. 2016-06-26 12:28:59 +00:00
CFGMST.h [NFC] Header cleanup 2016-04-18 09:17:29 +00:00
CMakeLists.txt [PGO] Promote indirect calls to conditional direct calls with value-profile 2016-04-27 23:20:27 +00:00
DataFlowSanitizer.cpp Apply clang-tidy's modernize-loop-convert to most of lib/Transforms. 2016-06-26 12:28:59 +00:00
EfficiencySanitizer.cpp [esan:cfrag] Add option -esan-aux-field-info 2016-07-07 03:20:16 +00:00
GCOVProfiling.cpp Rename StringMap::emplace_second to try_emplace. 2016-07-21 13:37:48 +00:00
IndirectCallPromotion.cpp Address review comments. 2016-07-17 14:46:58 +00:00
InstrProfiling.cpp [Profile] deprecate __llvm_profile_override_default_filename 2016-07-21 23:19:10 +00:00
Instrumentation.cpp [PM] code refactoring /NFC 2016-06-05 03:40:03 +00:00
LLVMBuild.txt [PGO] Resubmit "MST based PGO instrumentation infrastructure" (r254021) 2015-12-09 18:08:16 +00:00
MaximumSpanningTree.h
MemorySanitizer.cpp [msan] Fix __msan_maybe_ for non-standard type sizes. 2016-07-01 22:49:59 +00:00
PGOInstrumentation.cpp Sync up InstrProfData.inc with compiler-rt with fixes to references 2016-07-22 04:46:56 +00:00
SanitizerCoverage.cpp [sanitizer-coverage] make sure that calls to __sanitizer_cov_trace_pc are not merged (otherwise different calls get the same PC and confuse fuzzers) 2016-07-14 17:59:01 +00:00
ThreadSanitizer.cpp [tsan] Don't instrument __llvm_gcov_global_state_pred or __llvm_gcda* 2016-07-19 20:16:08 +00:00