Alexey Samsonov
67c8e14760
Fix a typo from r172289
...
llvm-svn: 172830
2013-01-18 17:03:47 +00:00
Alexey Samsonov
b068483d4d
CMake: Generalize build rules for different arches for sanitizer_common, asan, ubsan
...
llvm-svn: 172829
2013-01-18 16:51:07 +00:00
Alexander Potapenko
b4ba995366
[ASan] Fix the log_path option to use different log files for parent and child processes after fork().
...
llvm-svn: 172828
2013-01-18 16:44:27 +00:00
Evgeniy Stepanov
8a3666f63c
[sanitizer] Workaround broken mktemp on certain platforms.
...
llvm-svn: 172827
2013-01-18 16:24:50 +00:00
Alexey Samsonov
163ab9d0a5
CMake: create AddCompilerRT module and implement convenience add_compiler_rt_object_library function
...
llvm-svn: 172826
2013-01-18 16:05:21 +00:00
Evgeniy Stepanov
c8cde8d736
[sanitizer] Enable cpplint for .inc files.
...
llvm-svn: 172825
2013-01-18 15:53:43 +00:00
Evgeniy Stepanov
01671c33ff
[sanitizer] lint
...
llvm-svn: 172817
2013-01-18 13:12:56 +00:00
Alexey Samsonov
4b0ee8ecd5
CMake: start to generalize rules for non-x86 architectures
...
llvm-svn: 172816
2013-01-18 13:10:42 +00:00
Kostya Serebryany
84c7e47b5c
[asan] kill some dead code
...
llvm-svn: 172815
2013-01-18 13:01:44 +00:00
Evgeniy Stepanov
a6c4a387ee
[sanitizer] Rename 2 files *.h->*.inc as appropriate.
...
Also add a missing include.
llvm-svn: 172814
2013-01-18 13:01:18 +00:00
Alexey Samsonov
193b45f4fe
CMake variables renaming: X86_64->x86_64 I386->i386
...
llvm-svn: 172812
2013-01-18 12:45:44 +00:00
Evgeniy Stepanov
518a135ffe
[sanitizer] Remove an unused variable.
...
llvm-svn: 172811
2013-01-18 12:32:02 +00:00
Alexander Potapenko
a6d40f638e
[ASan] Fix compilation on Mac.
...
llvm-svn: 172810
2013-01-18 12:31:16 +00:00
Evgeniy Stepanov
91181eaa59
[sanitizer] Fix Mac build.
...
llvm-svn: 172809
2013-01-18 11:38:23 +00:00
Kostya Serebryany
63c36bbe5e
[asan] fix two off-by-one errors that seem to affect only PowerPC because only there the stack top may be equal to the address space top. Noted by Andreas Schwab in http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55975#c11 . Also make swapcontext interceptor a bit more robust
...
llvm-svn: 172807
2013-01-18 11:30:36 +00:00
Evgeniy Stepanov
222076e972
[sanitizer] Common *scanf interceptors.
...
llvm-svn: 172805
2013-01-18 11:17:23 +00:00
Alexander Potapenko
51794a390f
Remove references to pthread_workqueue_additem_np(), which isn't in the official libdispatch API.
...
llvm-svn: 172802
2013-01-18 10:27:31 +00:00
Alexey Samsonov
9585613334
[ASan] fixes for Android build
...
llvm-svn: 172800
2013-01-18 09:20:06 +00:00
Kostya Serebryany
69fe0ba415
[sanitizer] reapply r172719, r172721-172723, r172725, and also fix the warning on Mac.
...
llvm-svn: 172791
2013-01-18 06:43:13 +00:00
Jakob Stoklund Olesen
7956e0094d
Revert r172719, r172721-172723, and r172725.
...
The r172719 patch broke the build on Mac, the others depended on it.
compiler-rt/lib/asan/asan_interceptors.cc:78:13: error: unused function
'SetThreadName' [-Werror,-Wunused-function]
static void SetThreadName(const char *name) {
Orignal headlines:
[asan] attempting to fix the Mac build
[asan] restructure read/pread/pread64 tests
[sanitizer] move write/pwrite/pwrite64 interceptors to common
[msan] start using common interceptors in msan
[tsan] move prctl interceptor from asan to common_interceptors thus enabling it for tsan too
llvm-svn: 172763
2013-01-17 22:51:56 +00:00
Peter Collingbourne
6600516a58
Have ReExec read environment from /proc/self/environ
...
It is possible for ReExec to be called before the C standard library
has initialised itself sufficiently for execv to work properly.
Fix this by parsing the environment ourselves and using execve.
Differential Revision: http://llvm-reviews.chandlerc.com/D304
llvm-svn: 172748
2013-01-17 19:50:42 +00:00
Will Dietz
149d952e86
[ubsan] Add SANITIZER_INTERFACE_ATTRIBUTE to __ubsan_vptr_type_cache
...
Missed this one previously.
llvm-svn: 172730
2013-01-17 17:14:12 +00:00
Alexey Samsonov
4f1885a109
[ASan] minor changes to swapcontext handling: don't clear shadow memory if context stack is too large
...
llvm-svn: 172727
2013-01-17 15:45:28 +00:00
Alexey Samsonov
708442294e
ASan: Allow __asan_get_allocated_size(malloc(0)) to be 0 or 1
...
llvm-svn: 172726
2013-01-17 15:26:47 +00:00
Kostya Serebryany
87eb229241
[asan] attempting to fix the Mac build
...
llvm-svn: 172725
2013-01-17 15:14:20 +00:00
Kostya Serebryany
709d0dac81
[asan] restructure read/pread/pread64 tests
...
llvm-svn: 172723
2013-01-17 14:58:29 +00:00
Kostya Serebryany
5cdd91fc43
[sanitizer] move write/pwrite/pwrite64 interceptors to common
...
llvm-svn: 172722
2013-01-17 14:48:03 +00:00
Kostya Serebryany
b114d01849
[msan] start using common interceptors in msan
...
llvm-svn: 172721
2013-01-17 13:57:07 +00:00
Evgeniy Stepanov
e3a325197a
[msan] More interceptors.
...
strtod and friends, dladdr, getrusage
llvm-svn: 172720
2013-01-17 13:42:17 +00:00
Kostya Serebryany
f7f5566055
[tsan] move prctl interceptor from asan to common_interceptors thus enabling it for tsan too
...
llvm-svn: 172719
2013-01-17 13:38:16 +00:00
Alexey Samsonov
769af07372
[ASan] fix __asan_get_ownership(p) and __asan_get_allocated_size(p) for the p = malloc(0)
...
llvm-svn: 172717
2013-01-17 13:25:17 +00:00
Kostya Serebryany
125e26d49b
[tsan] add write_range/read_range hooks to common interceptors called from tsan (to find races on read/pread/etc)
...
llvm-svn: 172714
2013-01-17 13:18:40 +00:00
Kostya Serebryany
93ebdb5d64
[sanitizer] a bit more unification for interceptors (merge read/pread/pread64 in asan and tsan)
...
llvm-svn: 172713
2013-01-17 13:09:00 +00:00
Dmitry Vyukov
59e5d358db
tsan: fix a bug
...
llvm-svn: 172712
2013-01-17 12:59:10 +00:00
Dmitry Vyukov
e528f67c14
tsan: fix a bug
...
llvm-svn: 172710
2013-01-17 12:13:03 +00:00
Dmitry Vyukov
7f4603200f
asan: fix ARM build
...
llvm-svn: 172613
2013-01-16 14:35:13 +00:00
Kostya Serebryany
b7062cec53
[asan] asan_allocator2: fix the memalign handling (clear the first word of allocated chunk in case there is an old memalign magic)
...
llvm-svn: 172603
2013-01-16 09:12:14 +00:00
Kostya Serebryany
d8b1f78296
[asan] enable asan_allocator2 by default on Linux. Will enable it on other platforms and remove the old one later, after additional testing. The new allocator is much faster and uses less memory
...
llvm-svn: 172531
2013-01-15 13:57:39 +00:00
Dmitry Vyukov
9ab63f68fc
asan: fix standalone malloc implementation
...
llvm-svn: 172529
2013-01-15 12:57:02 +00:00
Dmitry Vyukov
0d46b2b95e
asan: fix the constant for new allocator cache
...
llvm-svn: 172526
2013-01-15 10:45:18 +00:00
Kostya Serebryany
c4bb752e3b
[sanitizer] hide PR_SET_NAME under an ifdef (for older kernels)
...
llvm-svn: 172523
2013-01-15 09:03:23 +00:00
Dmitry Vyukov
2854326db6
asan: correct non-temporal prefetch for memory allocator
...
llvm-svn: 172522
2013-01-15 09:03:20 +00:00
Dmitry Vyukov
45a698eb58
asan: faster thead-local cache for memory allocator
...
llvm-svn: 172521
2013-01-15 09:02:20 +00:00
Dmitry Vyukov
1f48c1a9a1
asan: fix lint warnings
...
llvm-svn: 172520
2013-01-15 08:51:10 +00:00
Dmitry Vyukov
74764617d7
asan: fix bugs in the testlib
...
llvm-svn: 172519
2013-01-15 08:33:41 +00:00
Dmitry Vyukov
1e4b54d196
asan: rename the file (it's not 64-bit specific anymore)
...
llvm-svn: 172518
2013-01-15 08:04:27 +00:00
Will Dietz
9d3209b5c7
[ubsan] Use __sanitizer::atomic_exchange(), prefer shared impl.
...
Specify weaker memory order in case we optimize for it in the future,
presently still doing same __sync_lock_test_and_set() as before.
Change suggested by Alexey Samsonov, thanks!
llvm-svn: 172429
2013-01-14 16:13:52 +00:00
Evgeniy Stepanov
99d91289b6
Move large part of asan_test_utils.h to sanitizer_common.
...
Move my_rand() to the common header.
This lets us avoid the use of rand_r in sanitizer_common tests.
There is no rand_r on Android.
llvm-svn: 172421
2013-01-14 15:12:26 +00:00
Alexey Samsonov
4e958e5ddb
Fix-up copypasto from r172410
...
llvm-svn: 172419
2013-01-14 14:52:35 +00:00
Dmitry Vyukov
ff19809a3d
asan: fix windows build
...
llvm-svn: 172415
2013-01-14 14:28:06 +00:00