| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
| |
Print the list of leaked objects after each leak report. Previously we
printed only a joint list of all leaked objects. As a bonus, suppressed objects
are no longer reported.
llvm-svn: 197977
|
|
|
|
| |
llvm-svn: 197808
|
|
|
|
| |
llvm-svn: 197569
|
|
|
|
|
|
|
|
|
| |
It conflicted with the verbosity flag we had in common flags. We don't need an
LSan-specific flag anyway.
Also, shift some logging levels and remove some unnecessary code.
llvm-svn: 197512
|
|
|
|
|
|
|
|
|
| |
Introduce a flag to either always or never print matched suppressions.
Previously, matched suppressions were printed unconditionally if there were
unsuppressed leaks. Also, verbosity=1 no longer has the semantics of "always
print suppressions and summary".
llvm-svn: 197510
|
|
|
|
|
|
|
|
|
| |
If 'symbolize' flag is not set, we still want to transform virtual address
to module+offset pair in the call to Symbolizer::SymbolizeCode().
See https://code.google.com/p/address-sanitizer/issues/detail?id=251 for
more details.
llvm-svn: 197491
|
|
|
|
|
|
|
| |
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: 197488
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
No more (potenital) false negatives due to red zones or fake stack
frames.
Reviewers: kcc, samsonov
Reviewed By: samsonov
CC: llvm-commits, samsonov
Differential Revision: http://llvm-reviews.chandlerc.com/D2359
llvm-svn: 196778
|
|
|
|
|
|
|
|
| |
- running_on_valgrind was not parsed in some contexts
- refactor code a bit
- add comprehensive tests for flags parsing
llvm-svn: 195831
|
|
|
|
|
|
| |
Also, add missing logging output.
llvm-svn: 195652
|
|
|
|
| |
llvm-svn: 195643
|
|
|
|
|
|
|
|
| |
No longer allow interceptors to be called during initialization, use the preinit
array (instead of initializing at the first call to an intercepted function) and
adopt the calloc() hack from ASan.
llvm-svn: 195642
|
|
|
|
|
|
|
| |
Performance improvement. Also, the allocator was using CompactSizeClassMap for
no good reason, so I switched it to DefaultSizeClassMap.
llvm-svn: 195570
|
|
|
|
| |
llvm-svn: 194479
|
|
|
|
|
|
|
|
|
|
| |
CMake changes to build the ASan runtime for the iOS simulator. This is a universal library targeting the same architectures as the OSX ASan runtime does, thus the iossim version can't live in the same universal libclang_rt.asan_osx_dynamic.dylib
The difference between the OSX and iossim builds is in the -mios-simulator-version-min and -ios_simulator_version_min flags that tell Clang to compile and link iossim code.
The iossim runtime can only be built on a machine with both Xcode and the iOS Simulator SDK installed. If xcodebuild -version -sdk iphonesimulator Path returns a nonempty path, it is used when compiling and linking the iossim runtime.
llvm-svn: 194199
|
|
|
|
|
|
|
|
|
|
| |
This change unifies the summary printing across sanitizers:
now each tool uses specific version of ReportErrorSummary() method,
which deals with symbolization of the top frame and formatting a
summary message. This change modifies the summary line for ASan+LSan mode:
now the summary mentions "AddressSanitizer" instead of "LeakSanitizer".
llvm-svn: 193864
|
|
|
|
| |
llvm-svn: 193834
|
|
|
|
|
|
| |
to turn on/off the symbolization
llvm-svn: 193587
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This moves away from creating the symbolizer object and initializing the
external symbolizer as separate steps. Those steps now always take place
together.
Sanitizers with a legacy requirement to specify their own symbolizer path
should use InitSymbolizer to initialize the symbolizer with the desired
path, and GetSymbolizer to access the symbolizer. Sanitizers with no
such requirement (e.g. UBSan) can use GetOrInitSymbolizer with no need for
initialization.
The symbolizer interface has been made thread-safe (as far as I can
tell) by protecting its member functions with mutexes.
Finally, the symbolizer interface no longer relies on weak externals, the
introduction of which was probably a mistake on my part.
Differential Revision: http://llvm-reviews.chandlerc.com/D1985
llvm-svn: 193448
|
|
|
|
| |
llvm-svn: 193232
|
|
|
|
|
|
|
|
| |
In particular, don't make a fuss if we're passed a malformed suppressions file,
or if we have trouble identifying ld.so. Also, make LSan interface functions
no-ops in this case.
llvm-svn: 193108
|
|
|
|
|
|
|
| |
If an object contains pointers to itself, that doesn't make it indirectly
leaked. D'oh!
llvm-svn: 192716
|
|
|
|
|
|
| |
now it's available from common_flags()
llvm-svn: 192705
|
|
|
|
|
|
| |
Treat the fake stack as live memory.
llvm-svn: 192593
|
|
|
|
|
|
|
|
| |
Call AsanThread::Destroy() from a late-running TSD destructor.
Previously we called it before any user-registered TSD destructors, which caused
false positives in LeakSanitizer.
llvm-svn: 192585
|
|
|
|
| |
llvm-svn: 192533
|
|
|
|
|
|
|
|
| |
sanitizer_linux.h.
Add a test.
llvm-svn: 192442
|
|
|
|
|
|
| |
across sanitizers
llvm-svn: 191943
|
|
|
|
| |
llvm-svn: 191662
|
|
|
|
| |
llvm-svn: 191522
|
|
|
|
|
|
|
| |
Fixes PR17116.
Patch by 林作健 (manjian2006 at gmail.com).
llvm-svn: 190590
|
|
|
|
|
|
| |
functions. Move some code around to get rid of extra source files
llvm-svn: 190410
|
|
|
|
| |
llvm-svn: 189804
|
|
|
|
|
|
| |
provided. Now we don't need to explicitly set the location of llvm-symbolizer in lit test configs.
llvm-svn: 189801
|
|
|
|
|
|
| |
libraries
llvm-svn: 189350
|
|
|
|
| |
llvm-svn: 189347
|
|
|
|
|
|
|
| |
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: 189092
|
|
|
|
| |
llvm-svn: 189016
|
|
|
|
| |
llvm-svn: 189012
|
|
|
|
|
|
| |
Fix issue where C code could not be built with -fsanitize=leak.
llvm-svn: 189010
|
|
|
|
|
|
| |
(compiler-rt part)
llvm-svn: 188804
|
|
|
|
|
|
| |
SANITIZER_INTERFACE_ATTRIBUTE or SANITIZER_ATTRIBUTE_WEAK are used
llvm-svn: 188261
|
|
|
|
| |
llvm-svn: 188116
|
|
|
|
| |
llvm-svn: 187873
|
|
|
|
|
|
|
|
| |
We needed a way to tell LSan to invoke leak checking only if __do_leak_check()
is called explicitly. This can now be achieved by setting
leak_check_at_exit=false.
llvm-svn: 187578
|
|
|
|
| |
llvm-svn: 187274
|
|
|
|
|
|
| |
Also move detect_leaks to common flags.
llvm-svn: 186821
|
|
|
|
|
|
| |
Direct leaks are higher priority, so it makes sense to have them on top.
llvm-svn: 186819
|