Thanks to visit codestin.com
Credit goes to llvm.org

LLVM 22.0.0git
InstrProf.h File Reference
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/BitmaskEnum.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/IntervalMap.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/ADT/StringSet.h"
#include "llvm/IR/GlobalValue.h"
#include "llvm/IR/ProfileSummary.h"
#include "llvm/ProfileData/InstrProfData.inc"
#include "llvm/Support/BalancedPartitioning.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Compiler.h"
#include "llvm/Support/EndianStream.h"
#include "llvm/Support/Error.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/MD5.h"
#include "llvm/Support/MathExtras.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/TargetParser/Host.h"
#include "llvm/TargetParser/Triple.h"
#include <algorithm>
#include <cassert>
#include <cstddef>
#include <cstdint>
#include <cstring>
#include <list>
#include <memory>
#include <string>
#include <system_error>
#include <utility>
#include <vector>

Go to the source code of this file.

Classes

struct  llvm::PatchItem
class  llvm::ProfOStream
struct  llvm::TemporalProfTraceTy
 An ordered list of functions identified by their NameRef found in INSTR_PROF_DATA. More...
class  llvm::InstrProfError
class  llvm::InstrProfSymtab
 A symbol table used for function [IR]PGO name look-up with keys (such as pointers, md5hash values) to the function. More...
struct  llvm::CountSumOrPercent
struct  llvm::OverlapStats
struct  llvm::OverlapFuncFilters
struct  llvm::InstrProfValueSiteRecord
struct  llvm::InstrProfRecord
 Profiling information for a single function. More...
struct  llvm::NamedInstrProfRecord
struct  llvm::ValueProfData
 Per-function header/control data structure for value profiling data in indexed format. More...
struct  llvm::ValueProfRecordClosure
struct  llvm::IndexedInstrProf::Header
struct  llvm::IndexedInstrProf::Summary
struct  llvm::IndexedInstrProf::Summary::Entry
struct  llvm::RawInstrProf::ProfileData< IntPtrT >
struct  llvm::RawInstrProf::VTableProfileData< IntPtrT >
struct  llvm::RawInstrProf::Header

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.
namespace  llvm::object
namespace  llvm::IndexedInstrProf
namespace  llvm::RawInstrProf

Macros

#define INSTR_PROF_SECT_ENTRY(Kind, SectNameCommon, SectNameCoff, Prefix)
#define INSTR_PROF_VISIBILITY
#define INSTR_PROF_DATA(Type, LLVMType, Name, Initializer)
#define INSTR_PROF_VTABLE_DATA(Type, LLVMType, Name, Initializer)
#define INSTR_PROF_VALUE_NODE(Type, LLVMType, Name, Initializer)
#define INSTR_PROF_RAW_HEADER(Type, Name, Initializer)
#define VALUE_PROF_FUNC_PARAM(ArgType, ArgName, ArgLLVMType)
#define INSTR_PROF_COMMA
#define VALUE_PROF_KIND(Enumerator, Value, Descr)
#define COVMAP_FUNC_RECORD(Type, LLVMType, Name, Initializer)
#define COVMAP_HEADER(Type, LLVMType, Name, Initializer)
#define COVINIT_FUNC(Type, LLVMType, Name, Initializer)
#define INSTR_PROF_DATA_DEFINED
#define VALUE_PROF_KIND(Enumerator, Value, Descr)
#define INSTR_PROF_DATA(Type, LLVMType, Name, Initializer)
#define INSTR_PROF_VTABLE_DATA(Type, LLVMType, Name, Initializer)
#define INSTR_PROF_VALUE_NODE(Type, LLVMType, Name, Initializer)
#define INSTR_PROF_RAW_HEADER(Type, Name, Initializer)
#define VALUE_PROF_FUNC_PARAM(ArgType, ArgName, ArgLLVMType)
#define INSTR_PROF_COMMA
#define INSTR_PROF_DATA_DEFINED
#define COVMAP_FUNC_RECORD(Type, LLVMType, Name, Initializer)
#define COVMAP_HEADER(Type, LLVMType, Name, Initializer)
#define COVINIT_FUNC(Type, LLVMType, Name, Initializer)
#define INSTR_PROF_VALUE_PROF_DATA
#define INSTR_PROF_DATA(Type, LLVMType, Name, Initializer)
#define INSTR_PROF_VTABLE_DATA(Type, LLVMType, Name, Initializer)
#define INSTR_PROF_VALUE_NODE(Type, LLVMType, Name, Initializer)
#define INSTR_PROF_RAW_HEADER(Type, Name, Initializer)
#define VALUE_PROF_FUNC_PARAM(ArgType, ArgName, ArgLLVMType)
#define INSTR_PROF_COMMA
#define VALUE_PROF_KIND(Enumerator, Value, Descr)
#define COVMAP_FUNC_RECORD(Type, LLVMType, Name, Initializer)
#define COVMAP_HEADER(Type, LLVMType, Name, Initializer)
#define COVINIT_FUNC(Type, LLVMType, Name, Initializer)
#define INSTR_PROF_DATA_DEFINED
#define INSTR_PROF_MAX_NUM_VAL_PER_SITE   255
#define INSTR_PROF_DATA(Type, LLVMType, Name, Init)
#define INSTR_PROF_DATA_DEFINED
#define INSTR_PROF_VTABLE_DATA(Type, LLVMType, Name, Initializer)
#define INSTR_PROF_VALUE_NODE(Type, LLVMType, Name, Initializer)
#define INSTR_PROF_RAW_HEADER(Type, Name, Initializer)
#define VALUE_PROF_FUNC_PARAM(ArgType, ArgName, ArgLLVMType)
#define INSTR_PROF_COMMA
#define VALUE_PROF_KIND(Enumerator, Value, Descr)
#define COVMAP_FUNC_RECORD(Type, LLVMType, Name, Initializer)
#define COVMAP_HEADER(Type, LLVMType, Name, Initializer)
#define COVINIT_FUNC(Type, LLVMType, Name, Initializer)
#define INSTR_PROF_VTABLE_DATA(Type, LLVMType, Name, Init)
#define INSTR_PROF_DATA(Type, LLVMType, Name, Initializer)
#define INSTR_PROF_VTABLE_DATA_DEFINED
#define INSTR_PROF_VALUE_NODE(Type, LLVMType, Name, Initializer)
#define INSTR_PROF_RAW_HEADER(Type, Name, Initializer)
#define VALUE_PROF_FUNC_PARAM(ArgType, ArgName, ArgLLVMType)
#define INSTR_PROF_COMMA
#define VALUE_PROF_KIND(Enumerator, Value, Descr)
#define COVMAP_FUNC_RECORD(Type, LLVMType, Name, Initializer)
#define COVMAP_HEADER(Type, LLVMType, Name, Initializer)
#define COVINIT_FUNC(Type, LLVMType, Name, Initializer)
#define INSTR_PROF_DATA_INC
#define INSTR_PROF_SIMPLE_QUOTE(x)
#define INSTR_PROF_QUOTE(x)
#define INSTR_PROF_SIMPLE_CONCAT(x, y)
#define INSTR_PROF_CONCAT(x, y)
#define INSTR_PROF_RAW_MAGIC_64
#define INSTR_PROF_RAW_MAGIC_32
#define INSTR_PROF_RAW_VERSION   10
#define INSTR_PROF_INDEX_VERSION   12
#define INSTR_PROF_COVMAP_VERSION   6
#define VARIANT_MASKS_ALL   0xffffffff00000000ULL
#define GET_VERSION(V)
#define VARIANT_MASK_INSTR_LOOP_ENTRIES   (0x1ULL << 55)
#define VARIANT_MASK_IR_PROF   (0x1ULL << 56)
#define VARIANT_MASK_CSIR_PROF   (0x1ULL << 57)
#define VARIANT_MASK_INSTR_ENTRY   (0x1ULL << 58)
#define VARIANT_MASK_DBG_CORRELATE   (0x1ULL << 59)
#define VARIANT_MASK_BYTE_COVERAGE   (0x1ULL << 60)
#define VARIANT_MASK_FUNCTION_ENTRY_ONLY   (0x1ULL << 61)
#define VARIANT_MASK_MEMPROF   (0x1ULL << 62)
#define VARIANT_MASK_TEMPORAL_PROF   (0x1ULL << 63)
#define INSTR_PROF_RAW_VERSION_VAR   __llvm_profile_raw_version
#define INSTR_PROF_PROFILE_RUNTIME_VAR   __llvm_profile_runtime
#define INSTR_PROF_PROFILE_COUNTER_BIAS_VAR   __llvm_profile_counter_bias
#define INSTR_PROF_PROFILE_BITMAP_BIAS_VAR   __llvm_profile_bitmap_bias
#define INSTR_PROF_PROFILE_SET_TIMESTAMP   __llvm_profile_set_timestamp
#define INSTR_PROF_PROFILE_SAMPLING_VAR   __llvm_profile_sampling
#define INSTR_PROF_PROFILE_NAME_VAR   __llvm_profile_filename
#define INSTR_PROF_DATA_COMMON   __llvm_prf_data
#define INSTR_PROF_NAME_COMMON   __llvm_prf_names
#define INSTR_PROF_VNAME_COMMON   __llvm_prf_vns
#define INSTR_PROF_CNTS_COMMON   __llvm_prf_cnts
#define INSTR_PROF_BITS_COMMON   __llvm_prf_bits
#define INSTR_PROF_VALS_COMMON   __llvm_prf_vals
#define INSTR_PROF_VNODES_COMMON   __llvm_prf_vnds
#define INSTR_PROF_VTAB_COMMON   __llvm_prf_vtab
#define INSTR_PROF_COVMAP_COMMON   __llvm_covmap
#define INSTR_PROF_COVFUN_COMMON   __llvm_covfun
#define INSTR_PROF_COVDATA_COMMON   __llvm_covdata
#define INSTR_PROF_COVNAME_COMMON   __llvm_covnames
#define INSTR_PROF_COVINIT_COMMON   __llvm_covinit
#define INSTR_PROF_DATA_COFF   ".lprfd$M"
#define INSTR_PROF_NAME_COFF   ".lprfn$M"
#define INSTR_PROF_VNAME_COFF   ".lprfvn$M"
#define INSTR_PROF_CNTS_COFF   ".lprfc$M"
#define INSTR_PROF_BITS_COFF   ".lprfb$M"
#define INSTR_PROF_VALS_COFF   ".lprfv$M"
#define INSTR_PROF_VNODES_COFF   ".lprfnd$M"
#define INSTR_PROF_VTAB_COFF   ".lprfvt$M"
#define INSTR_PROF_COVMAP_COFF   ".lcovmap$M"
#define INSTR_PROF_COVFUN_COFF   ".lcovfun$M"
#define INSTR_PROF_COVDATA_COFF   ".lcovd"
#define INSTR_PROF_COVNAME_COFF   ".lcovn"
#define INSTR_PROF_COVINIT_COFF   ".lcovd$M"
#define INSTR_PROF_DATA_SECT_NAME   INSTR_PROF_QUOTE(INSTR_PROF_DATA_COMMON)
#define INSTR_PROF_NAME_SECT_NAME   INSTR_PROF_QUOTE(INSTR_PROF_NAME_COMMON)
#define INSTR_PROF_CNTS_SECT_NAME   INSTR_PROF_QUOTE(INSTR_PROF_CNTS_COMMON)
#define INSTR_PROF_BITS_SECT_NAME   INSTR_PROF_QUOTE(INSTR_PROF_BITS_COMMON)
#define INSTR_PROF_VTAB_SECT_NAME   INSTR_PROF_QUOTE(INSTR_PROF_VTAB_COMMON)
#define INSTR_PROF_VNAME_SECT_NAME   INSTR_PROF_QUOTE(INSTR_PROF_VNAME_COMMON)
#define INSTR_PROF_VALS_SECT_NAME   INSTR_PROF_QUOTE(INSTR_PROF_VALS_COMMON)
#define INSTR_PROF_VNODES_SECT_NAME   INSTR_PROF_QUOTE(INSTR_PROF_VNODES_COMMON)
#define INSTR_PROF_COVMAP_SECT_NAME   INSTR_PROF_QUOTE(INSTR_PROF_COVMAP_COMMON)
#define INSTR_PROF_COVFUN_SECT_NAME   INSTR_PROF_QUOTE(INSTR_PROF_COVFUN_COMMON)
#define INSTR_PROF_COVDATA_SECT_NAME   INSTR_PROF_QUOTE(INSTR_PROF_COVDATA_COMMON)
#define INSTR_PROF_COVNAME_SECT_NAME   INSTR_PROF_QUOTE(INSTR_PROF_COVNAME_COMMON)
#define INSTR_PROF_COVINIT_SECT_NAME   INSTR_PROF_QUOTE(INSTR_PROF_COVINIT_COMMON)
#define INSTR_PROF_SECT_START(Sect)
#define INSTR_PROF_SECT_STOP(Sect)
#define INSTR_PROF_VALUE_PROF_FUNC   __llvm_profile_instrument_target
#define INSTR_PROF_VALUE_PROF_FUNC_STR    INSTR_PROF_QUOTE(INSTR_PROF_VALUE_PROF_FUNC)
#define INSTR_PROF_VALUE_PROF_MEMOP_FUNC   __llvm_profile_instrument_memop
#define INSTR_PROF_VALUE_PROF_MEMOP_FUNC_STR    INSTR_PROF_QUOTE(INSTR_PROF_VALUE_PROF_MEMOP_FUNC)
#define INSTR_PROF_DATA_ALIGNMENT   8
#define INSTR_PROF_RAW_HEADER(Type, Name, Init)
#define INSTR_PROF_DATA(Type, LLVMType, Name, Initializer)
#define INSTR_PROF_VTABLE_DATA(Type, LLVMType, Name, Initializer)
#define INSTR_PROF_VALUE_NODE(Type, LLVMType, Name, Initializer)
#define INSTR_PROF_DATA_DEFINED
#define VALUE_PROF_FUNC_PARAM(ArgType, ArgName, ArgLLVMType)
#define INSTR_PROF_COMMA
#define VALUE_PROF_KIND(Enumerator, Value, Descr)
#define COVMAP_FUNC_RECORD(Type, LLVMType, Name, Initializer)
#define COVMAP_HEADER(Type, LLVMType, Name, Initializer)
#define COVINIT_FUNC(Type, LLVMType, Name, Initializer)

