| 
    MLIR 22.0.0git
    
   | 
 
#include "mlir/IR/PatternMatch.h"
Public Member Functions | |
| RewritePatternSet (MLIRContext *context) | |
| RewritePatternSet (MLIRContext *context, std::unique_ptr< RewritePattern > pattern) | |
| Construct a RewritePatternSet populated with the given pattern.   | |
| RewritePatternSet (PDLPatternModule &&pattern) | |
| MLIRContext * | getContext () const | 
| NativePatternListT & | getNativePatterns () | 
| Return the native patterns held in this list.   | |
| PDLPatternModule & | getPDLPatterns () | 
| Return the PDL patterns held in this list.   | |
| void | clear () | 
| Clear out all of the held patterns in this list.   | |
| template<typename... Ts, typename ConstructorArg, typename... ConstructorArgs, typename = std::enable_if_t<sizeof...(Ts) != 0>> | |
| RewritePatternSet & | add (ConstructorArg &&arg, ConstructorArgs &&...args) | 
| Add an instance of each of the pattern types 'Ts' to the pattern list with the given arguments.   | |
| template<typename... Ts, typename ConstructorArg, typename... ConstructorArgs, typename = std::enable_if_t<sizeof...(Ts) != 0>> | |
| RewritePatternSet & | addWithLabel (ArrayRef< StringRef > debugLabels, ConstructorArg &&arg, ConstructorArgs &&...args) | 
| An overload of the above add method that allows for attaching a set of debug labels to the attached patterns.   | |
| template<typename... Ts> | |
| RewritePatternSet & | add () | 
| Add an instance of each of the pattern types 'Ts'.   | |
| RewritePatternSet & | add (std::unique_ptr< RewritePattern > pattern) | 
| Add the given native pattern to the pattern list.   | |
| RewritePatternSet & | add (PDLPatternModule &&pattern) | 
| Add the given PDL pattern to the pattern list.   | |
| template<typename OpType> | |
| RewritePatternSet & | add (LogicalResult(*implFn)(OpType, PatternRewriter &rewriter), PatternBenefit benefit=1, ArrayRef< StringRef > generatedNames={}) | 
| template<typename... Ts, typename ConstructorArg, typename... ConstructorArgs, typename = std::enable_if_t<sizeof...(Ts) != 0>> | |
| RewritePatternSet & | insert (ConstructorArg &&arg, ConstructorArgs &&...args) | 
| Add an instance of each of the pattern types 'Ts' to the pattern list with the given arguments.   | |
| template<typename... Ts> | |
| RewritePatternSet & | insert () | 
| Add an instance of each of the pattern types 'Ts'.   | |
| RewritePatternSet & | insert (std::unique_ptr< RewritePattern > pattern) | 
| Add the given native pattern to the pattern list.   | |
| RewritePatternSet & | insert (PDLPatternModule &&pattern) | 
| Add the given PDL pattern to the pattern list.   | |
| template<typename OpType> | |
| RewritePatternSet & | insert (LogicalResult(*implFn)(OpType, PatternRewriter &rewriter)) | 
Definition at line 816 of file PatternMatch.h.
      
  | 
  inline | 
      
  | 
  inline | 
Construct a RewritePatternSet populated with the given pattern.
Definition at line 823 of file PatternMatch.h.
      
  | 
  inline | 
Definition at line 828 of file PatternMatch.h.
References getContext().
      
  | 
  inline | 
Add an instance of each of the pattern types 'Ts'.
Return a reference to this for chaining insertions.
Definition at line 882 of file PatternMatch.h.
References RewritePatternSet().
Referenced by insert().
      
  | 
  inline | 
Add an instance of each of the pattern types 'Ts' to the pattern list with the given arguments.
Return a reference to this for chaining insertions. Note: ConstructorArg is necessary here to separate the two variadic lists.
Definition at line 855 of file PatternMatch.h.
References RewritePatternSet().
Referenced by mlir::spirv::populateSPIRVGLCanonicalizationPatterns().
      
  | 
  inline | 
Definition at line 904 of file PatternMatch.h.
      
  | 
  inline | 
Add the given PDL pattern to the pattern list.
Return a reference to this for chaining insertions.
Definition at line 896 of file PatternMatch.h.
References RewritePatternSet().
      
  | 
  inline | 
Add the given native pattern to the pattern list.
Return a reference to this for chaining insertions.
Definition at line 889 of file PatternMatch.h.
References RewritePatternSet().
      
  | 
  inline | 
An overload of the above add method that allows for attaching a set of debug labels to the attached patterns.
This is useful for labeling groups of patterns that may be shared between multiple different passes/users.
Definition at line 870 of file PatternMatch.h.
References RewritePatternSet().
      
  | 
  inline | 
Clear out all of the held patterns in this list.
Definition at line 840 of file PatternMatch.h.
      
  | 
  inline | 
Definition at line 831 of file PatternMatch.h.
Referenced by insert(), mlir::spirv::populateSPIRVGLCanonicalizationPatterns(), and RewritePatternSet().
      
  | 
  inline | 
Return the native patterns held in this list.
Definition at line 834 of file PatternMatch.h.
      
  | 
  inline | 
Return the PDL patterns held in this list.
Definition at line 837 of file PatternMatch.h.
      
  | 
  inline | 
Add an instance of each of the pattern types 'Ts'.
Return a reference to this for chaining insertions.
Definition at line 948 of file PatternMatch.h.
References RewritePatternSet().
      
  | 
  inline | 
Add an instance of each of the pattern types 'Ts' to the pattern list with the given arguments.
Return a reference to this for chaining insertions. Note: ConstructorArg is necessary here to separate the two variadic lists.
Definition at line 938 of file PatternMatch.h.
References RewritePatternSet().
      
  | 
  inline | 
Definition at line 970 of file PatternMatch.h.
References add(), and getContext().
      
  | 
  inline | 
Add the given PDL pattern to the pattern list.
Return a reference to this for chaining insertions.
Definition at line 962 of file PatternMatch.h.
References RewritePatternSet().
      
  | 
  inline | 
Add the given native pattern to the pattern list.
Return a reference to this for chaining insertions.
Definition at line 955 of file PatternMatch.h.
References RewritePatternSet().