]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - contrib/compiler-rt/lib/esan/esan_flags.h
Merge ACPICA 20170929.
[FreeBSD/FreeBSD.git] / contrib / compiler-rt / lib / esan / esan_flags.h
1 //===-- esan_flags.h --------------------------------------------*- C++ -*-===//
2 //
3 //                     The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 //
10 // This file is a part of EfficiencySanitizer, a family of performance tuners.
11 //
12 // Esan runtime flags.
13 //===----------------------------------------------------------------------===//
14
15 #ifndef ESAN_FLAGS_H
16 #define ESAN_FLAGS_H
17
18 #include "sanitizer_common/sanitizer_internal_defs.h"
19 #include "sanitizer_common/sanitizer_flag_parser.h"
20
21 namespace __esan {
22
23 class Flags {
24 public:
25 #define ESAN_FLAG(Type, Name, DefaultValue, Description) Type Name;
26 #include "esan_flags.inc"
27 #undef ESAN_FLAG
28
29   void setDefaults();
30 };
31
32 extern Flags EsanFlagsDontUseDirectly;
33 inline Flags *getFlags() {
34   return &EsanFlagsDontUseDirectly;
35 }
36
37 void initializeFlags();
38
39 } // namespace __esan
40
41 #endif // ESAN_FLAGS_H