Typedefs

typedef struct llvm::ValueProfData llvm::ValueProfData
 Per-function header/control data structure for value profiling data in indexed format.
typedef struct llvm::ValueProfRecordClosure llvm::ValueProfRecordClosure

Enumerations

enum  llvm::InstrProfSectKind { llvm::INSTR_PROF_DATA , llvm::INSTR_PROF_DATA }
enum  llvm::InstrProfValueKind : uint32_t { llvm::INSTR_PROF_DATA , llvm::INSTR_PROF_DATA }
enum class  llvm::InstrProfKind {
  llvm::Unknown = 0x0 , llvm::FrontendInstrumentation = 0x1 , llvm::IRInstrumentation = 0x2 , llvm::FunctionEntryInstrumentation = 0x4 ,
  llvm::ContextSensitive = 0x8 , llvm::SingleByteCoverage = 0x10 , llvm::FunctionEntryOnly = 0x20 , llvm::MemProf = 0x40 ,
  llvm::TemporalProfile = 0x80 , llvm::LoopEntriesInstrumentation = 0x100
}
 An enum describing the attributes of an instrumented profile. More...
enum class  llvm::instrprof_error {
  llvm::success = 0 , llvm::eof , llvm::unrecognized_format , llvm::bad_magic ,
  llvm::bad_header , llvm::unsupported_version , llvm::unsupported_hash_type , llvm::too_large ,
  llvm::truncated , llvm::malformed , llvm::missing_correlation_info , llvm::unexpected_correlation_info ,
  llvm::unable_to_correlate_profile , llvm::unknown_function , llvm::invalid_prof , llvm::hash_mismatch ,
  llvm::count_mismatch , llvm::bitmap_mismatch , llvm::counter_overflow , llvm::value_site_count_mismatch ,
  llvm::compress_failed , llvm::uncompress_failed , llvm::empty_raw_profile , llvm::zlib_unavailable ,
  llvm::raw_profile_version_mismatch , llvm::counter_value_too_large
}
enum class  llvm::IndexedInstrProf::HashT : uint32_t { llvm::IndexedInstrProf::MD5 , llvm::IndexedInstrProf::Last = MD5 }
enum  llvm::IndexedInstrProf::ProfVersion {
  llvm::IndexedInstrProf::Version1 = 1 , llvm::IndexedInstrProf::Version2 = 2 , llvm::IndexedInstrProf::Version3 = 3 , llvm::IndexedInstrProf::Version4 = 4 ,
  llvm::IndexedInstrProf::Version5 = 5 , llvm::IndexedInstrProf::Version6 = 6 , llvm::IndexedInstrProf::Version7 = 7 , llvm::IndexedInstrProf::Version8 = 8 ,
  llvm::IndexedInstrProf::Version9 = 9 , llvm::IndexedInstrProf::Version10 = 10 , llvm::IndexedInstrProf::Version11 = 11 , llvm::IndexedInstrProf::Version12 = 12 ,
  llvm::IndexedInstrProf::CurrentVersion = INSTR_PROF_INDEX_VERSION
}

Functions

uint64_t llvm::getInstrMaxCountValue ()
 Return the max count value. We reserver a few large values for special use.
LLVM_ABI std::string llvm::getInstrProfSectionName (InstrProfSectKind IPSK, Triple::ObjectFormatType OF, bool AddSegmentInfo=true)
 Return the name of the profile section corresponding to IPSK.
StringRef llvm::getInstrProfValueProfFuncName ()
 Return the name profile runtime entry point to do value profiling for a given site.
StringRef llvm::getInstrProfValueProfMemOpFuncName ()
 Return the name profile runtime entry point to do memop size value profiling.
StringRef llvm::getInstrProfNameVarPrefix ()
 Return the name prefix of variables containing instrumented function names.
StringRef llvm::getInstrProfVTableVarPrefix ()
 Return the name prefix of variables containing virtual table profile data.
StringRef llvm::getInstrProfDataVarPrefix ()
 Return the name prefix of variables containing per-function control data.
StringRef llvm::getInstrProfCountersVarPrefix ()
 Return the name prefix of profile counter variables.
StringRef llvm::getInstrProfBitmapVarPrefix ()
 Return the name prefix of profile bitmap variables.
StringRef llvm::getInstrProfValuesVarPrefix ()
 Return the name prefix of value profile variables.
StringRef llvm::getInstrProfVNodesVarName ()
 Return the name of value profile node array variables:
StringRef llvm::getInstrProfNamesVarName ()
 Return the name of the variable holding the strings (possibly compressed) of all function's PGO names.
StringRef llvm::getInstrProfVTableNamesVarName ()
StringRef llvm::getCoverageMappingVarName ()
 Return the name of a covarage mapping variable (internal linkage) for each instrumented source module.
StringRef llvm::getCoverageUnusedNamesVarName ()
 Return the name of the internal variable recording the array of PGO name vars referenced by the coverage mapping.
StringRef llvm::getInstrProfRegFuncsName ()
 Return the name of function that registers all the per-function control data at program startup time by calling __llvm_register_function.
StringRef llvm::getInstrProfRegFuncName ()
 Return the name of the runtime interface that registers per-function control data for one instrumented function.
StringRef llvm::getInstrProfNamesRegFuncName ()
 Return the name of the runtime interface that registers the PGO name strings.
StringRef llvm::getInstrProfInitFuncName ()
 Return the name of the runtime initialization method that is generated by the compiler.
