On AArch64, use clone() instead of fork()

Patch by Gideon Billings.

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

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209641 91177308-0d34-0410-b5e6-96231b3b80d8
[asancov] Write coverage directly to a memory-mapped file.

This way does not require a __sanitizer_cov_dump() call. That's
important on Android, where apps can be killed at arbitrary time.

We write raw PCs to disk instead of module offsets; we also write
memory layout to a separate file. This increases dump size by the
factor of 2 on 64-bit systems.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209653 91177308-0d34-0410-b5e6-96231b3b80d8
[asan] Disable dlopen interceptor on Android.

It can not work, as libdl is always first in the lookup order,
even ahead of LD_PRELOAD-ed libraries.


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


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209658 91177308-0d34-0410-b5e6-96231b3b80d8
[asan] use relative line numbers in tests

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209699 91177308-0d34-0410-b5e6-96231b3b80d8
[asan] Add a few stubs to fix windows build.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209717 91177308-0d34-0410-b5e6-96231b3b80d8
[asan] Add a dll thunk for __sanitizer_cov_module_init.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209718 91177308-0d34-0410-b5e6-96231b3b80d8
[ASan/Win] Use clang rather than clang-cl by default for lit tests. Make Windows-only tests explicitly use clang-cl.

Reviewed at http://reviews.llvm.org/D3893

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209719 91177308-0d34-0410-b5e6-96231b3b80d8
[ASan tests] Move one more test to POSIX-only directory

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209722 91177308-0d34-0410-b5e6-96231b3b80d8
[asan] Fix android test setup.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209724 91177308-0d34-0410-b5e6-96231b3b80d8
[ASan tests] Exclude some tests from Windows runs

Some features are not supported yet and some are not planned to be fixed soon

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209733 91177308-0d34-0410-b5e6-96231b3b80d8
[asan] XFAIL:android several tests.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209734 91177308-0d34-0410-b5e6-96231b3b80d8
[sanitizer] Replace -lpthread with -pthread in tests.

-lpthread does not work on Android.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209735 91177308-0d34-0410-b5e6-96231b3b80d8
[asan] Mass-xfail 17 tests on Android.

This makes check-asan pass on Android, which should help prevent future
regressions.

https://code.google.com/p/address-sanitizer/issues/detail?id=316



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209736 91177308-0d34-0410-b5e6-96231b3b80d8
Refactor addsf3.c and adddf3.c.

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


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209740 91177308-0d34-0410-b5e6-96231b3b80d8
Refactor muldf3 and mulsf3.

Patch from: GuanHong Liu
Differential Revision: http://reviews.llvm.org/D3886


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209741 91177308-0d34-0410-b5e6-96231b3b80d8
tsan: do not use 64-bit atomics in allocator code
64-bit atomics make porting of asan to 32-bits platforms problematic.



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209744 91177308-0d34-0410-b5e6-96231b3b80d8
tsan: refactor suppressions machinery
The refactoring makes suppressions more flexible
and allow to suppress based on arbitrary number of stacks.
In particular it fixes:
https://code.google.com/p/thread-sanitizer/issues/detail?id=64
"Make it possible to suppress deadlock reports by any stack (not just first)"




git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209757 91177308-0d34-0410-b5e6-96231b3b80d8
[Sanitizer] Always prefer cached contents of /proc/self/exe if it's available

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209773 91177308-0d34-0410-b5e6-96231b3b80d8
Moved the builtins documentation to lib/builtins/

And fixed typos in the ASan readme.

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

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