#ifndef LLVM_IR_PSEUDOPROBE_H
#define LLVM_IR_PSEUDOPROBE_H
#include <cassert>
#include <cstdint>
#include <limits>
#include <optional>
namespace llvm {
class Instruction;
constexpr const char *PseudoProbeDescMetadataName = …;
enum class PseudoProbeReservedId { … };
enum class PseudoProbeType { … };
enum class PseudoProbeAttributes { … };
constexpr static uint64_t PseudoProbeFullDistributionFactor = …;
struct PseudoProbeDwarfDiscriminator { … };
class PseudoProbeDescriptor { … };
struct PseudoProbe { … };
static inline bool isSentinelProbe(uint32_t Flags) { … }
static inline bool hasDiscriminator(uint32_t Flags) { … }
std::optional<PseudoProbe> extractProbe(const Instruction &Inst);
void setProbeDistributionFactor(Instruction &Inst, float Factor);
}
#endif