StringRef llvm::getInstrProfRuntimeHookVarName ()
 Return the name of the hook variable defined in profile runtime library.
StringRef llvm::getInstrProfRuntimeHookVarUseFuncName ()
 Return the name of the compiler generated function that references the runtime hook variable.
StringRef llvm::getInstrProfCounterBiasVarName ()
StringRef llvm::getInstrProfBitmapBiasVarName ()
StringRef llvm::getInstrProfNameSeparator ()
 Return the marker used to separate PGO names during serialization.
LLVM_ABI bool llvm::isGPUProfTarget (const Module &M)
 Determines whether module targets a GPU eligable for PGO instrumentation.
LLVM_ABI std::string llvm::getPGOFuncName (const Function &F, bool InLTO=false, uint64_t Version=INSTR_PROF_INDEX_VERSION)
 Please use getIRPGOFuncName for LLVM IR instrumentation.
LLVM_ABI std::string llvm::getPGOFuncName (StringRef RawFuncName, GlobalValue::LinkageTypes Linkage, StringRef FileName, uint64_t Version=INSTR_PROF_INDEX_VERSION)
 Return the modified name for a function suitable to be used the key for profile lookup.
LLVM_ABI std::string llvm::getIRPGOFuncName (const Function &F, bool InLTO=false)
LLVM_ABI std::pair< StringRef, StringRefllvm::getParsedIRPGOName (StringRef IRPGOName)
LLVM_ABI std::string llvm::getPGOFuncNameVarName (StringRef FuncName, GlobalValue::LinkageTypes Linkage)
 Return the name of the global variable used to store a function name in PGO instrumentation.
LLVM_ABI GlobalVariablellvm::createPGOFuncNameVar (Function &F, StringRef PGOFuncName)
 Create and return the global variable for function name used in PGO instrumentation.
LLVM_ABI GlobalVariablellvm::createPGOFuncNameVar (Module &M, GlobalValue::LinkageTypes Linkage, StringRef PGOFuncName)
 Create and return the global variable for function name used in PGO instrumentation.
LLVM_ABI StringRef llvm::getPGOFuncNameVarInitializer (GlobalVariable *NameVar)
 Return the initializer in string of the PGO name var NameVar.
LLVM_ABI StringRef llvm::getFuncNameWithoutPrefix (StringRef PGOFuncName, StringRef FileName="<unknown>")
 Given a PGO function name, remove the filename prefix and return the original (static) function name.
LLVM_ABI Error llvm::collectGlobalObjectNameStrings (ArrayRef< std::string > NameStrs, bool doCompression, std::string &Result)
 Given a vector of strings (names of global objects like functions or, virtual tables) NameStrs, the method generates a combined string Result that is ready to be serialized.
LLVM_ABI Error llvm::collectPGOFuncNameStrings (ArrayRef< GlobalVariable * > NameVars, std::string &Result, bool doCompression=true)
 Produce Result string with the same format described above.
LLVM_ABI Error llvm::collectVTableStrings (ArrayRef< GlobalVariable * > VTables, std::string &Result, bool doCompression)
LLVM_ABI bool llvm::isIRPGOFlagSet (const Module *M)
 Check if INSTR_PROF_RAW_VERSION_VAR is defined.
LLVM_ABI bool llvm::canRenameComdatFunc (const Function &F, bool CheckAddressTaken=false)
 Check if we can safely rename this Comdat function.
LLVM_ABI void llvm::annotateValueSite (Module &M, Instruction &Inst, const InstrProfRecord &InstrProfR, InstrProfValueKind ValueKind, uint32_t SiteIndx, uint32_t MaxMDCount=3)
 Get the value profile data for value site SiteIdx from InstrProfR and annotate the instruction Inst with the value profile meta data.
LLVM_ABI void llvm::annotateValueSite (Module &M, Instruction &Inst, ArrayRef< InstrProfValueData > VDs, uint64_t Sum, InstrProfValueKind ValueKind, uint32_t MaxMDCount)
 Same as the above interface but using an ArrayRef, as well as Sum.
LLVM_ABI SmallVector< InstrProfValueData, 4 > llvm::getValueProfDataFromInst (const Instruction &Inst, InstrProfValueKind ValueKind, uint32_t MaxNumValueData, uint64_t &TotalC, bool GetNoICPValue=false)
 Extract the value profile data from Inst and returns them if Inst is annotated with value profile data.
StringRef llvm::getPGOFuncNameMetadataName ()
StringRef llvm::getPGONameMetadataName ()
LLVM_ABI MDNodellvm::getPGOFuncNameMetadata (const Function &F)
 Return the PGOFuncName meta data associated with a function.
LLVM_ABI std::string llvm::getPGOName (const GlobalVariable &V, bool InLTO=false)
LLVM_ABI void llvm::createPGOFuncNameMetadata (Function &F, StringRef PGOFuncName)
 Create the PGOFuncName meta data if PGOFuncName is different from function's raw name.
LLVM_ABI void llvm::createPGONameMetadata (GlobalObject &GO, StringRef PGOName)
 Create the PGOName metadata if a global object's PGO name is different from its mangled name.
LLVM_ABI bool llvm::needsComdatForCounter (const GlobalObject &GV, const Module &M)
 Check if we can use Comdat for profile variables.
LLVM_ABI Error llvm::readAndDecodeStrings (StringRef NameStrings, std::function< Error(StringRef)> NameCallback)
 NameStrings is a string composed of one or more possibly encoded sub-strings.
