Remove the sysroot restriction from building GCDAProfiling.c.

We really need the C standard library to be available to implement the
profiling runtime library reasonably, and replicating everything in the
SDKs tree really isn't addressing any problems we have. Notably, all of
the sanitizer runtimes take the same approach, and this isn't a library
which could end up in a bootstrapping problem where the system headers
aren't even available.

This will hopefully prevent subsequent changes which start using various
other bits of C standard library to make things more debuggable.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@184798 91177308-0d34-0410-b5e6-96231b3b80d8
Address a few of the issues in GCDAProfiling I noted when looking
through Bill's patch:

1) Correctly test the file descriptor after the sceond attempt at
   creating the file.
2) Make the filename a global so that we can issue error messages from
   other routines.
3) Check errno in several places and print it out so that errors are
   easier to track down.

I don't really expect any of these to fix the current failures I'm
seeing, but I'm hopeful they'll at least let me debug them.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@184799 91177308-0d34-0410-b5e6-96231b3b80d8
Remove the sysroot (or isysroot) restriction from the GCDAProfile.c
runtime in the Makefile build system as well. Sorry for the temporary
fallout, it took me a while to find these bits.

Bill, I'm not at all confident of the change for Darwin and iOS, but as
discussed we're completely blocked on fixing this. Anyways, please
review and let me know if this will work for you guys. If necessary,
I can work with you to rig up an errno.h stub for Darwin, but I expect
that to be... moderately challenging.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@184805 91177308-0d34-0410-b5e6-96231b3b80d8
Temporarily disable building the armv7 variants of profile_ios on
darwin.

After talking with Jim Grosbach pretty extensively, he was OK with me
punting on this to the Apple folks.

We agreed that the correct fix is either to extend the fake SDK headers
in compiler-rt to support the rest of libc needed by GCDAProfiling.c or
to teach the make build to test for the existence of a suitable SDK on
the system prior to building it. Both of these require someone with
access to the SDK which I don't have, and the latter (my preferred
solution) requires understanding the strange compiler-rt make build
system. Punting to Dan Dunbar or one of the others who support this
stuff on ios to write the appropriate fix, and we can let the build bots
proceed in the mean time.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@184816 91177308-0d34-0410-b5e6-96231b3b80d8
[sanitizer] Move log_path to common flag and use it in MSan.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@184836 91177308-0d34-0410-b5e6-96231b3b80d8
[lsan] Define interceptors more correctly. Also, always clear allocated memory.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@184849 91177308-0d34-0410-b5e6-96231b3b80d8
tsan: add missing __attribute__((visibility("default"))) to interface functions


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@184858 91177308-0d34-0410-b5e6-96231b3b80d8
Don't use 'errno.h' on Apple just yet. This breaks for some of our buildbots.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@184878 91177308-0d34-0410-b5e6-96231b3b80d8
Fix a use after free I introduced and that Bill caught in code review
(thanks!) by deferring the free of the filename until we finish writing
the coverage data to that file.

Bill, let me know if you'd prefer a different approach!

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@184895 91177308-0d34-0410-b5e6-96231b3b80d8
[sanitizer] Fix build with OSS4 kernel headers.

This fixes PR16453.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@184925 91177308-0d34-0410-b5e6-96231b3b80d8
[sanitizer] Reformat line >80 chars.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@184926 91177308-0d34-0410-b5e6-96231b3b80d8
Revert the Darwin half of r184805: "Remove the sysroot (or isysroot)
restriction from the GCDAProfile.c"

Bill added a much more effective way of coping with the use of errno and
other system interactions for Darwin for now by disabling it on that
platform. Building against the SDK stuff is more fundamental to the
darwin build process.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@184929 91177308-0d34-0410-b5e6-96231b3b80d8
[asan] initialize fake_stack lazily and increase its maximal size. This makes -fsanitize=address,use-after-return more robust: all SPEC tests pass now. In the default mode thread stacks become a bit smaller.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@184934 91177308-0d34-0410-b5e6-96231b3b80d8
[sanitizer] readdir and readdir_r interceptors.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@184950 91177308-0d34-0410-b5e6-96231b3b80d8
[tsan] Move some suppressions-related code to common.

Factor out code to be reused in LSan. Also switch from linked list to vector.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@184957 91177308-0d34-0410-b5e6-96231b3b80d8
Revert "Temporarily disable building the armv7 variants of profile_ios on"

This reverts commit r184816.  With Chandler's change in r184929, this should
no longer be necessary.

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

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@184963 91177308-0d34-0410-b5e6-96231b3b80d8
[MSan] Rename __msan_unpoision_param to __msan::UnpoisonParam - it shouldn't be in interface

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@185062 91177308-0d34-0410-b5e6-96231b3b80d8
[TSan] try to fix Go build

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@185063 91177308-0d34-0410-b5e6-96231b3b80d8
[LSan] Add the way to disable LSan at link time

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