|
LLVM
4.0.0
|
#include "llvm/Transforms/Scalar/ADCE.h"#include "llvm/ADT/DepthFirstIterator.h"#include "llvm/ADT/PostOrderIterator.h"#include "llvm/ADT/SmallPtrSet.h"#include "llvm/ADT/SmallVector.h"#include "llvm/ADT/Statistic.h"#include "llvm/Analysis/GlobalsModRef.h"#include "llvm/Analysis/IteratedDominanceFrontier.h"#include "llvm/Analysis/PostDominators.h"#include "llvm/IR/BasicBlock.h"#include "llvm/IR/CFG.h"#include "llvm/IR/DebugInfoMetadata.h"#include "llvm/IR/IRBuilder.h"#include "llvm/IR/InstIterator.h"#include "llvm/IR/Instructions.h"#include "llvm/IR/IntrinsicInst.h"#include "llvm/Pass.h"#include "llvm/ProfileData/InstrProf.h"#include "llvm/Transforms/Scalar.h"Go to the source code of this file.
Macros | |
| #define | DEBUG_TYPE "adce" |
Functions | |
| STATISTIC (NumRemoved,"Number of instructions removed") | |
| STATISTIC (NumBranchesRemoved,"Number of branch instructions removed") | |
| static bool | isUnconditionalBranch (TerminatorInst *Term) |
| INITIALIZE_PASS_BEGIN (ADCELegacyPass,"adce","Aggressive Dead Code Elimination", false, false) INITIALIZE_PASS_END(ADCELegacyPass | |
Variables | |
| static cl::opt< bool > | RemoveControlFlowFlag ("adce-remove-control-flow", cl::init(true), cl::Hidden) |
| static cl::opt< bool > | RemoveLoops ("adce-remove-loops", cl::init(false), cl::Hidden) |
| adce | |
| Aggressive Dead Code | Elimination |
| Aggressive Dead Code | false |
| INITIALIZE_PASS_BEGIN | ( | ADCELegacyPass | , |
| "adce" | , | ||
| "Aggressive Dead Code Elimination" | , | ||
| false | , | ||
| false | |||
| ) |
|
static |
Definition at line 172 of file ADCE.cpp.
References llvm::ISD::BR, and llvm::dyn_cast().
| STATISTIC | ( | NumRemoved | , |
| "Number of instructions removed" | |||
| ) |
| STATISTIC | ( | NumBranchesRemoved | , |
| "Number of branch instructions removed" | |||
| ) |
| Aggressive Dead Code Elimination |
| Aggressive Dead Code false |
1.8.6