LLVM_ABI const std::error_category & llvm::instrprof_category ()
std::error_code llvm::make_error_code (instrprof_error E)
uint64_t llvm::IndexedInstrProf::ComputeHash (StringRef K)
 llvm::INSTR_PROF_DATA (const uint64_t, llvm::Type::getInt64Ty(Ctx), NameRef, ConstantInt::get(llvm::Type::getInt64Ty(Ctx), IndexedInstrProf::ComputeHash(getPGOFuncNameVarInitializer(Inc->getName())))) INSTR_PROF_DATA(const uint64_t
FunctionAddr llvm::INSTR_PROF_DATA (IntPtrT, llvm::PointerType::getUnqual(Ctx), Values, ValuesPtrExpr) INSTR_PROF_DATA(const uint32_t
FunctionAddr VTableAddr llvm::INSTR_PROF_VTABLE_DATA (const uint32_t, llvm::Type::getInt32Ty(Ctx), VTableSize, ConstantInt::get(llvm::Type::getInt32Ty(Ctx), VTableSizeVal)) INSTR_PROF_VALUE_NODE(uint64_t
FunctionAddr VTableAddr uintptr_t llvm::CountersBegin (uintptr_t) DataBegin) INSTR_PROF_RAW_HEADER(uint64_t
FunctionAddr VTableAddr uintptr_t uintptr_t llvm::BitmapBegin (uintptr_t) DataBegin) VALUE_PROF_FUNC_PARAM(uint64_t
FunctionAddr VTableAddr uintptr_t uintptr_t WriteoutF llvm::COVINIT_FUNC (IntPtrT, llvm::PointerType::getUnqual(Ctx), ResetFunction, ResetF) typedef struct ValueProfRecord
 This is the header of the data structure that defines the on-disk layout of the value profile data of a particular kind for one function.
INSTR_PROF_VISIBILITY ValueProfRecordllvm::getFirstValueProfRecord (ValueProfData *This)
 Return the first ValueProfRecord instance.
INSTR_PROF_VISIBILITY ValueProfRecordllvm::getValueProfRecordNext (ValueProfRecord *This)
 Use this method to advance to the next This ValueProfRecord.
INSTR_PROF_VISIBILITY InstrProfValueData * llvm::getValueProfRecordValueData (ValueProfRecord *This)
 Return the pointer to the start of value data array.
INSTR_PROF_VISIBILITY uint32_t llvm::getValueProfRecordHeaderSize (uint32_t NumValueSites)
uint64_t llvm::IndexedInstrProf::ComputeHash (HashT Type, StringRef K)
std::unique_ptr< Summaryllvm::IndexedInstrProf::allocSummary (uint32_t TotalSize)
template<class IntPtrT>
uint64_t llvm::RawInstrProf::getMagic ()
template<>
uint64_t llvm::RawInstrProf::getMagic< uint64_t > ()
template<>
uint64_t llvm::RawInstrProf::getMagic< uint32_t > ()
LLVM_ABI void llvm::createProfileFileNameVar (Module &M, StringRef InstrProfileOutput)

Variables

 llvm::FuncHash
 llvm::FunctionPointer
FunctionAddr llvm::NumCounters
FunctionAddr llvm::Int16ArrayTy
FunctionAddr llvm::NumValueSites [IPVK_Last+1]
FunctionAddr llvm::NumBitmapBytes
FunctionAddr llvm::VTableNameHash
FunctionAddr llvm::VTablePointer
FunctionAddr VTableAddr llvm::Value
FunctionAddr VTableAddr llvm::Count
FunctionAddr VTableAddr llvm::Next
FunctionAddr VTableAddr llvm::CountersDelta
FunctionAddr VTableAddr uintptr_t llvm::BitmapDelta
FunctionAddr VTableAddr uintptr_t uintptr_t llvm::TargetValue
FunctionAddr VTableAddr uintptr_t uintptr_t llvm::Data
FunctionAddr VTableAddr uintptr_t uintptr_t llvm::DataSize
FunctionAddr VTableAddr uintptr_t uintptr_t llvm::Int32Ty
FunctionAddr VTableAddr uintptr_t uintptr_t llvm::NRecords
FunctionAddr VTableAddr uintptr_t uintptr_t llvm::FilenamesSize
FunctionAddr VTableAddr uintptr_t uintptr_t llvm::CoverageSize
FunctionAddr VTableAddr uintptr_t uintptr_t llvm::Version
FunctionAddr VTableAddr uintptr_t uintptr_t llvm::WriteoutFunction
 llvm::ValueProfRecord
const uint64_t llvm::IndexedInstrProf::Magic = 0x8169666f72706cff
const uint64_t llvm::IndexedInstrProf::Version = ProfVersion::CurrentVersion
const HashT llvm::IndexedInstrProf::HashType = HashT::MD5
const uint64_t llvm::RawInstrProf::Version = INSTR_PROF_RAW_VERSION
LLVM_ABI cl::opt< boolllvm::DoInstrProfNameCompression

Macro Definition Documentation

◆ COVINIT_FUNC [1/6]

#define COVINIT_FUNC ( Type,
LLVMType,
Name,
Initializer )

◆ COVINIT_FUNC [2/6]

#define COVINIT_FUNC ( Type,
LLVMType,
Name,
Initializer )

◆ COVINIT_FUNC [3/6]

#define COVINIT_FUNC ( Type,
LLVMType,
Name,
Initializer )

◆ COVINIT_FUNC [4/6]

#define COVINIT_FUNC ( Type,
LLVMType,
Name,
Initializer )

◆ COVINIT_FUNC [5/6]

#define COVINIT_FUNC ( Type,
LLVMType,
Name,
Initializer )

◆ COVINIT_FUNC [6/6]

#define COVINIT_FUNC ( Type,
LLVMType,
Name,
Initializer )

◆ COVMAP_FUNC_RECORD [1/6]

#define COVMAP_FUNC_RECORD ( Type,
LLVMType,
Name,
Initializer )

◆ COVMAP_FUNC_RECORD [2/6]

#define COVMAP_FUNC_RECORD ( Type,
LLVMType,
Name,
Initializer )

◆ COVMAP_FUNC_RECORD [3/6]

#define COVMAP_FUNC_RECORD ( Type,
LLVMType,
Name,
Initializer )

◆ COVMAP_FUNC_RECORD [4/6]

#define COVMAP_FUNC_RECORD ( Type,
LLVMType,
Name,
Initializer )

◆ COVMAP_FUNC_RECORD [5/6]

#define COVMAP_FUNC_RECORD ( Type,
LLVMType,
Name,
Initializer )

◆ COVMAP_FUNC_RECORD [6/6]

#define COVMAP_FUNC_RECORD ( Type,
LLVMType,
Name,
Initializer )

◆ COVMAP_HEADER [1/6]

#define COVMAP_HEADER ( Type,
LLVMType,
Name,
Initializer )

◆ COVMAP_HEADER [2/6]

#define COVMAP_HEADER ( Type,
LLVMType,
Name,
Initializer )

◆ COVMAP_HEADER [3/6]

#define COVMAP_HEADER ( Type,
LLVMType,
Name,
Initializer )

◆ COVMAP_HEADER [4/6]

#define COVMAP_HEADER ( Type,
LLVMType,
Name,
Initializer )

◆ COVMAP_HEADER [5/6]

#define COVMAP_HEADER ( Type,
LLVMType,
Name,
Initializer )

◆ COVMAP_HEADER [6/6]

#define COVMAP_HEADER ( Type,
LLVMType,
Name,
Initializer )

◆ GET_VERSION

◆ INSTR_PROF_BITS_COFF

#define INSTR_PROF_BITS_COFF   ".lprfb$M"

◆ INSTR_PROF_BITS_COMMON

#define INSTR_PROF_BITS_COMMON   __llvm_prf_bits

◆ INSTR_PROF_BITS_SECT_NAME

