diff options
author | Alexander Potapenko <glider@google.com> | 2014-03-26 11:18:25 +0000 |
---|---|---|
committer | Alexander Potapenko <glider@google.com> | 2014-03-26 11:18:25 +0000 |
commit | 7caa0b9e369d0861797acf9b31bb958ac820c4be (patch) | |
tree | 5f7aa5a365ae0c1602fdfa4baa7c5b9312df5c11 | |
parent | 85f482b02fa9a52a82b63cf5e7ee4826e287f058 (diff) | |
download | bcm5719-llvm-7caa0b9e369d0861797acf9b31bb958ac820c4be.tar.gz bcm5719-llvm-7caa0b9e369d0861797acf9b31bb958ac820c4be.zip |
[ASan] Fix a thinko spotted by Evgeniy Stepanov: use REAL(memcpy) on non-OSX systems.
llvm-svn: 204794
-rw-r--r-- | compiler-rt/lib/asan/asan_interceptors.cc | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/compiler-rt/lib/asan/asan_interceptors.cc b/compiler-rt/lib/asan/asan_interceptors.cc index 41d6e588a61..ddd92c7306b 100644 --- a/compiler-rt/lib/asan/asan_interceptors.cc +++ b/compiler-rt/lib/asan/asan_interceptors.cc @@ -384,10 +384,7 @@ INTERCEPTOR(void*, memcpy, void *to, const void *from, uptr size) { ASAN_READ_RANGE(from, size); ASAN_WRITE_RANGE(to, size); } - // Interposing of resolver functions is broken on Mac OS 10.7 and 10.8, so - // calling REAL(memcpy) here leads to infinite recursion. - // See also http://code.google.com/p/address-sanitizer/issues/detail?id=116. - return internal_memcpy(to, from, size); + return REAL(memcpy)(to, from, size); #else // At least on 10.7 and 10.8 both memcpy() and memmove() are being replaced // with WRAP(memcpy). As a result, false positives are reported for memmove() |