1//===- PassPrinters.h - Utilities to print analysis info for passes -------===// 2// 3// The LLVM Compiler Infrastructure 4// 5// This file is distributed under the University of Illinois Open Source 6// License. See LICENSE.TXT for details. 7// 8//===----------------------------------------------------------------------===// 9/// 10/// \file 11/// \brief Utilities to print analysis info for various kinds of passes. 12/// 13//===----------------------------------------------------------------------===// 14#ifndef LLVM_TOOLS_OPT_PASSPRINTERS_H 15#define LLVM_TOOLS_OPT_PASSPRINTERS_H 16 17namespace llvm { 18 19class BasicBlockPass; 20class CallGraphSCCPass; 21class FunctionPass; 22class ModulePass; 23class LoopPass; 24class PassInfo; 25class RegionPass; 26class raw_ostream; 27 28FunctionPass *createFunctionPassPrinter(const PassInfo *PI, raw_ostream &out, 29 bool Quiet); 30 31CallGraphSCCPass *createCallGraphPassPrinter(const PassInfo *PI, 32 raw_ostream &out, bool Quiet); 33 34ModulePass *createModulePassPrinter(const PassInfo *PI, raw_ostream &out, 35 bool Quiet); 36 37LoopPass *createLoopPassPrinter(const PassInfo *PI, raw_ostream &out, 38 bool Quiet); 39 40RegionPass *createRegionPassPrinter(const PassInfo *PI, raw_ostream &out, 41 bool Quiet); 42 43BasicBlockPass *createBasicBlockPassPrinter(const PassInfo *PI, 44 raw_ostream &out, bool Quiet); 45} 46 47#endif // LLVM_TOOLS_OPT_PASSPRINTERS_H 48