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 29 namespace llvm { 30 31 // Pull these into the llvm namespace so that existing code that expects it 32 // there can find it. 33 using legacy::PassManagerBase; 34 using legacy::PassManager; 35 using legacy::FunctionPassManager; 36 37 } 38 39 #endif 40