forked from OSchip/llvm-project
[lsan] Remove the LSan-specific verbosity flag.
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
This commit is contained in:
parent
de50ff3c4b
commit
149b794ec6
|
@ -1,7 +1,7 @@
|
|||
// Test for __lsan_ignore_object().
|
||||
// RUN: LSAN_BASE="report_objects=1:use_registers=0:use_stacks=0:use_globals=0:use_tls=0:verbosity=3"
|
||||
// RUN: LSAN_BASE="report_objects=1:use_registers=0:use_stacks=0:use_globals=0:use_tls=0:verbosity=2"
|
||||
// RUN: %clangxx_lsan %s -o %t
|
||||
// RUN: LSAN_OPTIONS=$LSAN_BASE not %t 2>&1 | FileCheck %s
|
||||
// RUN: LSAN_OPTIONS=$LSAN_BASE ASAN_OPTIONS=$ASAN_OPTIONS:"verbosity=2" not %t 2>&1 | FileCheck %s
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
@ -9,12 +9,6 @@
|
|||
#include "sanitizer/lsan_interface.h"
|
||||
|
||||
int main() {
|
||||
{
|
||||
// The first malloc call can cause an allocation in libdl. Ignore it here so
|
||||
// it doesn't show up in our output.
|
||||
__lsan::ScopedDisabler d;
|
||||
malloc(1);
|
||||
}
|
||||
// Explicitly ignored object.
|
||||
void **p = new void *;
|
||||
// Transitively ignored object.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// Test for incorrect use of __lsan_ignore_object().
|
||||
// RUN: LSAN_BASE="verbosity=2"
|
||||
// RUN: %clangxx_lsan %s -o %t
|
||||
// RUN: LSAN_OPTIONS=$LSAN_BASE %t 2>&1 | FileCheck %s
|
||||
// RUN: LSAN_OPTIONS=$LSAN_BASE ASAN_OPTIONS=$ASAN_OPTIONS:verbosity=2 %t 2>&1 | FileCheck %s
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
|
|
@ -52,7 +52,6 @@ static void InitializeFlags() {
|
|||
f->use_root_regions = true;
|
||||
f->use_unaligned = false;
|
||||
f->use_poisoned = false;
|
||||
f->verbosity = 0;
|
||||
f->log_pointers = false;
|
||||
f->log_threads = false;
|
||||
|
||||
|
@ -70,7 +69,6 @@ static void InitializeFlags() {
|
|||
CHECK_GE(&f->resolution, 0);
|
||||
ParseFlag(options, &f->max_leaks, "max_leaks");
|
||||
CHECK_GE(&f->max_leaks, 0);
|
||||
ParseFlag(options, &f->verbosity, "verbosity");
|
||||
ParseFlag(options, &f->log_pointers, "log_pointers");
|
||||
ParseFlag(options, &f->log_threads, "log_threads");
|
||||
ParseFlag(options, &f->exitcode, "exitcode");
|
||||
|
@ -614,13 +612,13 @@ void __lsan_ignore_object(const void *p) {
|
|||
// locked.
|
||||
BlockingMutexLock l(&global_mutex);
|
||||
IgnoreObjectResult res = IgnoreObjectLocked(p);
|
||||
if (res == kIgnoreObjectInvalid && flags()->verbosity >= 2)
|
||||
Report("__lsan_ignore_object(): no heap object found at %p", p);
|
||||
if (res == kIgnoreObjectAlreadyIgnored && flags()->verbosity >= 2)
|
||||
Report("__lsan_ignore_object(): "
|
||||
if (res == kIgnoreObjectInvalid)
|
||||
VReport(1, "__lsan_ignore_object(): no heap object found at %p", p);
|
||||
if (res == kIgnoreObjectAlreadyIgnored)
|
||||
VReport(1, "__lsan_ignore_object(): "
|
||||
"heap object at %p is already being ignored\n", p);
|
||||
if (res == kIgnoreObjectSuccess && flags()->verbosity >= 3)
|
||||
Report("__lsan_ignore_object(): ignoring heap object at %p\n", p);
|
||||
if (res == kIgnoreObjectSuccess)
|
||||
VReport(1, "__lsan_ignore_object(): ignoring heap object at %p\n", p);
|
||||
#endif // CAN_SANITIZE_LEAKS
|
||||
}
|
||||
|
||||
|
@ -631,8 +629,7 @@ void __lsan_register_root_region(const void *begin, uptr size) {
|
|||
CHECK(root_regions);
|
||||
RootRegion region = {begin, size};
|
||||
root_regions->push_back(region);
|
||||
if (flags()->verbosity)
|
||||
Report("Registered root region at %p of size %llu\n", begin, size);
|
||||
VReport(1, "Registered root region at %p of size %llu\n", begin, size);
|
||||
#endif // CAN_SANITIZE_LEAKS
|
||||
}
|
||||
|
||||
|
@ -649,8 +646,7 @@ void __lsan_unregister_root_region(const void *begin, uptr size) {
|
|||
uptr last_index = root_regions->size() - 1;
|
||||
(*root_regions)[i] = (*root_regions)[last_index];
|
||||
root_regions->pop_back();
|
||||
if (flags()->verbosity)
|
||||
Report("Unregistered root region at %p of size %llu\n", begin, size);
|
||||
VReport(1, "Unregistered root region at %p of size %llu\n", begin, size);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -73,9 +73,6 @@ struct Flags {
|
|||
// Consider pointers found in poisoned memory to be valid.
|
||||
bool use_poisoned;
|
||||
|
||||
// User-visible verbosity.
|
||||
int verbosity;
|
||||
|
||||
// Debug logging.
|
||||
bool log_pointers;
|
||||
bool log_threads;
|
||||
|
|
Loading…
Reference in New Issue