LLVM
8.0.1
|
A DCE pass that assumes instructions are dead until proven otherwise. More...
#include "llvm/Transforms/Scalar/ADCE.h"
Public Member Functions | |
PreservedAnalyses | run (Function &F, FunctionAnalysisManager &) |
Additional Inherited Members | |
Static Public Member Functions inherited from llvm::PassInfoMixin< ADCEPass > | |
static StringRef | name () |
Gets the name of the pass we are mixed into. More... | |
A DCE pass that assumes instructions are dead until proven otherwise.
This pass eliminates dead code by optimistically assuming that all instructions are dead until proven otherwise. This allows it to eliminate dead computations that other DCE passes do not catch, particularly involving loop computations.
PreservedAnalyses ADCEPass::run | ( | Function & | F, |
FunctionAnalysisManager & | FAM | ||
) |
Definition at line 674 of file ADCE.cpp.
References llvm::AnalysisUsage::addPreserved(), llvm::AnalysisUsage::addRequired(), llvm::PreservedAnalyses::all(), F(), llvm::AnalysisManager< IRUnitT, ExtraArgTs >::getCachedResult(), llvm::PassRegistry::getPassRegistry(), llvm::AnalysisManager< IRUnitT, ExtraArgTs >::getResult(), INITIALIZE_PASS_BEGIN(), INITIALIZE_PASS_DEPENDENCY, llvm::initializeADCELegacyPassPass(), llvm::PreservedAnalyses::preserve(), llvm::PreservedAnalyses::preserveSet(), RemoveControlFlowFlag, runOnFunction(), and llvm::AnalysisUsage::setPreservesCFG().