36 lines · c
1//===-- nsan_flags.h --------------------------------------------*- 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-exception6//7//===----------------------------------------------------------------------===//8//9// This file is a part of NumericalStabilitySanitizer.10//===----------------------------------------------------------------------===//11 12#ifndef NSAN_FLAGS_H13#define NSAN_FLAGS_H14 15namespace __nsan {16 17struct Flags {18#define NSAN_FLAG(Type, Name, DefaultValue, Description) Type Name;19#include "nsan_flags.inc"20#undef NSAN_FLAG21 22 double cached_absolute_error_threshold = 0.0;23 24 void SetDefaults();25 void PopulateCache();26};27 28extern Flags flags_data;29inline Flags &flags() { return flags_data; }30 31void InitializeFlags();32 33} // namespace __nsan34 35#endif36