[asan] relax the checks inside __sanitizer_annotate_contiguous_container: they are too optimistic due to https://code.google.com/p/address-sanitizer/issues/detail?id=258.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@199715 91177308-0d34-0410-b5e6-96231b3b80d8
[asan] one more test for https://code.google.com/p/address-sanitizer/issues/detail?id=258

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@199723 91177308-0d34-0410-b5e6-96231b3b80d8
[Sanitizer] Support %.*s in internal printf implementation. Patch by Yuri Gribov.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@199724 91177308-0d34-0410-b5e6-96231b3b80d8
[asan] Enable frame pointer based unwinder on ARM.

This code works with AAPCS-style {fp, lr} frames. Unlike linux perf, it does
not unwind through code compiled with -mapcs-frame (which Clang does not
support anyway).



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

Intercept and sanitize arguments passed to printf functions in ASan and TSan
(don't do this in MSan for now). The checks are controlled by runtime flag
(off by default for now).

Patch http://llvm-reviews.chandlerc.com/D2480 by Yuri Gribov!


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@199729 91177308-0d34-0410-b5e6-96231b3b80d8
Fix unused function warning from r199729

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@199730 91177308-0d34-0410-b5e6-96231b3b80d8
Macho-embedded: update build script for newer Clang behaviour.
    
Clang now uses the *-apple-macho triples for embedded targets using MachO. The
environment makes less pretences to be running an actual Mach kernel with all
the support that would imply, so a few changes are needed to the build scripts:
    
+ The Apple way of detecting endianness applies in all cases so drop the
  __MACH__ test.
+ A quick rename since "darwin_embedded" no longer makes any sense. If there's
  no Mach going on, there's certainly no Darwin.
+ Change how we test for support for a platform. The functions we build don't
  need any SDK support (stdio.h, ...) so we don't need to check for it.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@199731 91177308-0d34-0410-b5e6-96231b3b80d8
[Sanitizer] Update file names now that we intercept both scanf and printf

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@199735 91177308-0d34-0410-b5e6-96231b3b80d8
[Sanitizer] try harder to fix Werror build break after r199729

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