diff options
author | Mike Aizatsky <aizatsky@chromium.org> | 2017-01-05 16:55:56 +0000 |
---|---|---|
committer | Mike Aizatsky <aizatsky@chromium.org> | 2017-01-05 16:55:56 +0000 |
commit | dc58a7d6187f468a2bcd26fcdfbce5b2c9a51d7a (patch) | |
tree | ebf71dd9c204160d74310124be96f07fe5ac6672 | |
parent | e20a3a4831f7308cf7909bb58ded5ac718305872 (diff) | |
download | llvm-dc58a7d6187f468a2bcd26fcdfbce5b2c9a51d7a.zip llvm-dc58a7d6187f468a2bcd26fcdfbce5b2c9a51d7a.tar.gz llvm-dc58a7d6187f468a2bcd26fcdfbce5b2c9a51d7a.tar.bz2 |
Revert "[sancov] introducing SANCOV_OPTIONS"
and related changes
https://llvm.org/svn/llvm-project/compiler-rt/trunk@291068
llvm-svn: 291141
6 files changed, 4 insertions, 170 deletions
diff --git a/compiler-rt/lib/sanitizer_common/CMakeLists.txt b/compiler-rt/lib/sanitizer_common/CMakeLists.txt index c70b8be..0d9a7f0 100644 --- a/compiler-rt/lib/sanitizer_common/CMakeLists.txt +++ b/compiler-rt/lib/sanitizer_common/CMakeLists.txt @@ -52,7 +52,6 @@ set(SANITIZER_NOLIBC_SOURCES set(SANITIZER_LIBCDEP_SOURCES sanitizer_common_libcdep.cc - sancov_flags.cc sanitizer_coverage_libcdep.cc sanitizer_coverage_libcdep_new.cc sanitizer_coverage_mapping_libcdep.cc diff --git a/compiler-rt/lib/sanitizer_common/sancov_flags.cc b/compiler-rt/lib/sanitizer_common/sancov_flags.cc deleted file mode 100644 index cef4fa9..0000000 --- a/compiler-rt/lib/sanitizer_common/sancov_flags.cc +++ /dev/null @@ -1,60 +0,0 @@ -//===-- sancov_flags.cc -----------------------------------------*- C++ -*-===// -// -// The LLVM Compiler Infrastructure -// -// This file is distributed under the University of Illinois Open Source -// License. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// -// -// Sanitizer Coverage runtime flags. -// -//===----------------------------------------------------------------------===// - -#include "sancov_flags.h" -#include "sanitizer_flag_parser.h" -#include "sanitizer_platform.h" - -#if SANITIZER_WINDOWS -// Windows doesn't have weak symbols. -extern "C" const char* __sancov_default_options() { return ""; } -#endif - -using namespace __sanitizer; - -namespace __sancov { - -SancovFlags sancov_flags_dont_use_directly; // use via flags(); - -void SancovFlags::SetDefaults() { -#define SANCOV_FLAG(Type, Name, DefaultValue, Description) Name = DefaultValue; -#include "sancov_flags.inc" -#undef SANCOV_FLAG -} - -static void RegisterSancovFlags(FlagParser *parser, SancovFlags *f) { -#define SANCOV_FLAG(Type, Name, DefaultValue, Description) \ - RegisterFlag(parser, #Name, Description, &f->Name); -#include "sancov_flags.inc" -#undef SANCOV_FLAG -} - -static const char *MaybeCallSancovDefaultOptions() { - return (&__sancov_default_options) ? __sancov_default_options() : ""; -} - -void InitializeSancovFlags() { - SancovFlags *f = sancov_flags(); - f->SetDefaults(); - - FlagParser parser; - RegisterSancovFlags(&parser, f); - - parser.ParseString(MaybeCallSancovDefaultOptions()); - parser.ParseString(GetEnv("SANCOV_OPTIONS")); - - ReportUnrecognizedFlags(); - if (f->help) parser.PrintFlagDescriptions(); -} - -} // namespace __sancov diff --git a/compiler-rt/lib/sanitizer_common/sancov_flags.h b/compiler-rt/lib/sanitizer_common/sancov_flags.h deleted file mode 100644 index 5fbd7ad..0000000 --- a/compiler-rt/lib/sanitizer_common/sancov_flags.h +++ /dev/null @@ -1,40 +0,0 @@ -//===-- sancov_flags.h ------------------------------------------*- C++ -*-===// -// -// The LLVM Compiler Infrastructure -// -// This file is distributed under the University of Illinois Open Source -// License. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// -// -// Sanitizer Coverage runtime flags. -// -//===----------------------------------------------------------------------===// -#ifndef SANCOV_FLAGS_H -#define SANCOV_FLAGS_H - -#include "sanitizer_flag_parser.h" -#include "sanitizer_internal_defs.h" - -namespace __sancov { - -struct SancovFlags { -#define SANCOV_FLAG(Type, Name, DefaultValue, Description) Type Name; -#include "sancov_flags.inc" -#undef SANCOV_FLAG - - void SetDefaults(); -}; - -extern SancovFlags sancov_flags_dont_use_directly; - -inline SancovFlags* sancov_flags() { return &sancov_flags_dont_use_directly; } - -void InitializeSancovFlags(); - -extern "C" SANITIZER_INTERFACE_ATTRIBUTE SANITIZER_WEAK_ATTRIBUTE const char* -__sancov_default_options(); - -} // namespace __sancov - -#endif diff --git a/compiler-rt/lib/sanitizer_common/sancov_flags.inc b/compiler-rt/lib/sanitizer_common/sancov_flags.inc deleted file mode 100644 index 63a1f0c..0000000 --- a/compiler-rt/lib/sanitizer_common/sancov_flags.inc +++ /dev/null @@ -1,21 +0,0 @@ -//===-- sancov_flags.inc ----------------------------------------*- C++ -*-===// -// -// The LLVM Compiler Infrastructure -// -// This file is distributed under the University of Illinois Open Source -// License. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// -// -// Sanitizer Coverage runtime flags. -// -//===----------------------------------------------------------------------===// -#ifndef SANCOV_FLAG -#error "Defnine SANCOV_FLAG prior to including this file!" -#endif - -SANCOV_FLAG(bool, symbolize, true, - "If set, converage information will be symbolized by sancov tool " - "after dumping.") - -SANCOV_FLAG(bool, help, false, "Print flags help.") diff --git a/compiler-rt/lib/sanitizer_common/sanitizer_coverage_libcdep_new.cc b/compiler-rt/lib/sanitizer_common/sanitizer_coverage_libcdep_new.cc index df6d10f..d83b779 100644 --- a/compiler-rt/lib/sanitizer_common/sanitizer_coverage_libcdep_new.cc +++ b/compiler-rt/lib/sanitizer_common/sanitizer_coverage_libcdep_new.cc @@ -8,7 +8,6 @@ //===----------------------------------------------------------------------===// // Sanitizer Coverage Controller for Trace PC Guard. -#include "sancov_flags.h" #include "sanitizer_allocator_internal.h" #include "sanitizer_atomic.h" #include "sanitizer_common.h" @@ -18,7 +17,6 @@ using namespace __sanitizer; using AddressRange = LoadedModule::AddressRange; -namespace __sancov { namespace { static const u64 Magic64 = 0xC0BFFFFFFFFFFF64ULL; @@ -98,10 +96,6 @@ static void SanitizerDumpCoverage(const uptr* unsorted_pcs, uptr len) { InternalFree(file_path); InternalFree(module_name); InternalFree(pcs); - - if (sancov_flags()->symbolize) { - Printf("TODO(aizatsky): call sancov to symbolize\n"); - } } // Collects trace-pc guard coverage. @@ -112,8 +106,6 @@ class TracePcGuardController { CHECK(!initialized); initialized = true; - InitializeSancovFlags(); - pc_vector.Initialize(0); } @@ -148,27 +140,26 @@ class TracePcGuardController { static TracePcGuardController pc_guard_controller; } // namespace -} // namespace __sancov extern "C" { SANITIZER_INTERFACE_ATTRIBUTE void __sanitizer_dump_coverage( // NOLINT const uptr* pcs, uptr len) { - return __sancov::SanitizerDumpCoverage(pcs, len); + return SanitizerDumpCoverage(pcs, len); } SANITIZER_INTERFACE_ATTRIBUTE SANITIZER_WEAK_ATTRIBUTE void __sanitizer_cov_trace_pc_guard(u32* guard) { if (!*guard) return; - __sancov::pc_guard_controller.TracePcGuard(guard, GET_CALLER_PC() - 1); + pc_guard_controller.TracePcGuard(guard, GET_CALLER_PC() - 1); } SANITIZER_INTERFACE_ATTRIBUTE SANITIZER_WEAK_ATTRIBUTE void __sanitizer_cov_trace_pc_guard_init(u32* start, u32* end) { if (start == end || *start) return; - __sancov::pc_guard_controller.InitTracePcGuard(start, end); + pc_guard_controller.InitTracePcGuard(start, end); } SANITIZER_INTERFACE_ATTRIBUTE void __sanitizer_dump_trace_pc_guard_coverage() { - __sancov::pc_guard_controller.Dump(); + pc_guard_controller.Dump(); } } // extern "C" diff --git a/compiler-rt/test/sanitizer_common/TestCases/sanitizer_coverage_symbolize.cc b/compiler-rt/test/sanitizer_common/TestCases/sanitizer_coverage_symbolize.cc deleted file mode 100644 index 44fe9c0..0000000 --- a/compiler-rt/test/sanitizer_common/TestCases/sanitizer_coverage_symbolize.cc +++ /dev/null @@ -1,35 +0,0 @@ -// Tests trace pc guard coverage collection. -// -// REQUIRES: has_sancovcc,stable-runtime -// XFAIL: tsan,darwin -// TODO: this will fail on powerpc64,s390x once sancov will be called. -// -// RUN: DIR=%t_workdir -// RUN: rm -rf $DIR -// RUN: mkdir -p $DIR -// RUN: cd $DIR -// RUN: %clangxx -O0 -fsanitize-coverage=trace-pc-guard %s -ldl -o %t -// RUN: %env_tool_opts=coverage=1 %t 2>&1 | FileCheck %s -// RUN: %env_tool_opts=coverage=1 SANCOV_OPTIONS=symbolize=0 %t 2>&1 | FileCheck %s --check-prefix=CHECK-NOSYM -// RUN: rm -rf $DIR - -#include <stdio.h> - -int foo() { - fprintf(stderr, "foo\n"); - return 1; -} - -int main() { - fprintf(stderr, "main\n"); - foo(); - foo(); -} - -// CHECK: main -// CHECK: SanitizerCoverage: ./sanitizer_coverage_symbolize.{{.*}}.sancov 2 PCs written -// CHECK: call sancov - -// CHECK-NOSYM: main -// CHECK-NOSYM: SanitizerCoverage: ./sanitizer_coverage_symbolize.{{.*}}.sancov 2 PCs written -// CHECK-NOSYM-NOT: call sancov |