Fix building 32-bit common sanitizer tests on FreeBSD 9.2

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209804 91177308-0d34-0410-b5e6-96231b3b80d8
Support getting executable's name for sanitizers needs on FreeBSD

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209805 91177308-0d34-0410-b5e6-96231b3b80d8
[ASan Win tests] Add a couple more memcpy/memset tests

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209806 91177308-0d34-0410-b5e6-96231b3b80d8
tsan: refactor storage of meta information for heap blocks and sync objects
The new storage (MetaMap) is based on direct shadow (instead of a hashmap + per-block lists).
This solves a number of problems:
 - eliminates quadratic behaviour in SyncTab::GetAndLock (https://code.google.com/p/thread-sanitizer/issues/detail?id=26)
 - eliminates contention in SyncTab
 - eliminates contention in internal allocator during allocation of sync objects
 - removes a bunch of ad-hoc code in java interface
 - reduces java shadow from 2x to 1/2x
 - allows to memorize heap block meta info for Java and Go
 - allows to cleanup sync object meta info for Go
 - which in turn enabled deadlock detector for Go




git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209810 91177308-0d34-0410-b5e6-96231b3b80d8
tsan: allow to write memory profile to stdout/stderr



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209811 91177308-0d34-0410-b5e6-96231b3b80d8
tsan: write memory profile in one line (which is much more readable)
e.g.:
RSS 420 MB: shadow:35 meta:231 file:2 mmap:129 trace:19 heap:0 other:0 nthr=1/31
RSS 365 MB: shadow:3 meta:231 file:2 mmap:106 trace:19 heap:0 other:0 nthr=1/31
RSS 429 MB: shadow:23 meta:234 file:2 mmap:143 trace:19 heap:6 other:0 nthr=1/31
RSS 509 MB: shadow:78 meta:241 file:2 mmap:147 trace:19 heap:19 other:0 nthr=1/31




git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209813 91177308-0d34-0410-b5e6-96231b3b80d8
[sanitizer] Require that options end with '='.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209814 91177308-0d34-0410-b5e6-96231b3b80d8
[sanitizer] Add coverage_dir flag.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209815 91177308-0d34-0410-b5e6-96231b3b80d8
[sanitizer] Update flags test.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209818 91177308-0d34-0410-b5e6-96231b3b80d8
light up sanitizers for ARM

You can expect the sanitizers to be built under any of the following conditions:

1) CMAKE_C_COMPILER is GCC built to cross-compile to ARM
2) CMAKE_C_COMPILER is Clang built to cross-compile to ARM (ARM is default target)
3) CMAKE_C_COMPILER is Clang and CMAKE_C_FLAGS contains -target and --sysroot

Differential Revision: http://reviews.llvm.org/D3794

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209835 91177308-0d34-0410-b5e6-96231b3b80d8
Revert "light up sanitizers for ARM"

This commit broke the Windows build, where CMAKE_C_COMPILER can
compile and link with -march=armv7-a but the just-built-clang
cannot.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209851 91177308-0d34-0410-b5e6-96231b3b80d8
light up sanitizers for ARM, take 2

Differential Revision: http://reviews.llvm.org/D3794

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209856 91177308-0d34-0410-b5e6-96231b3b80d8
Mark unstable tests as Unsupported on ARM

This is half the patch from: http://reviews.llvm.org/D3857

It lets us get deterministic results from the rest of the test suite.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209861 91177308-0d34-0410-b5e6-96231b3b80d8
Mark currently failing ARM tests with XFAIL.

Differential Revision: http://reviews.llvm.org/D3857

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209862 91177308-0d34-0410-b5e6-96231b3b80d8
[asan] Enable ASan on PowerPC.

Patch by Peter Bergner.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209879 91177308-0d34-0410-b5e6-96231b3b80d8
[ASan Win] DLL thunk: make each INTERFACE_FUNCTION unique to prevent ICF linker optimizations

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