LLVM API Documentation

PassManager.h
Go to the documentation of this file.
00001 //===- llvm/PassManager.h - Container for Passes ----------------*- C++ -*-===//
00002 //
00003 //                     The LLVM Compiler Infrastructure
00004 //
00005 // This file is distributed under the University of Illinois Open Source
00006 // License. See LICENSE.TXT for details.
00007 //
00008 //===----------------------------------------------------------------------===//
00009 //
00010 // This is a legacy redirect header for the old PassManager. It is intended to
00011 // be used by clients that have not been converted to be aware of the new pass
00012 // management infrastructure being built for LLVM, which is every client
00013 // initially. Eventually this header (and the legacy management layer) will go
00014 // away, but we want to minimize changes to out-of-tree users of LLVM in the
00015 // interim.
00016 //
00017 // Note that this header *must not* be included into the same file as the new
00018 // pass management infrastructure is included. Things will break spectacularly.
00019 // If you are starting that conversion, you should switch to explicitly
00020 // including LegacyPassManager.h and using the legacy namespace.
00021 //
00022 //===----------------------------------------------------------------------===//
00023 
00024 #ifndef LLVM_PASSMANAGER_H
00025 #define LLVM_PASSMANAGER_H
00026 
00027 #include "llvm/IR/LegacyPassManager.h"
00028 
00029 namespace llvm {
00030 
00031 // Pull these into the llvm namespace so that existing code that expects it
00032 // there can find it.
00033 using legacy::PassManagerBase;
00034 using legacy::PassManager;
00035 using legacy::FunctionPassManager;
00036 
00037 }
00038 
00039 #endif