[Mlir-commits] [mlir] [mlir][VectorOps] Fold extract on constant_mask (PR #183780)
Lukas Sommer
llvmlistbot at llvm.org
Fri Feb 27 10:01:42 PST 2026
================
@@ -2298,6 +2298,59 @@ class ExtractOpFromCreateMask final : public OpRewritePattern<ExtractOp> {
}
};
+// Pattern to rewrite a ExtractOp(ConstantMask) -> ConstantMask.
+class ExtractOpFromConstantMask final : public OpRewritePattern<ExtractOp> {
+public:
+ using Base::Base;
+
+ LogicalResult matchAndRewrite(ExtractOp extractOp,
+ PatternRewriter &rewriter) const override {
+ auto constantMaskOp =
+ extractOp.getSource().getDefiningOp<vector::ConstantMaskOp>();
+ if (!constantMaskOp)
+ return failure();
+
+ auto extractedMaskType =
+ llvm::dyn_cast<VectorType>(extractOp.getResult().getType());
----------------
sommerlukas wrote:
Indeed, thanks for catching that!
https://github.com/llvm/llvm-project/pull/183780
More information about the Mlir-commits
mailing list