class GVN
Declaration
class GVN : public PassInfoMixin { /* full declaration omitted */ };
Description
The core GVN pass object. FIXME: We should have a good summary of the GVN algorithm implemented by this particular pass here.
Declared at: llvm/include/llvm/Transforms/Scalar/GVN.h:68
Inherits from: PassInfoMixin
Method Overview
- public llvm::AliasAnalysis * getAliasAnalysis() const
- public llvm::DominatorTree & getDominatorTree() const
- public llvm::MemoryDependenceResults & getMemDep() const
- public void markInstructionForDeletion(llvm::Instruction * I)
- public llvm::PreservedAnalyses run(llvm::Function & F, llvm::FunctionAnalysisManager & AM)
Methods
¶llvm::AliasAnalysis* getAliasAnalysis() const
llvm::AliasAnalysis* getAliasAnalysis() const
Declared at: llvm/include/llvm/Transforms/Scalar/GVN.h:83
¶llvm::DominatorTree& getDominatorTree() const
llvm::DominatorTree& getDominatorTree() const
Declared at: llvm/include/llvm/Transforms/Scalar/GVN.h:82
¶llvm::MemoryDependenceResults& getMemDep() const
llvm::MemoryDependenceResults& getMemDep() const
Declared at: llvm/include/llvm/Transforms/Scalar/GVN.h:84
¶void markInstructionForDeletion(
llvm::Instruction* I)
void markInstructionForDeletion(
llvm::Instruction* I)
Description
This removes the specified instruction from our various maps and marks it for deletion.
Declared at: llvm/include/llvm/Transforms/Scalar/GVN.h:77
Parameters
¶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/GVN.h:73