1 | //===-- nsan_flags.inc ------------------------------------------*- C++ -*-===// |
2 | // |
3 | // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. |
4 | // See https://llvm.org/LICENSE.txt for license information. |
5 | // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception |
6 | // |
7 | //===----------------------------------------------------------------------===// |
8 | // |
9 | // NSan runtime flags. |
10 | // |
11 | //===----------------------------------------------------------------------===// |
12 | #ifndef NSAN_FLAG |
13 | #error "Define NSAN_FLAG prior to including this file!" |
14 | #endif |
15 | |
16 | // NSAN_FLAG(Type, Name, DefaultValue, Description) |
17 | // See COMMON_FLAG in sanitizer_flags.inc for more details. |
18 | |
19 | NSAN_FLAG(bool, halt_on_error, true, "If true, halt after the first error." ) |
20 | NSAN_FLAG(bool, resume_after_warning, true, |
21 | "If true, we resume resume the computation from the original " |
22 | "application floating-point value after a warning. If false, " |
23 | "computations continue with the shadow value." ) |
24 | NSAN_FLAG(const char *, suppressions, "" , "Suppressions file name." ) |
25 | NSAN_FLAG(bool, resume_after_suppression, true, |
26 | "If true, a suppression will also resume the computation from the FT" |
27 | " domain. If false, output is suppressed but the shadow value is" |
28 | " retained." ) |
29 | // FIXME: should this be specified in units of epsilon instead? |
30 | NSAN_FLAG(int, log2_max_relative_error, 19, |
31 | "Log2 maximum admissible relative error, e.g. 19 means max relative " |
32 | "error of 1/2^19 ~= 0.000002." ) |
33 | NSAN_FLAG(int, log2_absolute_error_threshold, 32, |
34 | "Log2 maximum admissible absolute error. Any numbers closer than " |
35 | "1/2^n are considered to be the same." ) |
36 | NSAN_FLAG(bool, disable_warnings, false, |
37 | "If true, disable warning printing. This is useful to only compute " |
38 | "stats." ) |
39 | NSAN_FLAG(bool, enable_check_stats, false, |
40 | "If true, compute check stats, i.e. for each line, the number of " |
41 | "times a check was performed on this line." ) |
42 | NSAN_FLAG(bool, enable_warning_stats, false, |
43 | "If true, compute warning stats, i.e. for each line, the number of " |
44 | "times a warning was emitted for this line." ) |
45 | NSAN_FLAG(bool, enable_loadtracking_stats, false, |
46 | "If true, compute load tracking stats, i.e. for each load from " |
47 | "memory, the number of times nsan resumed from the original value " |
48 | "due to invalid or unknown types." ) |
49 | NSAN_FLAG(bool, print_stats_on_exit, false, "If true, print stats on exit." ) |
50 | |