[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.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@212265 91177308-0d34-0410-b5e6-96231b3b80d8
Revert of r212265.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@212266 91177308-0d34-0410-b5e6-96231b3b80d8
[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.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@212268 91177308-0d34-0410-b5e6-96231b3b80d8
[asan] Fix unused variable warning.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@212272 91177308-0d34-0410-b5e6-96231b3b80d8
[asan] i686-linux-android support.

Large part of this change is required due to
  https://code.google.com/p/android/issues/detail?id=61799
dlsym() crashes when symbol resolution fails, which means
we have to limit the interceptor list instead of relying on
runtime detection.

There are minor differencies in system headers, too.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@212273 91177308-0d34-0410-b5e6-96231b3b80d8
[sanitizer] support c11 aligned_alloc, Linux only for now

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@212322 91177308-0d34-0410-b5e6-96231b3b80d8
[msan] Reformat one source file.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@212329 91177308-0d34-0410-b5e6-96231b3b80d8
[msan] Better hash function for chained origins.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@212440 91177308-0d34-0410-b5e6-96231b3b80d8
[msan] Increase hash table size for chained origins.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@212448 91177308-0d34-0410-b5e6-96231b3b80d8
[asan] Remove runtime assembly helpers.

Remove helper functions that were used in assembly instrumentation.

Patch by Yuri Gorshenin.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@212456 91177308-0d34-0410-b5e6-96231b3b80d8
[ASan/Win] Unbreak the build after r211216

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@212465 91177308-0d34-0410-b5e6-96231b3b80d8
Generalize sanitizer allocator public interface.

Introduce new public header <sanitizer/allocator_interface.h> and a set
of functions __sanitizer_get_ownership(), __sanitizer_malloc_hook() etc.
that will eventually replace their tool-specific equivalents
(__asan_get_ownership(), __msan_get_ownership() etc.). Tool-specific
functions are now deprecated and implemented as stubs redirecting
to __sanitizer_ versions (which are implemented differently in each tool).

Replace all uses of __xsan_ versions with __sanitizer_ versions in unit
and lit tests.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@212469 91177308-0d34-0410-b5e6-96231b3b80d8
[ASan] Clean up leftovers from assembly instrumentation helpers

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@212471 91177308-0d34-0410-b5e6-96231b3b80d8
[Sanitizer] Move test for malloc/free hooks under test/sanitizer_common

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@212474 91177308-0d34-0410-b5e6-96231b3b80d8
Merge pull request #19 from llvm-mirror/master

git pull