MLIR 22.0.0git
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.
SymbolTableCollectiongetSymbolTables ()
 Get the symbol table collection.
SymbolTablegetTopLevelSymbolTable ()
 Get the top-level symbol table.
template<typename OpT>
OpT getTopLevelOp ()
 Get the top-level operation.
bool isInvalidated (const AnalysisManager::PreservedAnalyses &pa)
 Symbol tables are kept up-to-date by passes.

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.

◆ 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: