[msan] Update origin for the entire destination range on memory store.
authorEvgeniy Stepanov <eugeni.stepanov@gmail.com>
Wed, 21 Jan 2015 13:21:31 +0000 (13:21 +0000)
committerEvgeniy Stepanov <eugeni.stepanov@gmail.com>
Wed, 21 Jan 2015 13:21:31 +0000 (13:21 +0000)
commit79ca0fd1a02132ef3d85aacbfc4ab5eab5911c08
tree6b2813a38d90d4d32bb684bb65e681300d442979
parent5cfebdde2bf73e610146aff74067e538d5a89df3
[msan] Update origin for the entire destination range on memory store.

Previously we always stored 4 bytes of origin at the destination address
even for 8-byte (and longer) stores.

This should fix rare missing, or incorrect, origin stacks in MSan reports.

llvm-svn: 226658
compiler-rt/test/msan/origin-store-long.cc [new file with mode: 0644]
llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
llvm/test/Instrumentation/MemorySanitizer/store-long-origin.ll [new file with mode: 0644]