LLVM 19.0.0git
PGOOptions.h
Go to the documentation of this file.
1//===------ PGOOptions.h -- PGO option tunables ----------------*- 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/// \file
9///
10/// Define option tunables for PGO.
11///
12//===----------------------------------------------------------------------===//
13
14#ifndef LLVM_SUPPORT_PGOOPTIONS_H
15#define LLVM_SUPPORT_PGOOPTIONS_H
16
18#include "llvm/Support/Error.h"
19
20namespace llvm {
21
22namespace vfs {
23class FileSystem;
24} // namespace vfs
25
26/// A struct capturing PGO tunables.
27struct PGOOptions {
31 PGOOptions(std::string ProfileFile, std::string CSProfileGenFile,
32 std::string ProfileRemappingFile, std::string MemoryProfile,
36 bool DebugInfoForProfiling = false,
37 bool PseudoProbeForProfiling = false,
38 bool AtomicCounterUpdate = false);
42
43 std::string ProfileFile;
44 std::string CSProfileGenFile;
46 std::string MemoryProfile;
54};
55} // namespace llvm
56
57#endif
This file defines the RefCountedBase, ThreadSafeRefCountedBase, and IntrusiveRefCntPtr classes.
A smart pointer to a reference-counted object that inherits from RefCountedBase or ThreadSafeRefCount...
This is an optimization pass for GlobalISel generic memory operations.
Definition: AddressRanges.h:18
A struct capturing PGO tunables.
Definition: PGOOptions.h:27
bool DebugInfoForProfiling
Definition: PGOOptions.h:50
std::string MemoryProfile
Definition: PGOOptions.h:46
std::string ProfileFile
Definition: PGOOptions.h:43
std::string CSProfileGenFile
Definition: PGOOptions.h:44
PGOAction Action
Definition: PGOOptions.h:47
ColdFuncOpt ColdOptType
Definition: PGOOptions.h:49
PGOOptions & operator=(const PGOOptions &)
PGOOptions(const PGOOptions &)
IntrusiveRefCntPtr< vfs::FileSystem > FS
Definition: PGOOptions.h:53
std::string ProfileRemappingFile
Definition: PGOOptions.h:45
CSPGOAction CSAction
Definition: PGOOptions.h:48
bool AtomicCounterUpdate
Definition: PGOOptions.h:52
bool PseudoProbeForProfiling
Definition: PGOOptions.h:51