diff options
| author | Derek Bruening <bruening@google.com> | 2016-05-20 19:26:52 +0000 |
|---|---|---|
| committer | Derek Bruening <bruening@google.com> | 2016-05-20 19:26:52 +0000 |
| commit | a85de06dd2b2987bf4da7b58703ed2137f40aeba (patch) | |
| tree | 85699e4f677b4ad918773148eaf1562aae51e607 /compiler-rt/lib/esan/esan_flags.h | |
| parent | c7f4922524e262162a38179adea7cfc0096dcd55 (diff) | |
| download | bcm5719-llvm-a85de06dd2b2987bf4da7b58703ed2137f40aeba.tar.gz bcm5719-llvm-a85de06dd2b2987bf4da7b58703ed2137f40aeba.zip | |
[esan] Add custom flag support
Summary:
Adds custom flag support to EfficiencySanitizer's runtime library.
Adds an initial flag cache_line_size which will be used by multiple tools.
Reviewers: aizatsky, vitalybuka
Subscribers: llvm-commits, eugenis, kcc, zhaoqin, aizatsky, kubabrecka
Differential Revision: http://reviews.llvm.org/D20478
llvm-svn: 270256
Diffstat (limited to 'compiler-rt/lib/esan/esan_flags.h')
| -rw-r--r-- | compiler-rt/lib/esan/esan_flags.h | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/compiler-rt/lib/esan/esan_flags.h b/compiler-rt/lib/esan/esan_flags.h new file mode 100644 index 00000000000..c8f4ef5ab2b --- /dev/null +++ b/compiler-rt/lib/esan/esan_flags.h @@ -0,0 +1,41 @@ +//===-- esan_flags.h --------------------------------------------*- C++ -*-===// +// +// The LLVM Compiler Infrastructure +// +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// +// +// This file is a part of EfficiencySanitizer, a family of performance tuners. +// +// Esan runtime flags. +//===----------------------------------------------------------------------===// + +#ifndef ESAN_FLAGS_H +#define ESAN_FLAGS_H + +#include "sanitizer_common/sanitizer_internal_defs.h" +#include "sanitizer_common/sanitizer_flag_parser.h" + +namespace __esan { + +class Flags { +public: +#define ESAN_FLAG(Type, Name, DefaultValue, Description) Type Name; +#include "esan_flags.inc" +#undef ESAN_FLAG + + void setDefaults(); +}; + +extern Flags EsanFlagsDontUseDirectly; +inline Flags *getFlags() { + return &EsanFlagsDontUseDirectly; +} + +void initializeFlags(); + +} // namespace __esan + +#endif // ESAN_FLAGS_H |

