//===- PseudoProbe.cpp - Pseudo Probe Helpers -----------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// // // This file implements the helpers to manipulate pseudo probe IR intrinsic // calls. // //===----------------------------------------------------------------------===// #include "llvm/IR/PseudoProbe.h" #include "llvm/IR/DebugInfoMetadata.h" #include "llvm/IR/IRBuilder.h" #include "llvm/IR/Instruction.h" #include "llvm/IR/IntrinsicInst.h" usingnamespacellvm; namespace llvm { std::optional<PseudoProbe> extractProbeFromDiscriminator(const DILocation *DIL) { … } std::optional<PseudoProbe> extractProbeFromDiscriminator(const Instruction &Inst) { … } std::optional<PseudoProbe> extractProbe(const Instruction &Inst) { … } void setProbeDistributionFactor(Instruction &Inst, float Factor) { … } } // namespace llvm