tsan: fix strerror interceptor (eliminate false positives)


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193070 91177308-0d34-0410-b5e6-96231b3b80d8
[asan] count the size of QuarantineBatch in the total Quarantine size; make QuarantineBatch fit into 8K, fix a MSVC compile warning

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193072 91177308-0d34-0410-b5e6-96231b3b80d8
Use internal_memset to initialize this variable.

Otherwise, the compiler may use memset in non-optimized builds, which is
forbidden in the nolibc part of the runtime.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193098 91177308-0d34-0410-b5e6-96231b3b80d8
[lsan] When detect_leaks=false, be completely silent.

In particular, don't make a fuss if we're passed a malformed suppressions file,
or if we have trouble identifying ld.so. Also, make LSan interface functions
no-ops in this case.

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


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193158 91177308-0d34-0410-b5e6-96231b3b80d8
[msan] Drain allocator cache when leaving thread.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193163 91177308-0d34-0410-b5e6-96231b3b80d8
Make sure ASan always emits an error summary if it reports an error.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193229 91177308-0d34-0410-b5e6-96231b3b80d8
Hoist the addition of the prefix "SUMMARY: " from
__sanitizer_report_error_summary to ReportErrorSummary.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193231 91177308-0d34-0410-b5e6-96231b3b80d8
Continue to keep 'SUMMARY: ' prefix in lsan. Whoops!


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193232 91177308-0d34-0410-b5e6-96231b3b80d8
tsan: fix linux syscall hooks
the file references non-existent arguments and breaks build



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193234 91177308-0d34-0410-b5e6-96231b3b80d8
tsan: parse symbolize/external_symbolizer_path common flags



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193236 91177308-0d34-0410-b5e6-96231b3b80d8
[sanitizer] Intercept ether_* functions.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193241 91177308-0d34-0410-b5e6-96231b3b80d8
[sanitizer] Fix OSX build.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193244 91177308-0d34-0410-b5e6-96231b3b80d8
[ASan] ASan can be combined with LSan and UBSan, so export symbol from them as well.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193245 91177308-0d34-0410-b5e6-96231b3b80d8
Introduce an operator new for LowLevelAllocator, and convert most users to it.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193308 91177308-0d34-0410-b5e6-96231b3b80d8
[msan] Change wording in the invalid origin message.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193335 91177308-0d34-0410-b5e6-96231b3b80d8
[msan] Fix invalid origin copying.

Origin copying may destroy valid origin info. This is caused by
__msan_copy_origin widening the address range to the nearest 4-byte aligned
addresses both on the left and on the right. If the target buffer is
uninitialized and the source is fully initialized, this will result in
overriding valid origin of target buffer with stale (possibly 0) origin of the
source buffer.

With this change the widened origin is copied only if corresponding shadow
values are non zero.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193338 91177308-0d34-0410-b5e6-96231b3b80d8
[msan] Unpoison errno in common interceptors.


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


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193348 91177308-0d34-0410-b5e6-96231b3b80d8
Switch __ARM_ARCH_7S__ to __ARM_ARCH_EXT_IDIV__ for use of sdiv/udiv assembly.

__ARM_ARCH_EXT_IDIV__ is the define that ARM is using to indicate the presence
of hardware integer divide (sdiv/udiv). Previously, this code was only being
invoked for processors marked 7S. We now can correctly generate hardware
divides on cortex-a15 devices.

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