|
CIRCT 23.0.0git
|
A reduction pattern that removes elements from FIRRTL list create operations. More...


Public Member Functions | |
| void | matches (ListCreateOp listOp, llvm::function_ref< void(uint64_t, uint64_t)> addMatch) override |
| LogicalResult | rewriteMatches (ListCreateOp listOp, ArrayRef< uint64_t > matches) override |
| std::string | getName () const override |
| Return a human-readable name for this reduction pattern. | |
Public Member Functions inherited from circt::OpReduction< ListCreateOp > | |
| void | matches (Operation *op, llvm::function_ref< void(uint64_t, uint64_t)> addMatch) override |
| Collect all ways how this reduction can apply to a specific operation. | |
| LogicalResult | rewriteMatches (Operation *op, ArrayRef< uint64_t > matches) override |
| Apply a set of matches of this reduction to a specific operation. | |
| virtual uint64_t | match (ListCreateOp op) |
| virtual LogicalResult | rewrite (ListCreateOp op) |
Public Member Functions inherited from circt::Reduction | |
| virtual | ~Reduction () |
| virtual void | beforeReduction (mlir::ModuleOp) |
| Called before the reduction is applied to a new subset of operations. | |
| virtual void | afterReduction (mlir::ModuleOp) |
| Called after the reduction has been applied to a subset of operations. | |
| virtual bool | acceptSizeIncrease () const |
| Return true if the tool should accept the transformation this reduction performs on the module even if the overall size of the output increases. | |
| virtual bool | isOneShot () const |
| Return true if the tool should not try to reapply this reduction after it has been successful. | |
| void | notifyOpErased (Operation *op) |
Additional Inherited Members | |
Public Attributes inherited from circt::Reduction | |
| std::function< void(Operation *)> | notifyOpErasedCallback = nullptr |
| An optional callback for reductions to communicate removal of operations. | |
A reduction pattern that removes elements from FIRRTL list create operations.
This generates one match per element in each list, allowing selective removal of individual elements.
Definition at line 2507 of file FIRRTLReductions.cpp.
|
inlineoverridevirtual |
Return a human-readable name for this reduction pattern.
Implements circt::Reduction.
Definition at line 2539 of file FIRRTLReductions.cpp.
|
inlineoverridevirtual |
Reimplemented from circt::OpReduction< ListCreateOp >.
Definition at line 2508 of file FIRRTLReductions.cpp.
Referenced by rewriteMatches().
|
inlineoverridevirtual |
Reimplemented from circt::OpReduction< ListCreateOp >.
Definition at line 2516 of file FIRRTLReductions.cpp.
References matches().