[msan] Disable mlock/mlockall to work around a linux kernel bug.

The same logic is present in ASan and TSan.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193755 91177308-0d34-0410-b5e6-96231b3b80d8
[ASan] Make asan_symbolize.py fall back to ASAN_SYMBOLIZER_PATH (which is used when ASAN_OPTIONS=symbolize=1) if LLVM_SYMBOLIZER_PATH is empty.



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193758 91177308-0d34-0410-b5e6-96231b3b80d8
[msan] Intercept dlerror.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193760 91177308-0d34-0410-b5e6-96231b3b80d8
[libsanitizer] Define SANITIZER_IOS when building for iOS or iOS simulator.
Do not use struct stat64 and struct statfs64 when building for iOS, where __DARWIN_ONLY_64_BIT_INO_T is set to 1.




git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193775 91177308-0d34-0410-b5e6-96231b3b80d8
[Sanitizer] Add Symbolizer::AddHooks() and use it in TSan and MSan.

Summary:
TSan and MSan need to know if interceptor was called by the
user code or by the symbolizer and use pre- and post-symbolization hooks
for that. Make Symbolizer class responsible for calling these hooks instead.
This would ensure the hooks are only called when necessary (during
in-process symbolization, they are not needed for out-of-process) and
save specific sanitizers from tracing all places in the code where symbolization
will be performed.

Reviewers: eugenis, dvyukov

Reviewed By: eugenis

CC: llvm-commits

Differential Revision: http://llvm-reviews.chandlerc.com/D2067

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193807 91177308-0d34-0410-b5e6-96231b3b80d8
Consistently use StackTrace::PrintStack in ASan, LSan and MSan

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193834 91177308-0d34-0410-b5e6-96231b3b80d8
[sanitizer] Enhance io_submti syscall handler.


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