Alexey Samsonov
2ccbc621df
[UBSan] Add support for printing backtraces to all UBSan handlers
...
llvm-svn: 216289
2014-08-22 21:42:04 +00:00
Alexander Potapenko
ea2402ebf4
[ubsan] Follow-up for r216263: fix the expected line number.
...
llvm-svn: 216266
2014-08-22 12:44:16 +00:00
Timur Iskhodzhanov
220ddacf8d
[ASan/Win] Land the trivial bits of -MD RTL support (PR20214)
...
llvm-svn: 216265
2014-08-22 12:38:07 +00:00
Alexander Potapenko
66ae9712c5
[ubsan] Do not run Function/function.cpp on Darwin where -fsanitize=function is not supported.
...
llvm-svn: 216263
2014-08-22 11:09:10 +00:00
Alexey Samsonov
2e39027931
[LSan] Parse common flags from LSAN_OPTIONS even if LSan is combined with
...
another sanitizer.
A user may run both LSan and LSan+ASan. It is weird to pass path to leak
suppression file (or other common sanitizer flags, like "verbosity") in
"LSAN_OPTIONS" in the first case and in "ASAN_OPTIONS" in the second case.
llvm-svn: 215949
2014-08-18 23:39:47 +00:00
Alexey Samsonov
00c02b297a
Add regression test for PR15823
...
llvm-svn: 215941
2014-08-18 22:11:14 +00:00
Alexey Samsonov
591d15272e
[TSan] Add -lpthread to the test which uses pthread_ functions
...
llvm-svn: 215939
2014-08-18 22:09:17 +00:00
Alexey Samsonov
cd21e2f7e4
[TSan] Initialize flags as early as possible. Disables back coredump, accidentally enabled in r215479. Add a test.
...
llvm-svn: 215763
2014-08-15 19:53:51 +00:00
Timur Iskhodzhanov
893beb96a2
[ASan/Win] Slightly update&relax test expectations to work with both -MT and -MD (in progress, PR20214) CRTs
...
llvm-svn: 215641
2014-08-14 13:11:39 +00:00
Timur Iskhodzhanov
7040f13639
[ASan/Win] Mark tests that require -MT asan_dll_thunk as such
...
llvm-svn: 215638
2014-08-14 13:02:51 +00:00
Alexey Samsonov
de443c5002
[UBSan] Add returns-nonnull sanitizer.
...
Summary:
This patch adds a runtime check verifying that functions
annotated with "returns_nonnull" attribute do in fact return nonnull pointers.
It is based on suggestion by Jakub Jelinek:
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20140623/223693.html .
Test Plan: regression test suite
Reviewers: rsmith
Reviewed By: rsmith
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D4849
llvm-svn: 215485
2014-08-13 00:26:40 +00:00
Alexey Samsonov
b9ec65cd4d
[Sanitizer] Kill deprecated allocator interfaces in ASan, MSan and TSan in favor of
...
a unified interface in <sanitizer/allocator_interface.h>.
llvm-svn: 215469
2014-08-12 20:28:20 +00:00
Alexey Samsonov
68b9e74592
[CMake] Determine which compiler-rt libraries are supported on
...
a given platform in a top-level CMakeLists.txt to use it both
in lib/ and in test/ subdirectories. Move architecture/platform
checks to config-ix.
llvm-svn: 215247
2014-08-08 22:01:20 +00:00
Timur Iskhodzhanov
255958391d
[ASan/Win] Print out a big warning and continue without checking for success if SymInitialize() fails
...
llvm-svn: 215203
2014-08-08 13:25:55 +00:00
Evgeniy Stepanov
f5c1f8ac84
[sanitizer] Intercept timerfd_settime, timerfd_gettime.
...
llvm-svn: 215112
2014-08-07 14:21:42 +00:00
Viktor Kutuzov
c68a37c531
Add FreeBSD support to the address sanitizer's malloc_context_size.cc test case
...
Differential Revision: http://reviews.llvm.org/D4665
llvm-svn: 215081
2014-08-07 04:58:41 +00:00
Dmitry Vyukov
70db9d4d72
tsan: allocate vector clocks using slab allocator
...
Vector clocks is the most actively allocated object in tsan runtime.
Current internal allocator is not scalable enough to handle allocation
of clocks in scalable way (too small caches). This changes transforms
clocks to 2-level array with 512-byte blocks. Since all blocks are of
the same size, it's possible to cache them more efficiently in per-thread caches.
llvm-svn: 214912
2014-08-05 18:45:02 +00:00
Timur Iskhodzhanov
0575694729
[ASan/Win] Handle SEH exceptions even with -GS
...
This is a follow-up to r213654, r213656, r213667 and r213668.
llvm-svn: 214861
2014-08-05 13:26:26 +00:00
Alexander Kornienko
c3f7bcbd48
The test doesn't export ASAN_OPTIONS, so $ASAN_OPTIONS should not be used in RUN lines.
...
llvm-svn: 214855
2014-08-05 11:12:23 +00:00
Alexey Samsonov
ff24fd2516
[UBSan] Allow to suppress reports from vptr checker for specified types.
...
Based on http://reviews.llvm.org/D4702 by Byoungyoung Lee!
llvm-svn: 214833
2014-08-05 01:24:22 +00:00
Kostya Serebryany
1cd57ebb6b
[asan] intercept sized operator delete[]
...
llvm-svn: 214704
2014-08-04 10:10:50 +00:00
Viktor Kutuzov
f164bee0e0
Add FreeBSD support to the address sanitizer's deep_stack_uaf.cc test case
...
Differential Revision: http://reviews.llvm.org/D4668
llvm-svn: 214544
2014-08-01 19:37:05 +00:00
Ehsan Akhgari
9e5b6a08d4
[ASan] Support the asan_loadN/asan_storeN functions in the DLL thunk library
...
Summary:
This is required for linking DLLs with large functions exceeding
san-instrumentation-with-call-threshold. One such function is
vp9_fdct16x16_sse2 in libvpx.
Reviewers: timurrrr
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D4758
llvm-svn: 214532
2014-08-01 18:04:53 +00:00
Alexey Samsonov
77f646c623
[Sanitizer] Make "suppressions" and "print_suppressions" common runtime flags.
...
No functionality change.
llvm-svn: 214343
2014-07-30 21:33:04 +00:00
Evgeniy Stepanov
c3478490ed
[asan] XFAIL sized-delete test on Android.
...
llvm-svn: 214303
2014-07-30 12:39:30 +00:00
Kostya Serebryany
e7532e59c0
[asan] rename new-delete-size-mismatch to new-delete-type-mismatch and make the report more verbose
...
llvm-svn: 214299
2014-07-30 11:20:37 +00:00
Kostya Serebryany
69852a843c
[asan] add a feature to detect new-delete-size-mismatch (when used with -Xclang -fsized-deallocation). Not yet on Mac. Also, remove some unused code.
...
llvm-svn: 214296
2014-07-30 09:48:23 +00:00
Evgeniy Stepanov
5c72938c39
[msan] Use SIGHUP instead of SIGUSR1 in test.
...
Apparently, SIGUSR1 does not work on x86_64+ArchLinux for some reason.
For more details, see:
https://groups.google.com/forum/#!topic/llvm-dev/4Ag1FF4M2Dw
llvm-svn: 214289
2014-07-30 08:17:58 +00:00
Alexey Samsonov
8b9d18e4fe
[UBSan] Try to enable pipefail in UBSan lit tests to make them behave more predictably
...
llvm-svn: 214149
2014-07-29 00:30:01 +00:00
Dmitry Vyukov
5b1b02eb29
tsan: improve shadow flush benchmark
...
allow to specify access stride
llvm-svn: 214029
2014-07-26 16:40:33 +00:00
Alexander Potapenko
08cfa79d87
[lsan] Follow-up for r213518: replace MAP_ANONYMOUS with MAP_ANON
...
(despite it's deprecated on Linux) to remove the ifdefs.
llvm-svn: 213929
2014-07-25 08:57:51 +00:00
Viktor Kutuzov
545ff90d47
Add FreeBSD support to Asan test cases that use mmap() with MAP_ANON
...
Differential Revision: http://reviews.llvm.org/D4561
llvm-svn: 213858
2014-07-24 12:05:13 +00:00
Alexey Samsonov
bfa711c8b0
[UBSan] Add the ability to dump call stacks to -fsanitize=vptr
...
This change introduces the first UBSan-specific runtime flag: print_stacktrace
(off by default). It can be set in UBSAN_OPTIONS to unwind and print call stacks
in addition to diagnostic messages. For now these stacks are printed only
in vptr checker.
This change is based on http://reviews.llvm.org/D4410 by Byoungyoung Lee!
llvm-svn: 213783
2014-07-23 18:44:54 +00:00
Alexey Samsonov
cd875aa551
[UBSan] Introduce UBSAN_OPTIONS environment variable.
...
If UBSan is run in a standalone mode (w/o any other sanitizer), it
still uses functions from sanitizer_common, some of which depend on
the value of runtime flags. Allow to override the default values of these
flags with UBSAN_OPTIONS variable. In particular, UBSAN_OPTIONS=symbolize=0
can be used to turn off online symbolization.
llvm-svn: 213782
2014-07-23 18:32:55 +00:00
Timur Iskhodzhanov
4bea5a83bd
[ASan/Win tests] Bring back -GS- as SEH tests fail otherwise
...
llvm-svn: 213668
2014-07-22 16:09:11 +00:00
Timur Iskhodzhanov
74487a7c32
[ASan/Win tests] Don't generate debug info where it is not needed
...
Otherwise it results in flaky tests
llvm-svn: 213667
2014-07-22 15:53:10 +00:00
Timur Iskhodzhanov
cb5bf58f3d
[ASan/Win] Add SEH handling to the DLL thunk as well
...
llvm-svn: 213656
2014-07-22 14:02:53 +00:00
Timur Iskhodzhanov
6d4a6cd68f
[ASan/Win] Handle SEH exceptions (best-effort, similar to longjmp)
...
llvm-svn: 213654
2014-07-22 13:44:18 +00:00
Timur Iskhodzhanov
f2b96e3009
[ASan/Win] Add handling of C++ exceptions to the RTL
...
Also add a longjmp() test
llvm-svn: 213649
2014-07-22 12:37:51 +00:00
Timur Iskhodzhanov
8f41c3eb74
[ASan] Simplify exception/longjmp tests even further
...
llvm-svn: 213646
2014-07-22 12:25:51 +00:00
Timur Iskhodzhanov
723c81ff80
[ASan] Split throw_catch tests into two files: throw/catch + longjmp
...
Also add some more assertions into these tests
llvm-svn: 213642
2014-07-22 11:46:24 +00:00
Alexey Samsonov
a89ad664b1
[ASan] Fix __asan_describe_address and add a test for it.
...
llvm-svn: 213583
2014-07-21 21:33:46 +00:00
Alexander Potapenko
96008ea849
[lsan] Allow using ucontext.h in the test on OSX.
...
llvm-svn: 213523
2014-07-21 13:35:09 +00:00
Alexander Potapenko
e816521c00
[lsan] Define MAP_ANONYMOUS as MAP_ANON for OSX in the test.
...
llvm-svn: 213518
2014-07-21 13:12:44 +00:00
Alexander Potapenko
4789f63bf3
[lsan] Use a more standard-conformant sched_yield() instead of pthread_yield().
...
There's no pthread_yield() on OSX (only sched_yield() and pthread_yield_np()).
llvm-svn: 213516
2014-07-21 13:01:06 +00:00
Viktor Kutuzov
838afd799d
Add FreeBSD support to the address sanitizer's waitid.cc test case
...
Differential Revision: http://reviews.llvm.org/D4422
llvm-svn: 213368
2014-07-18 12:02:42 +00:00
Timur Iskhodzhanov
bdf23a51b1
[ASan/Win] Handle situations when the client app has used DbgHelp before
...
Reviewed at http://reviews.llvm.org/D4533
llvm-svn: 213151
2014-07-16 14:11:02 +00:00
Timur Iskhodzhanov
5d96f44da1
[ASan] Adjust 'sed' invocation to work on OS X
...
This is a follow-up to r213053
llvm-svn: 213144
2014-07-16 12:56:47 +00:00
Viktor Kutuzov
4a9638324a
Add FreeBSD support to the address sanitizer's assign_large_valloc_to_global.cc test case
...
Differential Revision: http://reviews.llvm.org/D4525
llvm-svn: 213135
2014-07-16 10:14:01 +00:00
Viktor Kutuzov
f7dfafe712
Add FreeBSD support to the address sanitizer's atexit_stats.cc test case
...
Differential Revision: http://reviews.llvm.org/D4524
llvm-svn: 213134
2014-07-16 10:05:29 +00:00