1//===- llvm/PassManager.h - Container for Passes ----------------*- C++ -*-===// 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// This is a legacy redirect header for the old PassManager. It is intended to 11// be used by clients that have not been converted to be aware of the new pass 12// management infrastructure being built for LLVM, which is every client 13// initially. Eventually this header (and the legacy management layer) will go 14// away, but we want to minimize changes to out-of-tree users of LLVM in the 15// interim. 16// 17// Note that this header *must not* be included into the same file as the new 18// pass management infrastructure is included. Things will break spectacularly. 19// If you are starting that conversion, you should switch to explicitly 20// including LegacyPassManager.h and using the legacy namespace. 21// 22//===----------------------------------------------------------------------===// 23 24#ifndef LLVM_PASSMANAGER_H 25#define LLVM_PASSMANAGER_H 26 27#include "llvm/IR/LegacyPassManager.h" 28 29namespace llvm { 30 31// Pull these into the llvm namespace so that existing code that expects it 32// there can find it. 33using legacy::PassManagerBase; 34using legacy::PassManager; 35using legacy::FunctionPassManager; 36 37} 38 39#endif 40