#define INSTR_PROF_BITS_SECT_NAME   INSTR_PROF_QUOTE(INSTR_PROF_BITS_COMMON)

◆ INSTR_PROF_CNTS_COFF

#define INSTR_PROF_CNTS_COFF   ".lprfc$M"

◆ INSTR_PROF_CNTS_COMMON

#define INSTR_PROF_CNTS_COMMON   __llvm_prf_cnts

◆ INSTR_PROF_CNTS_SECT_NAME

#define INSTR_PROF_CNTS_SECT_NAME   INSTR_PROF_QUOTE(INSTR_PROF_CNTS_COMMON)

◆ INSTR_PROF_COMMA [1/6]

#define INSTR_PROF_COMMA

◆ INSTR_PROF_COMMA [2/6]

#define INSTR_PROF_COMMA

◆ INSTR_PROF_COMMA [3/6]

#define INSTR_PROF_COMMA

◆ INSTR_PROF_COMMA [4/6]

#define INSTR_PROF_COMMA

◆ INSTR_PROF_COMMA [5/6]

#define INSTR_PROF_COMMA

◆ INSTR_PROF_COMMA [6/6]

#define INSTR_PROF_COMMA

◆ INSTR_PROF_CONCAT

#define INSTR_PROF_CONCAT ( x,
y )
Value:
#define INSTR_PROF_SIMPLE_CONCAT(x, y)

◆ INSTR_PROF_COVDATA_COFF

#define INSTR_PROF_COVDATA_COFF   ".lcovd"

◆ INSTR_PROF_COVDATA_COMMON

#define INSTR_PROF_COVDATA_COMMON   __llvm_covdata

◆ INSTR_PROF_COVDATA_SECT_NAME

#define INSTR_PROF_COVDATA_SECT_NAME   INSTR_PROF_QUOTE(INSTR_PROF_COVDATA_COMMON)

◆ INSTR_PROF_COVFUN_COFF

#define INSTR_PROF_COVFUN_COFF   ".lcovfun$M"

◆ INSTR_PROF_COVFUN_COMMON

#define INSTR_PROF_COVFUN_COMMON   __llvm_covfun

◆ INSTR_PROF_COVFUN_SECT_NAME

#define INSTR_PROF_COVFUN_SECT_NAME   INSTR_PROF_QUOTE(INSTR_PROF_COVFUN_COMMON)

◆ INSTR_PROF_COVINIT_COFF

#define INSTR_PROF_COVINIT_COFF   ".lcovd$M"

◆ INSTR_PROF_COVINIT_COMMON

#define INSTR_PROF_COVINIT_COMMON   __llvm_covinit

◆ INSTR_PROF_COVINIT_SECT_NAME

#define INSTR_PROF_COVINIT_SECT_NAME   INSTR_PROF_QUOTE(INSTR_PROF_COVINIT_COMMON)

◆ INSTR_PROF_COVMAP_COFF

#define INSTR_PROF_COVMAP_COFF   ".lcovmap$M"

◆ INSTR_PROF_COVMAP_COMMON

#define INSTR_PROF_COVMAP_COMMON   __llvm_covmap

◆ INSTR_PROF_COVMAP_SECT_NAME

#define INSTR_PROF_COVMAP_SECT_NAME   INSTR_PROF_QUOTE(INSTR_PROF_COVMAP_COMMON)

◆ INSTR_PROF_COVMAP_VERSION

#define INSTR_PROF_COVMAP_VERSION   6

◆ INSTR_PROF_COVNAME_COFF

#define INSTR_PROF_COVNAME_COFF   ".lcovn"

◆ INSTR_PROF_COVNAME_COMMON

#define INSTR_PROF_COVNAME_COMMON   __llvm_covnames

◆ INSTR_PROF_COVNAME_SECT_NAME

#define INSTR_PROF_COVNAME_SECT_NAME   INSTR_PROF_QUOTE(INSTR_PROF_COVNAME_COMMON)

◆ INSTR_PROF_DATA [1/6]

#define INSTR_PROF_DATA ( Type,
LLVMType,
Name,
Init )
Value:
Type Name;

Definition at line 164 of file InstrProf.h.

◆ INSTR_PROF_DATA [2/6]

#define INSTR_PROF_DATA ( Type,
LLVMType,
Name,
Initializer )

Definition at line 164 of file InstrProf.h.

◆ INSTR_PROF_DATA [3/6]

#define INSTR_PROF_DATA ( Type,
LLVMType,
Name,
Initializer )

Definition at line 164 of file InstrProf.h.

◆ INSTR_PROF_DATA [4/6]

#define INSTR_PROF_DATA ( Type,
LLVMType,
Name,
Initializer )

Definition at line 164 of file InstrProf.h.

◆ INSTR_PROF_DATA [5/6]

#define INSTR_PROF_DATA ( Type,
LLVMType,
Name,
Initializer )

Definition at line 164 of file InstrProf.h.

◆ INSTR_PROF_DATA [6/6]

#define INSTR_PROF_DATA ( Type,
LLVMType,
Name,
Initializer )

Definition at line 164 of file InstrProf.h.

◆ INSTR_PROF_DATA_ALIGNMENT

#define INSTR_PROF_DATA_ALIGNMENT   8

◆ INSTR_PROF_DATA_COFF

#define INSTR_PROF_DATA_COFF   ".lprfd$M"

◆ INSTR_PROF_DATA_COMMON

#define INSTR_PROF_DATA_COMMON   __llvm_prf_data

◆ INSTR_PROF_DATA_DEFINED [1/5]

#define INSTR_PROF_DATA_DEFINED

◆ INSTR_PROF_DATA_DEFINED [2/5]

#define INSTR_PROF_DATA_DEFINED

◆ INSTR_PROF_DATA_DEFINED [3/5]

#define INSTR_PROF_DATA_DEFINED

◆ INSTR_PROF_DATA_DEFINED [4/5]

#define INSTR_PROF_DATA_DEFINED

◆ INSTR_PROF_DATA_DEFINED [5/5]

#define INSTR_PROF_DATA_DEFINED

◆ INSTR_PROF_DATA_INC

#define INSTR_PROF_DATA_INC

◆ INSTR_PROF_DATA_SECT_NAME

#define INSTR_PROF_DATA_SECT_NAME   INSTR_PROF_QUOTE(INSTR_PROF_DATA_COMMON)

◆ INSTR_PROF_INDEX_VERSION

#define INSTR_PROF_INDEX_VERSION   12

◆ INSTR_PROF_MAX_NUM_VAL_PER_SITE

#define INSTR_PROF_MAX_NUM_VAL_PER_SITE   255

◆ INSTR_PROF_NAME_COFF

#define INSTR_PROF_NAME_COFF   ".lprfn$M"

◆ INSTR_PROF_NAME_COMMON

#define INSTR_PROF_NAME_COMMON   __llvm_prf_names

◆ INSTR_PROF_NAME_SECT_NAME

#define INSTR_PROF_NAME_SECT_NAME   INSTR_PROF_QUOTE(INSTR_PROF_NAME_COMMON)

◆ INSTR_PROF_PROFILE_BITMAP_BIAS_VAR

#define INSTR_PROF_PROFILE_BITMAP_BIAS_VAR   __llvm_profile_bitmap_bias

◆ INSTR_PROF_PROFILE_COUNTER_BIAS_VAR

#define INSTR_PROF_PROFILE_COUNTER_BIAS_VAR   __llvm_profile_counter_bias

◆ INSTR_PROF_PROFILE_NAME_VAR

#define INSTR_PROF_PROFILE_NAME_VAR   __llvm_profile_filename

◆ INSTR_PROF_PROFILE_RUNTIME_VAR

#define INSTR_PROF_PROFILE_RUNTIME_VAR   __llvm_profile_runtime

◆ INSTR_PROF_PROFILE_SAMPLING_VAR

#define INSTR_PROF_PROFILE_SAMPLING_VAR   __llvm_profile_sampling

◆ INSTR_PROF_PROFILE_SET_TIMESTAMP

#define INSTR_PROF_PROFILE_SET_TIMESTAMP   __llvm_profile_set_timestamp

◆ INSTR_PROF_QUOTE

◆ INSTR_PROF_RAW_HEADER [1/6]

#define INSTR_PROF_RAW_HEADER ( Type,
Name,
Init )
Value:
const Type Name;

Definition at line 1357 of file InstrProf.h.

◆ INSTR_PROF_RAW_HEADER [2/6]

#define INSTR_PROF_RAW_HEADER ( Type,
Name,
Initializer )

Definition at line 1357 of file InstrProf.h.

◆ INSTR_PROF_RAW_HEADER [3/6]

#define INSTR_PROF_RAW_HEADER ( Type,
Name,
Initializer )

Definition at line 1357 of file InstrProf.h.

◆ INSTR_PROF_RAW_HEADER [4/6]

#define INSTR_PROF_RAW_HEADER ( Type,
Name,
Initializer )

Definition at line 1357 of file InstrProf.h.

◆ INSTR_PROF_RAW_HEADER [5/6]

#define INSTR_PROF_RAW_HEADER ( Type,
Name,
Initializer )

Definition at line 1357 of file InstrProf.h.

◆ INSTR_PROF_RAW_HEADER [6/6]

#define INSTR_PROF_RAW_HEADER ( Type,
Name,
Initializer )

Definition at line 1357 of file InstrProf.h.

◆ INSTR_PROF_RAW_MAGIC_32

#define INSTR_PROF_RAW_MAGIC_32
Value:
(uint64_t)255 << 56 | (uint64_t)'l' << 48 | \
(uint64_t)'p' << 40 | (uint64_t)'r' << 32 | (uint64_t)'o' << 24 | \
(uint64_t)'f' << 16 | (uint64_t)'R' << 8 | (uint64_t)129

Referenced by llvm::RawInstrProf::getMagic< uint32_t >().

◆ INSTR_PROF_RAW_MAGIC_64

#define INSTR_PROF_RAW_MAGIC_64
Value:
(uint64_t)255 << 56 | (uint64_t)'l' << 48 | \
(uint64_t)'p' << 40 | (uint64_t)'r' << 32 | (uint64_t)'o' << 24 | \
(uint64_t)'f' << 16 | (uint64_t)'r' << 8 | (uint64_t)129

Referenced by llvm::RawInstrProf::getMagic< uint64_t >().

◆ INSTR_PROF_RAW_VERSION

#define INSTR_PROF_RAW_VERSION   10

◆ INSTR_PROF_RAW_VERSION_VAR

#define INSTR_PROF_RAW_VERSION_VAR   __llvm_profile_raw_version

◆ INSTR_PROF_SECT_ENTRY

#define INSTR_PROF_SECT_ENTRY ( Kind,
SectNameCommon,
SectNameCoff,
Prefix )
Value:
Kind,

Definition at line 93 of file InstrProf.h.

◆ INSTR_PROF_SECT_START

#define INSTR_PROF_SECT_START ( Sect)
Value:
INSTR_PROF_CONCAT(__start_,Sect)
#define INSTR_PROF_CONCAT(x, y)

◆ INSTR_PROF_SECT_STOP

#define INSTR_PROF_SECT_STOP ( Sect)
Value:
INSTR_PROF_CONCAT(__stop_,Sect)

◆ INSTR_PROF_SIMPLE_CONCAT

#define INSTR_PROF_SIMPLE_CONCAT ( x,
y )
Value:
x ## y

◆ INSTR_PROF_SIMPLE_QUOTE

#define INSTR_PROF_SIMPLE_QUOTE ( x)
Value:
#x

◆ INSTR_PROF_VALS_COFF

#define INSTR_PROF_VALS_COFF   ".lprfv$M"

◆ INSTR_PROF_VALS_COMMON

#define INSTR_PROF_VALS_COMMON   __llvm_prf_vals

◆ INSTR_PROF_VALS_SECT_NAME

#define INSTR_PROF_VALS_SECT_NAME   INSTR_PROF_QUOTE(INSTR_PROF_VALS_COMMON)

◆ INSTR_PROF_VALUE_NODE [1/6]

#define INSTR_PROF_VALUE_NODE ( Type,
LLVMType,
Name,
Initializer )

◆ INSTR_PROF_VALUE_NODE [2/6]

#define INSTR_PROF_VALUE_NODE ( Type,
LLVMType,
Name,
Initializer )

◆ INSTR_PROF_VALUE_NODE [3/6]

#define INSTR_PROF_VALUE_NODE ( Type,
LLVMType,
Name,
Initializer )

◆ INSTR_PROF_VALUE_NODE [4/6]

#define INSTR_PROF_VALUE_NODE ( Type,
LLVMType,
Name,
Initializer )

◆ INSTR_PROF_VALUE_NODE [5/6]

#define INSTR_PROF_VALUE_NODE ( Type,
LLVMType,
Name,
Initializer )

◆ INSTR_PROF_VALUE_NODE [6/6]

#define INSTR_PROF_VALUE_NODE ( Type,
LLVMType,
Name,
Initializer )

◆ INSTR_PROF_VALUE_PROF_DATA

#define INSTR_PROF_VALUE_PROF_DATA

Definition at line 1112 of file InstrProf.h.

◆ INSTR_PROF_VALUE_PROF_FUNC

