//===- bolt/Passes/DataflowAnalysis.cpp -----------------------------------===// // // 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 functions and classes used for data-flow analysis. // //===----------------------------------------------------------------------===// #include "bolt/Passes/DataflowAnalysis.h" #include "llvm/MC/MCRegisterInfo.h" #define DEBUG_TYPE … namespace llvm { raw_ostream &operator<<(raw_ostream &OS, const BitVector &State) { … } namespace bolt { void doForAllPreds(const BinaryBasicBlock &BB, std::function<void(ProgramPoint)> Task) { … } /// Operates on all successors of a basic block. void doForAllSuccs(const BinaryBasicBlock &BB, std::function<void(ProgramPoint)> Task) { … } void RegStatePrinter::print(raw_ostream &OS, const BitVector &State) const { … } } // namespace bolt } // namespace llvm