diff options
author | Chenguang Wang <w3cing@gmail.com> | 2022-12-22 09:10:15 -0800 |
---|---|---|
committer | Jacques Pienaar <jpienaar@google.com> | 2022-12-22 09:10:15 -0800 |
commit | d9f645fe5081fccbe59560989cdf8ea4535946fc (patch) | |
tree | 01d48031b2d154b21d736a1290e66aa066b242f7 /mlir/unittests | |
parent | 61b72f6abeb0ed3e43318e5fec8b26d3dc53ca0a (diff) | |
download | llvm-d9f645fe5081fccbe59560989cdf8ea4535946fc.tar.gz |
[mlir] Allow specifying benefit for C func ptr style patterns.
Reviewed By: rriddle
Differential Revision: https://reviews.llvm.org/D139234
Diffstat (limited to 'mlir/unittests')
-rw-r--r-- | mlir/unittests/IR/PatternMatchTest.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/mlir/unittests/IR/PatternMatchTest.cpp b/mlir/unittests/IR/PatternMatchTest.cpp index 6454f05fbf2f..3a58d5c1634d 100644 --- a/mlir/unittests/IR/PatternMatchTest.cpp +++ b/mlir/unittests/IR/PatternMatchTest.cpp @@ -28,3 +28,22 @@ TEST(OpRewritePatternTest, GetGeneratedNames) { ASSERT_EQ(ops.front().getStringRef(), test::OpB::getOperationName()); } } // end anonymous namespace + +namespace { +LogicalResult anOpRewritePatternFunc(test::OpA op, PatternRewriter &rewriter) { + return failure(); +} +TEST(AnOpRewritePatternTest, PatternFuncAttributes) { + MLIRContext context; + RewritePatternSet patterns(&context); + + patterns.add(anOpRewritePatternFunc, /*benefit=*/3, + /*generatedNames=*/{test::OpB::getOperationName()}); + ASSERT_EQ(patterns.getNativePatterns().size(), 1); + auto &pattern = patterns.getNativePatterns().front(); + ASSERT_EQ(pattern->getBenefit(), 3); + ASSERT_EQ(pattern->getGeneratedOps().size(), 1); + ASSERT_EQ(pattern->getGeneratedOps().front().getStringRef(), + test::OpB::getOperationName()); +} +} // end anonymous namespace |