LLVM  8.0.1
Classes | Public Member Functions | Friends | List of all members
llvm::GVN Class Reference

The core GVN pass object. More...

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

Inheritance diagram for llvm::GVN:
Inheritance graph
[legend]
Collaboration diagram for llvm::GVN:
Collaboration graph
[legend]

Classes

struct  Expression
 
class  ValueTable
 This class holds the mapping between values and value numbers. More...
 

Public Member Functions

PreservedAnalyses run (Function &F, FunctionAnalysisManager &AM)
 Run the pass over the function. More...
 
void markInstructionForDeletion (Instruction *I)
 This removes the specified instruction from our various maps and marks it for deletion. More...
 
DominatorTreegetDominatorTree () const
 
AliasAnalysisgetAliasAnalysis () const
 
MemoryDependenceResultsgetMemDep () const
 

Friends

class gvn::GVNLegacyPass
 
struct DenseMapInfo< Expression >
 

Additional Inherited Members

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

Detailed Description

The core GVN pass object.

FIXME: We should have a good summary of the GVN algorithm implemented by this particular pass here.

Definition at line 69 of file GVN.h.

Member Function Documentation

◆ getAliasAnalysis()

AliasAnalysis* llvm::GVN::getAliasAnalysis ( ) const
inline

Definition at line 84 of file GVN.h.

◆ getDominatorTree()

DominatorTree& llvm::GVN::getDominatorTree ( ) const
inline

Definition at line 83 of file GVN.h.

Referenced by ConstructSSAForLoadSet().

◆ getMemDep()

MemoryDependenceResults& llvm::GVN::getMemDep ( ) const
inline

Definition at line 85 of file GVN.h.

Referenced by llvm::gvn::AvailableValue::MaterializeAdjustedValue().

◆ markInstructionForDeletion()

void llvm::GVN::markInstructionForDeletion ( Instruction I)
inline

This removes the specified instruction from our various maps and marks it for deletion.

Definition at line 78 of file GVN.h.

◆ run()

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

Friends And Related Function Documentation

◆ DenseMapInfo< Expression >

friend struct DenseMapInfo< Expression >
friend

Definition at line 154 of file GVN.h.

◆ gvn::GVNLegacyPass

friend class gvn::GVNLegacyPass
friend

Definition at line 153 of file GVN.h.


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