1//===-- xray_profiling_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// XRay profiling runtime flags.
10//
11//===----------------------------------------------------------------------===//
12#ifndef XRAY_FLAG
13#error "Define XRAY_FLAG prior to including this file!"
14#endif
15
16XRAY_FLAG(uptr, per_thread_allocator_max, 16384,
17 "Maximum size of any single per-thread allocator.")
18XRAY_FLAG(uptr, global_allocator_max, 2 << 24,
19 "Maximum size of the global allocator for profile storage.")
20XRAY_FLAG(uptr, stack_allocator_max, 2 << 20,
21 "Maximum size of the traversal stack allocator.")
22XRAY_FLAG(int, grace_period_ms, 1,
23 "Profile collection will wait this much time in milliseconds before "
24 "resetting the global state. This gives a chance to threads to "
25 "notice that the profiler has been finalized and clean up.")
26XRAY_FLAG(bool, no_flush, false,
27 "Set to true if we want the profiling implementation to not write "
28 "out files.")
29XRAY_FLAG(int, buffers_max, 128,
30 "The number of buffers to pre-allocate used by the profiling "
31 "implementation.")
32