llvm-project/compiler-rt/lib/xray/xray_basic_flags.h
Dean Michael Berris 47e6b8c2c7 [XRay][compiler-rt] Support string-based config for Basic mode.
Summary:
This addresses http://llvm.org/PR36790.

This change allows the XRay Basic Mode implementation to use the
string-based initialization routine provided through
`__xray_log_init_mode(...)`. In the process, we've also deprecated some
flags defined for the `XRAY_OPTIONS` environment variable.

We then introduce another environment variable that can control the XRay
Basic Mode implementation through `XRAY_BASIC_OPTIONS`.

We also rename files from `xray_inmemory_log` to `xray_basic_logging` to
be more in line with the mode implementation.

Depends on D46174.

Reviewers: echristo, kpw, pelikan, eizan

Reviewed By: kpw

Subscribers: mgorny, llvm-commits

Differential Revision: https://reviews.llvm.org/D46246

llvm-svn: 331507
2018-05-04 06:27:53 +00:00

39 lines
1.2 KiB
C++

//===-- xray_basic_flags.h -------------------------------------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
//
// 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