//===-- xray_basic_flags.h -------------------------------------*- C++ -*-===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// // // This file is a part of XRay, a dynamic runtime instruementation system. // // XRay Basic Mode runtime flags. //===----------------------------------------------------------------------===// #ifndef XRAY_BASIC_FLAGS_H #define XRAY_BASIC_FLAGS_H #include "sanitizer_common/sanitizer_flag_parser.h" #include "sanitizer_common/sanitizer_internal_defs.h" namespace __xray { struct BasicFlags { #define XRAY_FLAG(Type, Name, DefaultValue, Description) Type Name; #include "xray_basic_flags.inc" #undef XRAY_FLAG void setDefaults(); }; extern BasicFlags xray_basic_flags_dont_use_directly; extern void registerXRayBasicFlags(FlagParser *P, BasicFlags *F); const char *useCompilerDefinedBasicFlags(); inline BasicFlags *basicFlags() { return &xray_basic_flags_dont_use_directly; } } // namespace __xray #endif // XRAY_BASIC_FLAGS_H