| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
llvm-svn: 189799
|
|
|
|
| |
llvm-svn: 189797
|
|
|
|
|
|
|
|
|
|
|
| |
Add a wrapper for the clone syscall for use in StopTheWorld. We
implement it only for x86_64, so stop building StopTheWorld for other platforms
(no one uses it outside x86_64 anyway).
See https://code.google.com/p/address-sanitizer/issues/detail?id=214 for why we
can't use the glibc clone() wrapper.
llvm-svn: 189753
|
|
|
|
| |
llvm-svn: 189577
|
|
|
|
| |
llvm-svn: 189475
|
|
|
|
| |
llvm-svn: 189474
|
|
|
|
|
|
|
| |
Add a class that holds a snapshot of the StackDepot optimized for querying by
ID. This allows us to speed up LSan dramatically.
llvm-svn: 189217
|
|
|
|
| |
llvm-svn: 188116
|
|
|
|
|
|
|
| |
%n does not increase the input item count. The new code emits writes to %n
arguments even if it has run out of input items.
llvm-svn: 188069
|
|
|
|
|
|
|
| |
not it's possible to write more precise suppressions,
e.g. "^foo$" won't match "blafoobar"
llvm-svn: 186424
|
|
|
|
| |
llvm-svn: 185152
|
|
|
|
| |
llvm-svn: 185082
|
|
|
|
|
|
| |
Factor out code to be reused in LSan. Also switch from linked list to vector.
llvm-svn: 184957
|
|
|
|
| |
llvm-svn: 184704
|
|
|
|
|
|
|
| |
Also clean up LSan code, fix some comments and replace void* with uptr
to bring down the number of reinterpret_casts.
llvm-svn: 184700
|
|
|
|
|
|
| |
We have way too many different build systems.
llvm-svn: 184409
|
|
|
|
| |
llvm-svn: 184405
|
|
|
|
| |
llvm-svn: 183972
|
|
|
|
| |
llvm-svn: 182995
|
|
|
|
| |
llvm-svn: 182918
|
|
|
|
|
|
| |
required for LeakSanitizer to work faster. Also fix lint.
llvm-svn: 182917
|
|
|
|
|
|
|
|
|
|
| |
descriptor address.
Instead of using arch_prctl(ARCH_GET_FS), read the address from the
tread descriptor itself. This lets us avoid sandboxing issues. Also,
GetThreadStackAndTls() can now be implemented on i386.
llvm-svn: 182853
|
|
|
|
|
|
| |
definitions from test.
llvm-svn: 182841
|
|
|
|
|
|
| |
to a custom allocator.
llvm-svn: 182836
|
|
|
|
|
|
| |
Differential Revision: http://llvm-reviews.chandlerc.com/D873
llvm-svn: 182770
|
|
|
|
|
|
|
|
| |
Now compiler-rt tests run correctly if compiler-rt is checked out into
arbitrary directory (not necessarily projects/compiler-rt).
Patch by Greg Fitzgerald!
llvm-svn: 182726
|
|
|
|
|
|
| |
later replaced with a more memory-efficient implementation on 64-bit.
llvm-svn: 182234
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
library
Introduce a new object library, RTSanitizerCommonLibc, which will contain
the subset of sanitizer_common with libc dependencies. RTSanitizerCommon
contains the remainder of sanitizer_common, and is intended to have no
libc dependencies. Begin moving code to RTSanitizerCommonLibc, starting
with sanitizer_common.cc, whose libc-dependent portion is moved to
sanitizer_common_libcdep.cc, the first member of the new library.
This split affects the CMake build only. The makefile build continues
to produce the full sanitizer_common library.
llvm-svn: 182118
|
|
|
|
| |
llvm-svn: 182087
|
|
|
|
|
|
| |
SanitizerAllocator64::PopulateFreeList().
llvm-svn: 182002
|
|
|
|
|
|
| |
performance optimization (use 32-bit division when possible). Improve the benchmarks that checks for performance of GetBlockBegin/GetMetaData
llvm-svn: 181989
|
|
|
|
|
|
| |
(uint32 overflow in GetBlockBegin)
llvm-svn: 181984
|
|
|
|
| |
llvm-svn: 181881
|
|
|
|
| |
llvm-svn: 181787
|
|
|
|
| |
llvm-svn: 181786
|
|
|
|
| |
llvm-svn: 181763
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change moves to a model where the error value of a system call is
potentially contained in the return value itself rather than being
implicit in errno. The helper function internal_iserror can be used
to extract the error value from a return value. On platforms other
than Linux/x86_64 this still uses errno, but other platforms are free
to port their error handling to this new model.
Differential Revision: http://llvm-reviews.chandlerc.com/D756
llvm-svn: 181436
|
|
|
|
|
|
|
|
| |
Move this function to sanitizer_common because LSan uses it too. Also, fix a bug
where the TLS range reported for main thread was off by the size of the thread
descriptor from libc (TSan doesn't care much, but for LSan it's critical).
llvm-svn: 181322
|
|
|
|
|
|
|
|
|
| |
With this change, __internal_*stat always expect a "struct stat *" argument.
This avoids stat/stat64 caller-side confusion (sanitizer_common tests already
made this mistake), and allows the use of __internal_fstat() as a drop-in
replacement for libc's fstat().
llvm-svn: 181311
|
|
|
|
| |
llvm-svn: 180098
|
|
|
|
|
|
| |
Patch by Sergey Matveev
llvm-svn: 179007
|
|
|
|
|
|
| |
aligned; fix lint
llvm-svn: 178747
|
|
|
|
|
|
| |
Add a test for r178158.
llvm-svn: 178229
|
|
|
|
| |
llvm-svn: 177998
|
|
|
|
| |
llvm-svn: 177851
|
|
|
|
| |
llvm-svn: 177251
|
|
|
|
| |
llvm-svn: 177245
|
|
|
|
|
|
|
|
|
|
|
| |
StopTheWorld puts the process in a suspended state before running the
user-supplied callback. To be used in TSan and in leak checking code.
Linux implementation provided.
Patch by Sergey Matveev (earthdok@google.com)
llvm-svn: 177156
|
|
|
|
| |
llvm-svn: 177151
|
|
|
|
| |
llvm-svn: 177149
|