LLVM 22.0.0git
llvm::PGOOptions Struct Reference

A struct capturing PGO tunables. More...

#include "llvm/Support/PGOOptions.h"

Public Types

enum  PGOAction { NoAction , IRInstr , IRUse , SampleUse }
enum  CSPGOAction { NoCSAction , CSIRInstr , CSIRUse }
enum class  ColdFuncOpt { Default , OptSize , MinSize , OptNone }

Public Member Functions

LLVM_ABI PGOOptions (std::string ProfileFile, std::string CSProfileGenFile, std::string ProfileRemappingFile, std::string MemoryProfile, IntrusiveRefCntPtr< vfs::FileSystem > FS, PGOAction Action=NoAction, CSPGOAction CSAction=NoCSAction, ColdFuncOpt ColdType=ColdFuncOpt::Default, bool DebugInfoForProfiling=false, bool PseudoProbeForProfiling=false, bool AtomicCounterUpdate=false)
LLVM_ABI PGOOptions (const PGOOptions &)
LLVM_ABI ~PGOOptions ()
LLVM_ABI PGOOptionsoperator= (const PGOOptions &)

Public Attributes

std::string ProfileFile
std::string CSProfileGenFile
std::string ProfileRemappingFile
std::string MemoryProfile
PGOAction Action
CSPGOAction CSAction
ColdFuncOpt ColdOptType
bool DebugInfoForProfiling
bool PseudoProbeForProfiling
bool AtomicCounterUpdate
IntrusiveRefCntPtr< vfs::FileSystemFS

Detailed Description

A struct capturing PGO tunables.

Definition at line 28 of file PGOOptions.h.

Member Enumeration Documentation

◆ ColdFuncOpt

enum class llvm::PGOOptions::ColdFuncOpt
strong
Enumerator
Default 
OptSize 
MinSize 
OptNone 

Definition at line 31 of file PGOOptions.h.

◆ CSPGOAction

Enumerator
NoCSAction 
CSIRInstr 
CSIRUse 

Definition at line 30 of file PGOOptions.h.

◆ PGOAction

Enumerator
NoAction 
IRInstr 
IRUse 
SampleUse 

Definition at line 29 of file PGOOptions.h.

Constructor & Destructor Documentation

◆ PGOOptions() [1/2]

PGOOptions::PGOOptions ( std::string ProfileFile,
std::string CSProfileGenFile,
std::string ProfileRemappingFile,
std::string MemoryProfile,
IntrusiveRefCntPtr< vfs::FileSystem > FS,
PGOAction Action = NoAction,
CSPGOAction CSAction = NoCSAction,
ColdFuncOpt ColdType = ColdFuncOpt::Default,
bool DebugInfoForProfiling = false,
bool PseudoProbeForProfiling = false,
bool AtomicCounterUpdate = false )

◆ PGOOptions() [2/2]

PGOOptions::PGOOptions ( const PGOOptions & )
default

References LLVM_ABI, and PGOOptions().

◆ ~PGOOptions()

PGOOptions::~PGOOptions ( )
default

References LLVM_ABI.

Member Function Documentation

◆ operator=()

PGOOptions & PGOOptions::operator= ( const PGOOptions & )
default

References LLVM_ABI, and PGOOptions().

Member Data Documentation

◆ Action

PGOAction llvm::PGOOptions::Action

Definition at line 50 of file PGOOptions.h.

Referenced by PGOOptions().

◆ AtomicCounterUpdate

bool llvm::PGOOptions::AtomicCounterUpdate

Definition at line 55 of file PGOOptions.h.

Referenced by PGOOptions().

◆ ColdOptType

ColdFuncOpt llvm::PGOOptions::ColdOptType

Definition at line 52 of file PGOOptions.h.

Referenced by PGOOptions().

◆ CSAction

CSPGOAction llvm::PGOOptions::CSAction

Definition at line 51 of file PGOOptions.h.

Referenced by PGOOptions().

◆ CSProfileGenFile

std::string llvm::PGOOptions::CSProfileGenFile

Definition at line 47 of file PGOOptions.h.

Referenced by PGOOptions().

◆ DebugInfoForProfiling

bool llvm::PGOOptions::DebugInfoForProfiling

Definition at line 53 of file PGOOptions.h.

Referenced by PGOOptions().

◆ FS

IntrusiveRefCntPtr<vfs::FileSystem> llvm::PGOOptions::FS

Definition at line 56 of file PGOOptions.h.

Referenced by PGOOptions().

◆ MemoryProfile

std::string llvm::PGOOptions::MemoryProfile

Definition at line 49 of file PGOOptions.h.

Referenced by PGOOptions().

◆ ProfileFile

std::string llvm::PGOOptions::ProfileFile

Definition at line 46 of file PGOOptions.h.

Referenced by PGOOptions().

◆ ProfileRemappingFile

std::string llvm::PGOOptions::ProfileRemappingFile

Definition at line 48 of file PGOOptions.h.

Referenced by PGOOptions().

◆ PseudoProbeForProfiling

bool llvm::PGOOptions::PseudoProbeForProfiling

Definition at line 54 of file PGOOptions.h.

Referenced by PGOOptions().


The documentation for this struct was generated from the following files: