LLVM 19.0.0git
Classes | Namespaces | Enumerations | Functions | Variables
PseudoProbe.h File Reference
#include <cassert>
#include <cstdint>
#include <limits>
#include <optional>

Go to the source code of this file.

Classes

struct  llvm::PseudoProbeDwarfDiscriminator
 
class  llvm::PseudoProbeDescriptor
 
struct  llvm::PseudoProbe
 

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.
 

Enumerations

enum class  llvm::PseudoProbeReservedId { llvm::Invalid = 0 , llvm::Last = Invalid }
 
enum class  llvm::PseudoProbeType { llvm::Block = 0 , llvm::IndirectCall , llvm::DirectCall }
 
enum class  llvm::PseudoProbeAttributes { llvm::Reserved = 0x1 , llvm::Sentinel = 0x2 , llvm::HasDiscriminator = 0x4 }
 

Functions

static bool llvm::isSentinelProbe (uint32_t Flags)
 
static bool llvm::hasDiscriminator (uint32_t Flags)
 
std::optional< PseudoProbellvm::extractProbe (const Instruction &Inst)
 
void llvm::setProbeDistributionFactor (Instruction &Inst, float Factor)
 

Variables

constexpr const charllvm::PseudoProbeDescMetadataName = "llvm.pseudo_probe_desc"
 
static constexpr uint64_t llvm::PseudoProbeFullDistributionFactor