| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D6306
llvm-svn: 222425
|
|
|
|
|
|
| |
for coverage-guided in-process fuzzers
llvm-svn: 222060
|
|
|
|
| |
llvm-svn: 219632
|
|
|
|
|
|
|
|
|
|
| |
extraction and locating addresses
Reviewed at http://reviews.llvm.org/D4527
Fixed a test case failure on 32-bit Linux, I did right shift on intptr_t, instead it should have been uintptr_t.
llvm-svn: 218538
|
|
|
|
| |
llvm-svn: 218501
|
|
|
|
|
|
|
|
|
|
| |
addresses
Reviewed at http://reviews.llvm.org/D4527
This patch is part of an effort to implement a more generic debugging API, as proposed in http://lists.cs.uiuc.edu/pipermail/llvmdev/2014-July/074656.html, with first part reviewed at http://reviews.llvm.org/D4466. Now adding several new APIs: __asan_report_present, __asan_get_report_{pc,bp,sp,address,type,size,description}, __asan_locate_address. These return whether an asan report happened yet, the PC, BP, SP, address, access type (read/write), access size and bug description (e.g. "heap-use-after-free"), __asan_locate_address takes a pointer and tries to locate it, i.e. say whether it is a heap pointer, a global or a stack, or whether it's a pointer into the shadow memory. If global or stack, tries to also return the variable name, address and size. If heap, tries to return the chunk address and size. Generally these should serve as an alternative to "asan_describe_address", which only returns all the data in text form. Having an API to get these data could allow having debugging scripts/extensions that could show additional information about a variable/expression/pointer. Test cases in test/asan/TestCases/debug_locate.cc and test/asan/TestCasea/debug_report.cc.
llvm-svn: 218481
|
|
|
|
|
|
|
|
| |
favor of
a unified interface in <sanitizer/allocator_interface.h>.
llvm-svn: 215469
|
|
|
|
|
|
|
|
| |
memory mapping info
Reviewed at http://reviews.llvm.org/D4466
llvm-svn: 213080
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
| |
Summary: Add a new interface function required for coverage sandboxing support.
llvm-svn: 209298
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Generalize StackDepot and create a new specialized instance of it to
efficiently (i.e. without duplicating stack trace data) store the
origin history tree.
This reduces memory usage for chained origins roughly by an order of
magnitude.
Most importantly, this new design allows us to put two limits on
stored history data (exposed in MSAN_OPTIONS) that help avoid
exponential growth in used memory on certain workloads.
See comments in lib/msan/msan_origin.h for more details.
llvm-svn: 209284
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Sandboxed code may now pass additional arguments to
__sanitizer_sandbox_on_notify() to force all coverage data to be dumped to a
single file (the default is one file per module). The user may supply a file or
socket to write to. The latter option can be used to broker out the file writing
functionality. If -1 is passed, we pre-open a file.
llvm-svn: 209121
|
|
|
|
|
|
| |
to verify annotations in vector-like containers
llvm-svn: 208092
|
|
|
|
| |
llvm-svn: 207630
|
|
|
|
|
|
| |
Makes __msan_print_shadow output much more readable, adds origin info.
llvm-svn: 207622
|
|
|
|
|
|
|
|
|
|
|
| |
Add dfsan_set_write_callback(), which sets a callback to be invoked when
a write() call is invoked within DFSan instrumented code.
Patch by Sam Kerner!
Differential Revision: http://reviews.llvm.org/D3268
llvm-svn: 207131
|
|
|
|
|
|
| |
are usable in plain C
llvm-svn: 206160
|
|
|
|
|
|
|
| |
It does not do what it's name says, and what it actually does is hard to
describe, and is not useful at all.
llvm-svn: 205415
|
|
|
|
|
|
| |
An assert()-like function that checks that a memory range is fully initialized.
llvm-svn: 205413
|
|
|
|
| |
llvm-svn: 204926
|
|
|
|
|
|
|
|
|
|
| |
Expose the number of DFSan labels allocated by adding function dfsan_get_label_count().
Patch by Sam Kerner!
Differential Revision: http://llvm-reviews.chandlerc.com/D3109
llvm-svn: 204854
|
|
|
|
|
|
|
|
| |
Using __msan_unpoison() on null-terminated strings is awkward because
strlen() can't be called on a poisoned string. This case warrants a special
interface function.
llvm-svn: 204448
|
|
|
|
| |
llvm-svn: 201777
|
|
|
|
| |
llvm-svn: 201575
|
|
|
|
|
|
| |
garbage colection to work with asan's fake stack
llvm-svn: 200908
|
|
|
|
|
|
| |
idea), leave __lsan_is_turned_off
llvm-svn: 199304
|
|
|
|
| |
llvm-svn: 199300
|
|
|
|
| |
llvm-svn: 199121
|
|
|
|
| |
llvm-svn: 199112
|
|
|
|
|
|
| |
LeakSanitizerIsTurnedOffForTheCurrentProcess (leave the old variant for now for compatibility)
llvm-svn: 198921
|
|
|
|
| |
llvm-svn: 197670
|
|
|
|
|
|
|
| |
Add an interface for telling LSan that a region of memory is to be treated as a
source of live pointers. Useful for code which stores pointers in mapped memory.
llvm-svn: 197489
|
|
|
|
| |
llvm-svn: 197015
|
|
|
|
|
|
|
| |
Expose a new interface function for debugging code built with sanitizer tools.
Add an ASan implementation.
llvm-svn: 196302
|
|
|
|
|
|
| |
__sanitizer_annotate_contiguous_container
llvm-svn: 195131
|
|
|
|
|
|
| |
addressed Alexey Samsonov's comments for r195011
llvm-svn: 195117
|
|
|
|
| |
llvm-svn: 195011
|
|
|
|
|
|
| |
'compilrer-rt' target is built
llvm-svn: 195002
|
|
|
|
|
|
|
|
| |
I still don't know what is causing our bootstrapped LTO buildbots to fail,
but llvm r194701 seems to be OK and I can't imagine that these changes could
cause the problem.
llvm-svn: 194790
|
|
|
|
|
|
|
|
|
| |
Apple's bootstrapped LTO builds have been failing, and these changes (along
with llvm 194701) are the only things on the blamelist. I will either reapply
these changes or help debug the problem, depending on whether this fixes the
buildbots.
llvm-svn: 194779
|
|
|
|
|
|
| |
internal sources (although it shoudn't)
llvm-svn: 194704
|
|
|
|
| |
llvm-svn: 194702
|
|
|
|
|
|
| |
the file references non-existent arguments and breaks build
llvm-svn: 193234
|
|
|
|
|
|
|
|
| |
__sanitizer_set_report_path now accepts two special values - stderr and stdout
logging to other file descriptors is not supported anymore,
it's fragile in presence of multiple processes, fork, etc
llvm-svn: 192706
|
|
|
|
| |
llvm-svn: 191144
|
|
|
|
|
|
| |
This way msan annotations can be used with both normal and volatile memory.
llvm-svn: 190403
|
|
|
|
| |
llvm-svn: 190402
|
|
|
|
| |
llvm-svn: 190157
|
|
|
|
|
|
| |
Differential Revision: http://llvm-reviews.chandlerc.com/D1349
llvm-svn: 188319
|
|
|
|
| |
llvm-svn: 188292
|