LLVM 20.0.0git
Public Member Functions | Public Attributes | List of all members
llvm::EarlyCSEPass Struct Reference

A simple and fast domtree-based CSE pass. More...

#include "llvm/Transforms/Scalar/EarlyCSE.h"

Inheritance diagram for llvm::EarlyCSEPass:
Inheritance graph
[legend]

Public Member Functions

 EarlyCSEPass (bool UseMemorySSA=false)
 
PreservedAnalyses run (Function &F, FunctionAnalysisManager &AM)
 Run the pass over the function.
 
void printPipeline (raw_ostream &OS, function_ref< StringRef(StringRef)> MapClassName2PassName)
 
- Public Member Functions inherited from llvm::PassInfoMixin< EarlyCSEPass >
void printPipeline (raw_ostream &OS, function_ref< StringRef(StringRef)> MapClassName2PassName)
 

Public Attributes

bool UseMemorySSA
 

Additional Inherited Members

- Static Public Member Functions inherited from llvm::PassInfoMixin< EarlyCSEPass >
static StringRef name ()
 Gets the name of the pass we are mixed into.
 

Detailed 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.

Definition at line 30 of file EarlyCSE.h.

Constructor & Destructor Documentation

◆ EarlyCSEPass()

llvm::EarlyCSEPass::EarlyCSEPass ( bool  UseMemorySSA = false)
inline

Definition at line 31 of file EarlyCSE.h.

Member Function Documentation

◆ printPipeline()

void EarlyCSEPass::printPipeline ( raw_ostream OS,
function_ref< StringRef(StringRef)>  MapClassName2PassName 
)

Definition at line 1848 of file EarlyCSE.cpp.

References OS, printPipeline(), and UseMemorySSA.

Referenced by printPipeline().

◆ run()

PreservedAnalyses EarlyCSEPass::run ( Function F,
FunctionAnalysisManager AM 
)

Member Data Documentation

◆ UseMemorySSA

bool llvm::EarlyCSEPass::UseMemorySSA

Definition at line 38 of file EarlyCSE.h.

Referenced by printPipeline(), and run().


The documentation for this struct was generated from the following files: