Eric Fiselier
30130f2070
[compiler-rt] Add common interceptor for wcrtomb.
...
Summary: Currently there is a libc++ test failing under MSAN because wcrtomb is not intercepted. This patch adds an interceptor for it.
Reviewers: samsonov, eugenis
Subscribers: tberghammer, danalbert, srhines, llvm-commits
Differential Revision: http://reviews.llvm.org/D12311
llvm-svn: 245994
2015-08-26 00:14:08 +00:00
Alexey Samsonov
356ac539c3
[CMake] Don't build libc++ with MSan-with-calls instrumentation.
...
Instead, refactor the build rules so that we build libc++ with MSan for
each supported architecture.
llvm-svn: 243785
2015-07-31 21:15:34 +00:00
Filipe Cabecinhas
7af0a1cb84
CMake: Stop using LLVM's custom parse_arguments. NFC
...
Summary:
Use CMake's cmake_parse_arguments() instead.
It's called in a slightly different way, but supports all our use cases.
It's in CMake 2.8.8, which is our minimum supported version.
CMake 3.0 doc (roughly the same. No direct link to 2.8.8 doc):
http://www.cmake.org/cmake/help/v3.0/module/CMakeParseArguments.html?highlight=cmake_parse_arguments
Since I was already changing these calls, I changed ARCH and LIB into
ARCHS and LIBS to make it more clear that they're lists of arguments.
Reviewers: eugenis, samsonov, beanz
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D10529
llvm-svn: 240120
2015-06-19 03:39:24 +00:00
Alexey Samsonov
27f4571a5a
[Sanitizer] Fix/suppress compiler warnings in unit tests.
...
llvm-svn: 231293
2015-03-04 21:54:20 +00:00
Evgeniy Stepanov
504f0987fe
[msan] Fix MsanTest to pass in track_origins=2 mode.
...
llvm-svn: 230639
2015-02-26 15:19:33 +00:00
Mohit K. Bhakkad
b40fed04e7
[MSan][MIPS] Fix for some failing tests on MIPS64
...
Enabling internal ptrace for mips, which fixes some
ptrace related tests. Along with this fixing some
other failures.
Reviewers: Reviewers: eugenis, kcc, samsonov
Subscribers: dsanders, sagar, lldb-commits
Differential Revision: http://reviews.llvm.org/D7332
llvm-svn: 229656
2015-02-18 09:24:19 +00:00
Viktor Kutuzov
dd82236273
[Msan] Fix the unit tests' PathToLoadable() to work on FreeBSD
...
Differential Revision: http://reviews.llvm.org/D7587
llvm-svn: 229491
2015-02-17 12:52:08 +00:00
Evgeniy Stepanov
5c6de59ec4
[msan] Fix UnalignedLoad/UnalignedStore tests.
...
Add alignment attrubutes to ensure that the tests actually test unaligned
access irrespective of the stack layout.
llvm-svn: 229398
2015-02-16 15:05:14 +00:00
Viktor Kutuzov
37a79210cb
[Msan] Improve the EXPECT_NOT_POISONED() macro to provide the original line number
...
Differential Revision: http://reviews.llvm.org/D7341
llvm-svn: 229389
2015-02-16 13:30:52 +00:00
Viktor Kutuzov
b1f54eeed4
[Msan] Make unit tests that use mempcpy() passing on FreeBSD
...
Differential Revision: http://reviews.llvm.org/D7588
llvm-svn: 229388
2015-02-16 13:26:32 +00:00
Viktor Kutuzov
1a55126699
[Msan] Disable the fgetgrent_r unit test on FreeBSD
...
Differential Revision: http://reviews.llvm.org/D7343
llvm-svn: 229387
2015-02-16 13:24:21 +00:00
Viktor Kutuzov
f886b38a0e
[Msan] Disable fcvt unit tests on FreeBSD
...
Differential Revision: http://reviews.llvm.org/D7340
llvm-svn: 229386
2015-02-16 13:22:07 +00:00
Viktor Kutuzov
4772b9c843
[Msan] Fix the getgrnam_r unit test to pass on FreeBSD
...
Differential Revision: http://reviews.llvm.org/D7339
llvm-svn: 229385
2015-02-16 13:19:21 +00:00
Viktor Kutuzov
2e19f31560
[Msan] Fix the sigaction unit test to build on FreeBSD
...
Differential Revision: http://reviews.llvm.org/D7335
llvm-svn: 229384
2015-02-16 13:15:58 +00:00
Viktor Kutuzov
7eff71a474
[Msan] Fix the ether unit test to build on FreeBSD
...
Differential Revision: http://reviews.llvm.org/D7334
llvm-svn: 229383
2015-02-16 13:13:53 +00:00
Viktor Kutuzov
2ea54bcb28
[Msan] Fix the pthread_attr_get unit test to build on FreeBSD
...
Differential Revision: http://reviews.llvm.org/D7342
llvm-svn: 228125
2015-02-04 09:08:00 +00:00
Viktor Kutuzov
4cd3ee38e4
Fix missed #endif in rL227790.
...
llvm-svn: 227797
2015-02-02 10:48:38 +00:00
Viktor Kutuzov
0c0ebaa79f
[Msan] Disable unit tests for non-FreeBSD functions on FreeBSD
...
Differential Revision: http://reviews.llvm.org/D7252
llvm-svn: 227790
2015-02-02 09:46:07 +00:00
Viktor Kutuzov
c97b1e7c32
[Msan] Fix the shmctl unit tests to pass on FreeBSD
...
Differential Revision: http://reviews.llvm.org/D7253
llvm-svn: 227571
2015-01-30 12:55:40 +00:00
Mohit K. Bhakkad
6fe5700f6b
[MSan] Enable MSan unit tests for all archs
...
Reviewers: Reviewers: eugenis, kcc, samsonov, petarj
Subscribers: dsanders, sagar, lldb-commits
Differential Revision: http://reviews.llvm.org/D7194
llvm-svn: 227189
2015-01-27 12:38:25 +00:00
Viktor Kutuzov
e8dd0ca483
[Msan] Disable the ppoll unit test on FreeBSD
...
Differential Revision: http://reviews.llvm.org/D7145
llvm-svn: 227106
2015-01-26 18:05:54 +00:00
Viktor Kutuzov
965918e7d4
[Msan] Fix the statfs unit test to pass on FreeBSD
...
Differential Revision: http://reviews.llvm.org/D7144
llvm-svn: 227100
2015-01-26 17:31:23 +00:00
Viktor Kutuzov
b7766be002
[Msan] Fix the readv and preadv unit tests to pass on FreeBSD
...
Differential Revision: http://reviews.llvm.org/D7091
llvm-svn: 226801
2015-01-22 09:00:46 +00:00
Viktor Kutuzov
ed9a90b7c8
[Msan] Fix the strerror_r unit test to build on FreeBSD
...
Differential Revision: http://reviews.llvm.org/D7089
llvm-svn: 226800
2015-01-22 08:57:59 +00:00
Viktor Kutuzov
e787b141e7
[Msan] Fix the DynRet unit test to build on FreeBSD
...
Differential Revision: http://reviews.llvm.org/D7086
llvm-svn: 226799
2015-01-22 08:54:03 +00:00
Viktor Kutuzov
d518cb76ad
[Msan] Fix the accept unit test to pass on FreeBSD
...
Differential Revision: http://reviews.llvm.org/D7083
llvm-svn: 226650
2015-01-21 09:46:21 +00:00
Viktor Kutuzov
1f01782e5c
[Sanitizers] Intercept opendir()
...
Differential Revision: http://reviews.llvm.org/D6968
llvm-svn: 226648
2015-01-21 08:54:01 +00:00
Viktor Kutuzov
eae2e04923
[Msan] Fix the readlink unit test to pass on FreeBSD
...
Differential Revision: http://reviews.llvm.org/D7052
llvm-svn: 226554
2015-01-20 09:57:28 +00:00
Viktor Kutuzov
68f150f3d4
[Msan] Intercept stat() and fstatat() on FreeBSD
...
Differential Revision: http://reviews.llvm.org/D7051
llvm-svn: 226461
2015-01-19 13:22:33 +00:00
Viktor Kutuzov
b4b05017cf
[Msan] Fix use of mmap(MAP_ANONYMOUS) in the unit tests on FreeBSD
...
Differential Revision: http://reviews.llvm.org/D6929
llvm-svn: 225688
2015-01-12 20:18:38 +00:00
Viktor Kutuzov
6aba5098fd
[Msan] Fix tests reading /proc files on FreeBSD
...
Differential Revision: http://reviews.llvm.org/D6926
llvm-svn: 225686
2015-01-12 20:15:33 +00:00
Alexey Samsonov
6239ebc1c2
[Sanitizer] Improve unit tests in COMPILER_RT_DEBUG=ON mode.
...
Propagate -DSANITIZER_DEBUG definition to unit tests.
Make sure unit tests depend on compiler-rt headers.
llvm-svn: 225298
2015-01-06 20:58:40 +00:00
Viktor Kutuzov
54c7590073
[Msan] Fix msan_test.cc inclusions to build the unit tests on FreeBSD
...
Differential Revision: http://reviews.llvm.org/D6757
llvm-svn: 224724
2014-12-22 19:14:23 +00:00
Evgeniy Stepanov
3a9be641d5
[msan] Intercept wcsto*.
...
Intercept wcstod, wcstof, wcstold, wcstol, wcstoul, wcstoll, wcstoull.
llvm-svn: 223650
2014-12-08 10:41:28 +00:00
Evgeniy Stepanov
340347a83f
[msan] Re-enable one test.
...
It has been fixed a long time ago.
llvm-svn: 223226
2014-12-03 12:11:33 +00:00
Evgeniy Stepanov
089c066bd6
[msan] Remove leftover MSanDR bits in tests.
...
llvm-svn: 222762
2014-11-25 15:00:23 +00:00
Eric Fiselier
909deebfc8
[compiler-rt] Make the MSAN wmemset intercepter call wmemset instead of memset. Fixes PR 21579
...
Summary:
Exactly what the title says. I've tested this change against the libc++ test failures and it solves all of them. The check-msan rule also still passes.
I'm not sure why it called memset originally.
I can add tests if requested but currently there are no tests involving wide chars and they are a c++11 features.
Reviewers: kcc, eugenis
Reviewed By: eugenis
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D6352
llvm-svn: 222673
2014-11-24 18:17:04 +00:00
Evgeniy Stepanov
7555f5ed1f
[msan] Remove MSanDR and supporting code.
...
MSanDR is a dynamic instrumentation tool that can instrument the code
(prebuilt libraries and such) that could not be instrumented at compile time.
This code is unused (to the best of our knowledge) and unmaintained, and
starting to bit-rot.
llvm-svn: 222232
2014-11-18 10:33:15 +00:00
Richard Trieu
b6b141d601
delete => delete[] for arrays.
...
llvm-svn: 221769
2014-11-12 04:19:57 +00:00
Kuba Brecka
14c0c5901d
[compiler-rt] compiler-rt's CMake append_if function clashes with LLVM's, let's rename it to append_list_if
...
Doing s/append_if/append_list_if/, no functional change.
http://reviews.llvm.org/D5739
llvm-svn: 219860
2014-10-15 22:47:54 +00:00
Evgeniy Stepanov
37e069c2ac
[msan] Fix fcvt interceptor.
...
fcvt() result can be heap-allocated and must be unpoisoned.
llvm-svn: 215106
2014-08-07 12:45:55 +00:00
Alexey Samsonov
d6906e4ffe
[MSan] Fix strncpy interceptor
...
llvm-svn: 213590
2014-07-22 00:10:08 +00:00
Evgeniy Stepanov
eb893a1fd6
[msan] Fix out of bounds access in origin copying.
...
llvm-svn: 212534
2014-07-08 14:15:23 +00:00
Alexey Samsonov
91bb8e0e3a
Generalize sanitizer allocator public interface.
...
Introduce new public header <sanitizer/allocator_interface.h> and a set
of functions __sanitizer_get_ownership(), __sanitizer_malloc_hook() etc.
that will eventually replace their tool-specific equivalents
(__asan_get_ownership(), __msan_get_ownership() etc.). Tool-specific
functions are now deprecated and implemented as stubs redirecting
to __sanitizer_ versions (which are implemented differently in each tool).
Replace all uses of __xsan_ versions with __sanitizer_ versions in unit
and lit tests.
llvm-svn: 212469
2014-07-07 17:39:31 +00:00
Alexey Samsonov
e3a401a12b
[MSan] Fixup r212082: enable tests for _mm_ intrinsics if and only if the
...
unit test source file is compiled with Clang.
llvm-svn: 212121
2014-07-01 19:58:41 +00:00
Alexey Samsonov
c0fda339e2
Add the way to disable MSan unit tests for _mm_* intrinsics
...
llvm-svn: 212082
2014-07-01 01:38:52 +00:00
Evgeniy Stepanov
8717fec9af
[msan] Fix origin copying.
...
Conditions for the first and the last origin value in range were wrong.
llvm-svn: 211585
2014-06-24 11:50:26 +00:00
Evgeniy Stepanov
4ea1647e8b
[msan] Handle X86 *.psad.* and *.pmadd.* intrinsics.
...
llvm-svn: 211156
2014-06-18 12:02:29 +00:00
Evgeniy Stepanov
9959915890
[msan] Intercept __strto*_internal.
...
This should fix strtoimax/strtoumax on newer glibc.
https://code.google.com/p/memory-sanitizer/issues/detail?id=36
llvm-svn: 210463
2014-06-09 10:41:22 +00:00
Evgeniy Stepanov
66c6a18d39
[msan] Add a test for mmx.packuswb.
...
llvm-svn: 210458
2014-06-09 08:58:41 +00:00