struct EarlyCSEPass
Declaration
struct EarlyCSEPass : public PassInfoMixin { /* full declaration omitted */ };
Description
A simple and fast domtree-based CSE pass. This pass does a simple depth-first walk over the dominator tree, eliminating trivially redundant instructions and using instsimplify to canonicalize things as it goes. It is intended to be fast and catch obvious cases so that instcombine and other passes are more effective. It is expected that a later pass of GVN will catch the interesting/hard cases.
Declared at: llvm/include/llvm/Transforms/Scalar/EarlyCSE.h:30
Inherits from: PassInfoMixin
Member Variables
- public bool UseMemorySSA
Method Overview
- public EarlyCSEPass(bool UseMemorySSA = false)
- public llvm::PreservedAnalyses run(llvm::Function & F, llvm::FunctionAnalysisManager & AM)
Methods
¶EarlyCSEPass(bool UseMemorySSA = false)
EarlyCSEPass(bool UseMemorySSA = false)
Declared at: llvm/include/llvm/Transforms/Scalar/EarlyCSE.h:31
Parameters
- bool UseMemorySSA = false
¶llvm::PreservedAnalyses run(
llvm::Function& F,
llvm::FunctionAnalysisManager& AM)
llvm::PreservedAnalyses run(
llvm::Function& F,
llvm::FunctionAnalysisManager& AM)
Description
Run the pass over the function.
Declared at: llvm/include/llvm/Transforms/Scalar/EarlyCSE.h:34