[msan] Stop propagating shadow in blacklisted functions.
authorEvgeniy Stepanov <eugeni.stepanov@gmail.com>
Thu, 3 Jul 2014 11:56:30 +0000 (11:56 +0000)
committerEvgeniy Stepanov <eugeni.stepanov@gmail.com>
Thu, 3 Jul 2014 11:56:30 +0000 (11:56 +0000)
commit174242c74c55eeee7159a02a52985824b7375250
treedc969995e5ef9c2aed4609cf46d54334ddf788b1
parent89c40a8b2d23728250d9ce87a980004ea3647add
[msan] Stop propagating shadow in blacklisted functions.

With this change all values passed through blacklisted functions
become fully initialized. Previous behavior was to initialize all
loads in blacklisted functions, but apply normal shadow propagation
logic for all other operation.

This makes blacklist applicable in a wider range of situations.

It also makes code for blacklisted functions a lot shorter, which
works as yet another workaround for PR17409.

llvm-svn: 212268
compiler-rt/test/msan/no_sanitize_memory_prop.cc
llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
llvm/test/Instrumentation/MemorySanitizer/msan_basic.ll