#define INSTR_PROF_VALUE_PROF_FUNC   __llvm_profile_instrument_target

◆ INSTR_PROF_VALUE_PROF_FUNC_STR

◆ INSTR_PROF_VALUE_PROF_MEMOP_FUNC

#define INSTR_PROF_VALUE_PROF_MEMOP_FUNC   __llvm_profile_instrument_memop

◆ INSTR_PROF_VALUE_PROF_MEMOP_FUNC_STR

#define INSTR_PROF_VALUE_PROF_MEMOP_FUNC_STR    INSTR_PROF_QUOTE(INSTR_PROF_VALUE_PROF_MEMOP_FUNC)

◆ INSTR_PROF_VISIBILITY

#define INSTR_PROF_VISIBILITY

Definition at line 156 of file InstrProf.h.

◆ INSTR_PROF_VNAME_COFF

#define INSTR_PROF_VNAME_COFF   ".lprfvn$M"

◆ INSTR_PROF_VNAME_COMMON

#define INSTR_PROF_VNAME_COMMON   __llvm_prf_vns

◆ INSTR_PROF_VNAME_SECT_NAME

#define INSTR_PROF_VNAME_SECT_NAME   INSTR_PROF_QUOTE(INSTR_PROF_VNAME_COMMON)

◆ INSTR_PROF_VNODES_COFF

#define INSTR_PROF_VNODES_COFF   ".lprfnd$M"

◆ INSTR_PROF_VNODES_COMMON

#define INSTR_PROF_VNODES_COMMON   __llvm_prf_vnds

◆ INSTR_PROF_VNODES_SECT_NAME

#define INSTR_PROF_VNODES_SECT_NAME   INSTR_PROF_QUOTE(INSTR_PROF_VNODES_COMMON)

◆ INSTR_PROF_VTAB_COFF

#define INSTR_PROF_VTAB_COFF   ".lprfvt$M"

◆ INSTR_PROF_VTAB_COMMON

#define INSTR_PROF_VTAB_COMMON   __llvm_prf_vtab

◆ INSTR_PROF_VTAB_SECT_NAME

#define INSTR_PROF_VTAB_SECT_NAME   INSTR_PROF_QUOTE(INSTR_PROF_VTAB_COMMON)

◆ INSTR_PROF_VTABLE_DATA [1/6]

#define INSTR_PROF_VTABLE_DATA ( Type,
LLVMType,
Name,
Init )
Value:
Type Name;

Definition at line 1348 of file InstrProf.h.

◆ INSTR_PROF_VTABLE_DATA [2/6]

#define INSTR_PROF_VTABLE_DATA ( Type,
LLVMType,
Name,
Initializer )

Definition at line 1348 of file InstrProf.h.

◆ INSTR_PROF_VTABLE_DATA [3/6]

#define INSTR_PROF_VTABLE_DATA ( Type,
LLVMType,
Name,
Initializer )

Definition at line 1348 of file InstrProf.h.

◆ INSTR_PROF_VTABLE_DATA [4/6]

#define INSTR_PROF_VTABLE_DATA ( Type,
LLVMType,
Name,
Initializer )

Definition at line 1348 of file InstrProf.h.

◆ INSTR_PROF_VTABLE_DATA [5/6]

#define INSTR_PROF_VTABLE_DATA ( Type,
LLVMType,
Name,
Initializer )

Definition at line 1348 of file InstrProf.h.

◆ INSTR_PROF_VTABLE_DATA [6/6]

#define INSTR_PROF_VTABLE_DATA ( Type,
LLVMType,
Name,
Initializer )

Definition at line 1348 of file InstrProf.h.

◆ INSTR_PROF_VTABLE_DATA_DEFINED

#define INSTR_PROF_VTABLE_DATA_DEFINED

◆ VALUE_PROF_FUNC_PARAM [1/6]

#define VALUE_PROF_FUNC_PARAM ( ArgType,
ArgName,
ArgLLVMType )

◆ VALUE_PROF_FUNC_PARAM [2/6]

#define VALUE_PROF_FUNC_PARAM ( ArgType,
ArgName,
ArgLLVMType )

◆ VALUE_PROF_FUNC_PARAM [3/6]

#define VALUE_PROF_FUNC_PARAM ( ArgType,
ArgName,
ArgLLVMType )

◆ VALUE_PROF_FUNC_PARAM [4/6]

#define VALUE_PROF_FUNC_PARAM ( ArgType,
ArgName,
ArgLLVMType )

◆ VALUE_PROF_FUNC_PARAM [5/6]

#define VALUE_PROF_FUNC_PARAM ( ArgType,
ArgName,
ArgLLVMType )

◆ VALUE_PROF_FUNC_PARAM [6/6]

#define VALUE_PROF_FUNC_PARAM ( ArgType,
ArgName,
ArgLLVMType )

◆ VALUE_PROF_KIND [1/6]

#define VALUE_PROF_KIND ( Enumerator,
Value,
Descr )
Value:
Enumerator = Value,

Definition at line 313 of file InstrProf.h.

◆ VALUE_PROF_KIND [2/6]

#define VALUE_PROF_KIND ( Enumerator,
Value,
Descr )

Definition at line 313 of file InstrProf.h.

◆ VALUE_PROF_KIND [3/6]

#define VALUE_PROF_KIND ( Enumerator,
Value,
Descr )

Definition at line 313 of file InstrProf.h.

◆ VALUE_PROF_KIND [4/6]

#define VALUE_PROF_KIND ( Enumerator,
Value,
Descr )

Definition at line 313 of file InstrProf.h.

◆ VALUE_PROF_KIND [5/6]

#define VALUE_PROF_KIND ( Enumerator,
Value,
Descr )

Definition at line 313 of file InstrProf.h.

◆ VALUE_PROF_KIND [6/6]

#define VALUE_PROF_KIND ( Enumerator,
Value,
Descr )

Definition at line 313 of file InstrProf.h.

◆ VARIANT_MASK_BYTE_COVERAGE

◆ VARIANT_MASK_CSIR_PROF

◆ VARIANT_MASK_DBG_CORRELATE

#define VARIANT_MASK_DBG_CORRELATE   (0x1ULL << 59)

◆ VARIANT_MASK_FUNCTION_ENTRY_ONLY

◆ VARIANT_MASK_INSTR_ENTRY

◆ VARIANT_MASK_INSTR_LOOP_ENTRIES

◆ VARIANT_MASK_IR_PROF

◆ VARIANT_MASK_MEMPROF

◆ VARIANT_MASK_TEMPORAL_PROF

◆ VARIANT_MASKS_ALL

#define VARIANT_MASKS_ALL   0xffffffff00000000ULL