MLIR  19.0.0git
Classes | Public Member Functions | List of all members
mlir::bufferization::OpFilter Class Reference

#include "mlir/Dialect/Bufferization/IR/BufferizableOpInterface.h"

Classes

struct  Entry
 An op filter entry. More...
 

Public Member Functions

bool isOpAllowed (Operation *op) const
 Return whether the op is allowed or not. More...
 
template<typename... DialectTs>
void allowDialect ()
 Allow the given dialects. More...
 
template<typename... DialectTs>
void denyDialect ()
 Deny the given dialects. More...
 
void allowDialect (StringRef dialectNamespace)
 Allow the given dialect. More...
 
void denyDialect (StringRef dialectNamespace)
 Deny the given dialect. More...
 
template<typename... OpTys>
void allowOperation ()
 Allow the given ops. More...
 
template<typename... OpTys>
void denyOperation ()
 Deny the given ops. More...
 
void allowOperation (StringRef opName)
 Allow the given op. More...
 
void denyOperation (StringRef opName)
 Deny the given op. More...
 
void allowOperation (Entry::FilterFn fn)
 Allow ops that are matched by fn. More...
 
void denyOperation (Entry::FilterFn fn)
 Deny ops that are matched by fn. More...
 

Detailed Description

Definition at line 99 of file BufferizableOpInterface.h.

Member Function Documentation

◆ allowDialect() [1/2]

template<typename... DialectTs>
void mlir::bufferization::OpFilter::allowDialect ( )
inline

Allow the given dialects.

This function adds one or multiple ALLOW entries.

Definition at line 126 of file BufferizableOpInterface.h.

◆ allowDialect() [2/2]

void mlir::bufferization::OpFilter::allowDialect ( StringRef  dialectNamespace)
inline

Allow the given dialect.

This function adds an ALLOW entry.

Definition at line 143 of file BufferizableOpInterface.h.

◆ allowOperation() [1/3]

template<typename... OpTys>
void mlir::bufferization::OpFilter::allowOperation ( )
inline

Allow the given ops.

This function adds one or multiple ALLOW entries.

Definition at line 164 of file BufferizableOpInterface.h.

◆ allowOperation() [2/3]

void mlir::bufferization::OpFilter::allowOperation ( Entry::FilterFn  fn)
inline

Allow ops that are matched by fn.

This function adds an ALLOW entry.

Definition at line 199 of file BufferizableOpInterface.h.

◆ allowOperation() [3/3]

void mlir::bufferization::OpFilter::allowOperation ( StringRef  opName)
inline

Allow the given op.

This function adds an ALLOW entry.

Definition at line 179 of file BufferizableOpInterface.h.

◆ denyDialect() [1/2]

template<typename... DialectTs>
void mlir::bufferization::OpFilter::denyDialect ( )
inline

Deny the given dialects.

This function adds one or multiple DENY entries.

Definition at line 136 of file BufferizableOpInterface.h.

◆ denyDialect() [2/2]

void mlir::bufferization::OpFilter::denyDialect ( StringRef  dialectNamespace)
inline

Deny the given dialect.

This function adds a DENY entry.

Definition at line 153 of file BufferizableOpInterface.h.

◆ denyOperation() [1/3]

template<typename... OpTys>
void mlir::bufferization::OpFilter::denyOperation ( )
inline

Deny the given ops.

This function adds one or multiple DENY entries.

Definition at line 172 of file BufferizableOpInterface.h.

Referenced by mlir::sparse_tensor::SparsificationAndBufferizationPass::runDenseBufferization().

◆ denyOperation() [2/3]

void mlir::bufferization::OpFilter::denyOperation ( Entry::FilterFn  fn)
inline

Deny ops that are matched by fn.

This function adds a DENY entry.

Definition at line 206 of file BufferizableOpInterface.h.

◆ denyOperation() [3/3]

void mlir::bufferization::OpFilter::denyOperation ( StringRef  opName)
inline

Deny the given op.

This function adds a DENY entry.

Definition at line 189 of file BufferizableOpInterface.h.

◆ isOpAllowed()

bool OpFilter::isOpAllowed ( Operation op) const

Return whether the op is allowed or not.

If the filter does not have an ALLOW rule, ops are allowed by default, unless they are explicitly marked as DENY. If the filter has at least one ALLOW rule, ops are denied by default and only allowed if they match an ALLOW rule and no DENY rule.

Definition at line 289 of file BufferizableOpInterface.cpp.


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