MLIR  20.0.0git
Public Member Functions | List of all members
mlir::SymbolTableAnalysis Class Reference

This is a simple analysis that contains a symbol table collection and, for simplicity, a reference to the top-level symbol table. More...

#include "mlir/Analysis/SymbolTableAnalysis.h"

Public Member Functions

 SymbolTableAnalysis (Operation *op)
 Create the symbol table analysis at the provided top-level operation and instantiate the symbol table of the top-level operation. More...
 
SymbolTableCollectiongetSymbolTables ()
 Get the symbol table collection. More...
 
SymbolTablegetTopLevelSymbolTable ()
 Get the top-level symbol table. More...
 
template<typename OpT >
OpT getTopLevelOp ()
 Get the top-level operation. More...
 
bool isInvalidated (const AnalysisManager::PreservedAnalyses &pa)
 Symbol tables are kept up-to-date by passes. More...
 

Detailed Description

This is a simple analysis that contains a symbol table collection and, for simplicity, a reference to the top-level symbol table.

This allows symbol tables to be preserved across passes. Most often, symbol tables are automatically kept up-to-date via the insert and erase functions.

Definition at line 20 of file SymbolTableAnalysis.h.

Constructor & Destructor Documentation

◆ SymbolTableAnalysis()

mlir::SymbolTableAnalysis::SymbolTableAnalysis ( Operation op)
inline

Create the symbol table analysis at the provided top-level operation and instantiate the symbol table of the top-level operation.

Definition at line 24 of file SymbolTableAnalysis.h.

Member Function Documentation

◆ getSymbolTables()

SymbolTableCollection& mlir::SymbolTableAnalysis::getSymbolTables ( )
inline

Get the symbol table collection.

Definition at line 28 of file SymbolTableAnalysis.h.

◆ getTopLevelOp()

template<typename OpT >
OpT mlir::SymbolTableAnalysis::getTopLevelOp ( )
inline

Get the top-level operation.

Definition at line 35 of file SymbolTableAnalysis.h.

References mlir::SymbolTable::getOp().

◆ getTopLevelSymbolTable()

SymbolTable& mlir::SymbolTableAnalysis::getTopLevelSymbolTable ( )
inline

Get the top-level symbol table.

Definition at line 31 of file SymbolTableAnalysis.h.

◆ isInvalidated()

bool mlir::SymbolTableAnalysis::isInvalidated ( const AnalysisManager::PreservedAnalyses pa)
inline

Symbol tables are kept up-to-date by passes.

Assume that the analysis remains valid.

Definition at line 41 of file SymbolTableAnalysis.h.


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