[msan] Avoid redundant origin stores.
authorEvgeniy Stepanov <eugeni.stepanov@gmail.com>
Thu, 17 Jul 2014 09:10:37 +0000 (09:10 +0000)
committerEvgeniy Stepanov <eugeni.stepanov@gmail.com>
Thu, 17 Jul 2014 09:10:37 +0000 (09:10 +0000)
commitc8227aa14df8bb0d1d92ecfa2ccf48830dd7709d
treeacf651e354ae12c03bdc015cb075bd385c4e561c
parent01f56862982c958ad73b4d4b60f0c59d8f383b23
[msan] Avoid redundant origin stores.

Origin is meaningless for fully initialized values. Avoid
storing origin for function arguments that are known to
be always initialized (i.e. shadow is a compile-time null
constant).

This is not about correctness, but purely an optimization.
Seems to affect compilation time of blacklisted functions
significantly.

llvm-svn: 213239
llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
llvm/test/Instrumentation/MemorySanitizer/msan_basic.ll