Dmitry Vyukov
|
b4ede780b0
|
tsan: fix crash when user defines own fopen/fileno
llvm-svn: 171958
|
2013-01-09 08:22:06 +00:00 |
Will Dietz
|
b50565b21a
|
[ubsan] Drop use of __atomic_exchange_n for now to fix build for some.
Need a more reliable way to check for support of this intrinsic.
llvm-svn: 171955
|
2013-01-09 06:18:40 +00:00 |
Will Dietz
|
765c266892
|
[ubsan] Add deduplication functionality, always enabled.
llvm-svn: 171948
|
2013-01-09 03:40:03 +00:00 |
Will Dietz
|
2b40b7ef84
|
[ubsan] Check for appropriate types on compound assignment overflow diagnostics.
llvm-svn: 171802
|
2013-01-07 22:25:54 +00:00 |
NAKAMURA Takumi
|
43632a26a5
|
Update the copyright coredits -- Happy new year 2013!
llvm-svn: 171342
|
2013-01-01 10:00:19 +00:00 |
Will Dietz
|
82f61bf4b6
|
[ubsan] Don't suggest casting to unsigned for unsigned unary minus overflow.
Fixed version of r171273.
llvm-svn: 171278
|
2012-12-31 06:36:44 +00:00 |
Chandler Carruth
|
5f8061bc36
|
Revert r171273 which doesn't actually compile.
Original commit message:
[ubsan] Don't suggest casting to unsigned for unsigned unary minus overflow.
llvm-svn: 171277
|
2012-12-31 06:16:47 +00:00 |
Will Dietz
|
d6cd3203f6
|
[ubsan] Don't suggest casting to unsigned for unsigned unary minus overflow.
llvm-svn: 171273
|
2012-12-31 02:20:55 +00:00 |
Will Dietz
|
2a5f569d88
|
[ubsan] Update test now that check recovery is default and has driver flag.
llvm-svn: 171265
|
2012-12-30 20:53:39 +00:00 |
Kostya Serebryany
|
9756e2e0b3
|
[asan] make LargeOOBInMemset test resistant to clever compiler optimizations
llvm-svn: 171223
|
2012-12-29 14:42:48 +00:00 |
Kostya Serebryany
|
b3d04ede8c
|
[asan] add a new interface function __asan_describe_address, useful for running asan-ified binary under a debugger (e.g. gdb)
llvm-svn: 171217
|
2012-12-29 10:18:31 +00:00 |
Kostya Serebryany
|
9479a85963
|
[asan] fix a build warning
llvm-svn: 171200
|
2012-12-28 15:55:43 +00:00 |
Kostya Serebryany
|
1cc54f0218
|
[asan] one more change missed at r171198
llvm-svn: 171199
|
2012-12-28 15:28:19 +00:00 |
Kostya Serebryany
|
cb510e50e2
|
[asan] implement more strict checking for memset/etc parameters. Instead of checking the first and the last byte, we check the entire shadow region. This costs ~10 slowdown for the instrumented functions. Motivated by a nasty memset-buffer-overflow-by-140-bytes in chrome which was reported as a use-after-free or not at all
llvm-svn: 171198
|
2012-12-28 15:24:16 +00:00 |
Alexey Samsonov
|
1aa47efd2c
|
[ASan] use macro instead of raw __attribute__
llvm-svn: 171188
|
2012-12-28 11:22:23 +00:00 |
Alexey Samsonov
|
8474843e3b
|
[TSan] Blacklist test: Rename blacklisted function. Make this test work for custom TSan testing script.
llvm-svn: 171186
|
2012-12-28 10:06:26 +00:00 |
Alexey Samsonov
|
8c01e76d27
|
[TSan] Add lit test for -fsanitize-blacklist= flag
llvm-svn: 171185
|
2012-12-28 09:32:36 +00:00 |
Alexey Samsonov
|
f96bfd8849
|
Make ASan and TSan tests a bit less brittle with @LINE FileCheck macro
llvm-svn: 171181
|
2012-12-28 08:38:09 +00:00 |
Kostya Serebryany
|
4a42cf69a6
|
[sanitizer] add statistics to the allocator; fix lint
llvm-svn: 171161
|
2012-12-27 14:09:19 +00:00 |
Alexey Samsonov
|
c20f5d2246
|
Define COMPILER_RT_CAN_EXECUTE_TESTS variable on platforms where we can produce working binaries and use it in build rules for sanitizers tests
llvm-svn: 171160
|
2012-12-27 13:19:23 +00:00 |
Evgeniy Stepanov
|
8798729a22
|
[msan] Explicitly link unit tests with libstdc++.
llvm-svn: 171151
|
2012-12-27 08:44:19 +00:00 |
Kostya Serebryany
|
1302e8d6da
|
[asan] enable alloc_dealloc_mismatch by default
llvm-svn: 171147
|
2012-12-27 08:08:05 +00:00 |
Kostya Serebryany
|
4a0d946a43
|
[asan] relax asan/lit_tests/malloc_delete_mismatch.cc to make it pass on Mac 10.7 (where extra frames creep in between malloc and main)
llvm-svn: 171145
|
2012-12-27 07:40:24 +00:00 |
Kostya Serebryany
|
6f604b5007
|
[asan/tsan] when unmapping a chunk of user memory, apply madvise(MADV_DONTNEED) to the corresponding chunk of shadow memory. Also update sanitizer_allocator64_testlib.cc
llvm-svn: 171144
|
2012-12-27 07:37:24 +00:00 |
Alexey Samsonov
|
d66b12b701
|
[ASan] Teach ASan to print demangled function name when describing stack frame
llvm-svn: 171112
|
2012-12-26 14:44:46 +00:00 |
Kostya Serebryany
|
390cf94f88
|
[asan] asan_allocator2: do not align the requested size to the redzone size (saves a bit more memory)
llvm-svn: 171111
|
2012-12-26 12:20:35 +00:00 |
Kostya Serebryany
|
35cc75876a
|
[asan] asan_allocator2: implement adaptive redzones. Now with asan_allocator2 allocations <= 48 bytes have 16 byte redzone, allocations of 48-96 bytes -- have 32 bytes redzone, etc (max redzone is 2048). If ASAN_OPTIONS=redzone=n is set, it changes the minimal redzone size
llvm-svn: 171107
|
2012-12-26 10:41:24 +00:00 |
Evgeniy Stepanov
|
fee82c68ae
|
[msan] MSan, New Year Tree style.
llvm-svn: 171106
|
2012-12-26 10:16:45 +00:00 |
Evgeniy Stepanov
|
367dc64563
|
[msan] Refactor report printing.
llvm-svn: 171105
|
2012-12-26 09:32:05 +00:00 |
Alexey Samsonov
|
c914281341
|
[Sanitizer] attempt to fix InterlockedCompareExchangePointer intrinsic on MSVC
llvm-svn: 171104
|
2012-12-26 09:25:09 +00:00 |
Evgeniy Stepanov
|
794a73124b
|
[msan] Check for conflicting memory mappings.
Check for conflicting memory mappings before attempting to map shadow.
Helps avoid segfault on Linux with disabled ASLR.
llvm-svn: 171100
|
2012-12-26 06:37:23 +00:00 |
Kostya Serebryany
|
a11cd57a78
|
[asan] asan_allocator2: by default use the StackDepot to store the stack traces instead of storing them in the redzones
llvm-svn: 171099
|
2012-12-26 06:30:02 +00:00 |
Kostya Serebryany
|
27ad15e165
|
[asan] asan_allocator2: store the user requested size in just 32 bits (larger sizes use metadata). This allows to put one more 32-bit field into the chunk header
llvm-svn: 171089
|
2012-12-26 04:52:07 +00:00 |
Evgeniy Stepanov
|
84f46d9993
|
[msan] Improve recvfrom interceptor.
llvm-svn: 171071
|
2012-12-25 16:51:57 +00:00 |
Evgeniy Stepanov
|
a57662d7c4
|
Add MSan unit tests to check-msan and check-all.
llvm-svn: 171065
|
2012-12-25 13:10:15 +00:00 |
Evgeniy Stepanov
|
f45d92bb22
|
MemorySanitizer unit tests.
llvm-svn: 171062
|
2012-12-25 12:39:56 +00:00 |
Evgeniy Stepanov
|
6722716d78
|
[msan] Fix header comments.
llvm-svn: 171059
|
2012-12-25 11:53:51 +00:00 |
Kostya Serebryany
|
eff9b4b9b1
|
[asan] add a test for right OOB with special large sizes. Fix this test in asan_allocator2. More test tweaking for allocator2
llvm-svn: 171058
|
2012-12-25 09:40:20 +00:00 |
Dmitry Vyukov
|
116518af74
|
tsan: fix tests to consistently use internal functions (otherwise it leads to false positives)
llvm-svn: 171057
|
2012-12-25 09:20:58 +00:00 |
Kostya Serebryany
|
ad24c58e16
|
[sanitizer] increase the maximum size class of the fast allocator. This should save quite a bit of memory in tsan/msan (and later in asan). This also puts more stress on the large allocator. Add a couple of checks
llvm-svn: 171055
|
2012-12-25 07:50:35 +00:00 |
Dmitry Vyukov
|
774defc649
|
tsan: fix the code that searches for heap memory block metadata
(the old code won't work with new allocator)
llvm-svn: 171054
|
2012-12-25 07:45:40 +00:00 |
Kostya Serebryany
|
181f504d82
|
[asan] properly define ASAN_LOW_MEMORY. Due to a mistake it has been always true causing redzone and quarantine sizes to be smaller than it was some time before (and out of sync with the documentation). Also make one test less greedy
llvm-svn: 171052
|
2012-12-25 07:17:17 +00:00 |
Kostya Serebryany
|
db3250b8b3
|
[sanitizer] fix gcc warnings, enable one tests under asan_allocator2
llvm-svn: 171036
|
2012-12-24 14:53:13 +00:00 |
Kostya Serebryany
|
fc7de2910c
|
[sanitizer] make LargeMmapAllocator::GetBlockBegin faster by not using a linked list
llvm-svn: 171035
|
2012-12-24 14:35:14 +00:00 |
Dmitry Vyukov
|
19969e5045
|
tsan: work around FileCheck feature that it does not accept empty input
llvm-svn: 171034
|
2012-12-24 14:02:34 +00:00 |
Dmitry Vyukov
|
f6d8021520
|
tsan: remove static reference to glibc internal _dl_get_tls_static_info()
(this breaks RPM packages)
llvm-svn: 171033
|
2012-12-24 13:43:53 +00:00 |
Kostya Serebryany
|
ebb23c8cfa
|
[sanitizer] rework the size class map in the sanitizer allocator: make the differences between size classes more uniform.
llvm-svn: 171031
|
2012-12-24 13:41:07 +00:00 |
Dmitry Vyukov
|
73dac64b73
|
tsan: more defensive file descriptor verification
to prevent assertion failures on code like "write(-1, ...)"
llvm-svn: 171030
|
2012-12-24 11:43:34 +00:00 |
Kostya Serebryany
|
fe80f080ee
|
[asan] asan_allocator2 fix two asserts that happen on full chrome: a) memalign called with 0 size and large alignment and b) malloc called after TSD has been destructed
llvm-svn: 170900
|
2012-12-21 14:54:46 +00:00 |
Alexey Samsonov
|
e30a84f08f
|
[Sanitizer] CMake build rules for unittests: depend on headers when compiling a file with custom clang.
llvm-svn: 170897
|
2012-12-21 14:04:52 +00:00 |