LLVM API Documentation
#include "llvm/IR/LLVMContext.h"
#include "llvm/IR/IRPrintingPasses.h"
#include "llvm/IR/LegacyPassManager.h"
#include "llvm/IR/LegacyPassManagers.h"
#include "llvm/IR/LegacyPassNameParser.h"
#include "llvm/IR/Module.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/ManagedStatic.h"
#include "llvm/Support/Mutex.h"
#include "llvm/Support/TimeValue.h"
#include "llvm/Support/Timer.h"
#include "llvm/Support/raw_ostream.h"
#include <algorithm>
#include <map>
Go to the source code of this file.
Classes | |
class | llvm::legacy::FunctionPassManagerImpl |
FunctionPassManagerImpl manages FPPassManagers. More... | |
class | llvm::legacy::PassManagerImpl |
PassManagerImpl manages MPPassManagers. More... | |
Namespaces | |
namespace | llvm |
List of target independent CodeGen pass IDs. | |
namespace | llvm::legacy |
Enumerations | |
enum | PassDebugLevel |
Functions | |
static PassOptionList | PrintBefore ("print-before", llvm::cl::desc("Print IR before specified passes"), cl::Hidden) |
static PassOptionList | PrintAfter ("print-after", llvm::cl::desc("Print IR after specified passes"), cl::Hidden) |
static bool | ShouldPrintBeforeOrAfterPass (const PassInfo *PI, PassOptionList &PassesToPrint) |
static bool | ShouldPrintBeforePass (const PassInfo *PI) |
static bool | ShouldPrintAfterPass (const PassInfo *PI) |
Variables | |
static cl::opt< enum PassDebugLevel > | PassDebugging ("debug-pass", cl::Hidden, cl::desc("Print PassManager debugging information"), cl::values(clEnumVal(Disabled,"disable debug output"), clEnumVal(Arguments,"print pass arguments to pass to 'opt'"), clEnumVal(Structure,"print pass structure before run()"), clEnumVal(Executions,"print pass name before it is executed"), clEnumVal(Details,"print pass details when it is executed"), clEnumValEnd)) |
static cl::opt< bool > | PrintBeforeAll ("print-before-all", llvm::cl::desc("Print IR before each pass"), cl::init(false)) |
static cl::opt< bool > | PrintAfterAll ("print-after-all", llvm::cl::desc("Print IR after each pass"), cl::init(false)) |
static TimingInfo * | TheTimeInfo |
static cl::opt< bool, true > | EnableTiming ("time-passes", cl::location(TimePassesIsEnabled), cl::desc("Time each pass, printing elapsed time for each on exit")) |
enum PassDebugLevel |
Definition at line 45 of file LegacyPassManager.cpp.
static PassOptionList PrintAfter | ( | "print-after" | , |
llvm::cl:: | desc"Print IR after specified passes", | ||
cl::Hidden | |||
) | [static] |
Referenced by ShouldPrintAfterPass().
static PassOptionList PrintBefore | ( | "print-before" | , |
llvm::cl:: | desc"Print IR before specified passes", | ||
cl::Hidden | |||
) | [static] |
Referenced by ShouldPrintBeforePass().
static bool ShouldPrintAfterPass | ( | const PassInfo * | PI | ) | [static] |
This is a utility to check whether a pass should have IR dumped after it.
Definition at line 109 of file LegacyPassManager.cpp.
References PrintAfter(), PrintAfterAll, and ShouldPrintBeforeOrAfterPass().
Referenced by llvm::PMTopLevelManager::schedulePass().
static bool ShouldPrintBeforeOrAfterPass | ( | const PassInfo * | PI, |
PassOptionList & | PassesToPrint | ||
) | [static] |
This is a helper to determine whether to print IR before or after a pass.
Definition at line 89 of file LegacyPassManager.cpp.
References llvm::PassInfo::getPassArgument().
Referenced by ShouldPrintAfterPass(), and ShouldPrintBeforePass().
static bool ShouldPrintBeforePass | ( | const PassInfo * | PI | ) | [static] |
This is a utility to check whether a pass should have IR dumped before it.
Definition at line 103 of file LegacyPassManager.cpp.
References PrintBefore(), PrintBeforeAll, and ShouldPrintBeforeOrAfterPass().
Referenced by llvm::PMTopLevelManager::schedulePass().
cl::opt<bool,true> EnableTiming("time-passes", cl::location(TimePassesIsEnabled), cl::desc("Time each pass, printing elapsed time for each on exit")) [static] |
cl::opt<enum PassDebugLevel> PassDebugging("debug-pass", cl::Hidden, cl::desc("Print PassManager debugging information"), cl::values(clEnumVal(Disabled,"disable debug output"),clEnumVal(Arguments,"print pass arguments to pass to 'opt'"),clEnumVal(Structure,"print pass structure before run()"),clEnumVal(Executions,"print pass name before it is executed"),clEnumVal(Details,"print pass details when it is executed"),clEnumValEnd)) [static] |
Referenced by llvm::PMTopLevelManager::dumpArguments(), llvm::PMTopLevelManager::dumpPasses(), llvm::PMDataManager::dumpPassInfo(), llvm::PMDataManager::dumpPreservedSet(), llvm::PMDataManager::dumpRequiredSet(), llvm::PMDataManager::isPassDebuggingExecutionsOrMore(), llvm::PMDataManager::removeDeadPasses(), and llvm::PMDataManager::removeNotPreservedAnalysis().
cl::opt<bool> PrintAfterAll("print-after-all", llvm::cl::desc("Print IR after each pass"), cl::init(false)) [static] |
Referenced by ShouldPrintAfterPass().
cl::opt<bool> PrintBeforeAll("print-before-all", llvm::cl::desc("Print IR before each pass"), cl::init(false)) [static] |
Referenced by ShouldPrintBeforePass().
TimingInfo* TheTimeInfo [static] |
Definition at line 501 of file LegacyPassManager.cpp.
Referenced by llvm::getPassTimer().