[msan] Stop propagating shadow in blacklisted functions.
authorEvgeniy Stepanov <eugeni.stepanov@gmail.com>
Thu, 3 Jul 2014 11:18:48 +0000 (11:18 +0000)
committerEvgeniy Stepanov <eugeni.stepanov@gmail.com>
Thu, 3 Jul 2014 11:18:48 +0000 (11:18 +0000)
commitcfc40ef98a48180ea8d168fca930236731656ef8
tree75b79e86c0b549cb8c2f44625ad820736c4bf9e7
parent47843efcf6d264a472744e21b7e85c40757f4a8f
[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: 212265
compiler-rt/test/msan/no_sanitize_memory_prop.cc
llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp