1 //===-- dfsan_flags.inc -----------------------------------------*- C++ -*-===//
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
7 //===----------------------------------------------------------------------===//
9 // DFSan runtime flags.
11 //===----------------------------------------------------------------------===//
13 # error "Define DFSAN_FLAG prior to including this file!"
16 // DFSAN_FLAG(Type, Name, DefaultValue, Description)
17 // See COMMON_FLAG in sanitizer_flags.inc for more details.
19 DFSAN_FLAG(bool, warn_unimplemented, false,
20 "Whether to warn on unimplemented functions.")
21 DFSAN_FLAG(bool, warn_nonzero_labels, false,
22 "Whether to warn on unimplemented functions.")
24 bool, strict_data_dependencies, true,
25 "Whether to propagate labels only when there is an obvious data dependency"
26 "(e.g., when comparing strings, ignore the fact that the output of the"
27 "comparison might be data-dependent on the content of the strings). This"
28 "applies only to the custom functions defined in 'custom.c'.")
30 int, origin_history_size, Origin::kMaxDepth,
31 "The limit of origin chain length. Non-positive values mean unlimited.")
33 int, origin_history_per_stack_limit, 20000,
34 "The limit of origin node's references count. "
35 "Non-positive values mean unlimited.")
36 DFSAN_FLAG(int, store_context_size, 20,
37 "The depth limit of origin tracking stack traces.")
38 DFSAN_FLAG(bool, check_origin_invariant, false,
39 "Whether to check if the origin invariant holds.")
40 DFSAN_FLAG(bool, zero_in_malloc, true,
41 "Whether to zero shadow space of new allocated memory.")
42 DFSAN_FLAG(bool, zero_in_free, true,
43 "Whether to zero shadow space of deallocated memory.")