From 29dc3d028f5b60685c2f44d853667d551b96da71 Mon Sep 17 00:00:00 2001 From: Longsheng Mou Date: Fri, 25 Jul 2025 14:47:02 +0800 Subject: [PATCH 1/3] [mlir][tosa][linalg] Use `typeConverter->convertType` (NFC) Since `resultTy` might be nullptr, we should use `dyn_cast` instead of `cast`. Additionally, `typeConverter->convertType` is more appropriate in this context. --- mlir/lib/Conversion/TosaToLinalg/TosaToLinalgNamed.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mlir/lib/Conversion/TosaToLinalg/TosaToLinalgNamed.cpp b/mlir/lib/Conversion/TosaToLinalg/TosaToLinalgNamed.cpp index 3a205246ddd9e..b7fb7a18c7714 100644 --- a/mlir/lib/Conversion/TosaToLinalg/TosaToLinalgNamed.cpp +++ b/mlir/lib/Conversion/TosaToLinalg/TosaToLinalgNamed.cpp @@ -742,7 +742,7 @@ class MaxPool2dConverter : public OpConversionPattern { bool isUnsigned = op.getType().getElementType().isUnsignedInteger(); ShapedType resultTy = - cast(getTypeConverter()->convertType(op.getType())); + getTypeConverter()->convertType(op.getType()); if (!resultTy) return rewriter.notifyMatchFailure(op, "failed to convert type"); Type resultETy = inputTy.getElementType(); From 75dabd4590c88fa766b184b354d5fd9681370fb4 Mon Sep 17 00:00:00 2001 From: Longsheng Mou Date: Mon, 28 Jul 2025 17:16:46 +0800 Subject: [PATCH 2/3] fix ReshapeConverter --- mlir/lib/Conversion/TosaToTensor/TosaToTensor.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mlir/lib/Conversion/TosaToTensor/TosaToTensor.cpp b/mlir/lib/Conversion/TosaToTensor/TosaToTensor.cpp index 2945ae3b49f1f..0afb3f75408cf 100644 --- a/mlir/lib/Conversion/TosaToTensor/TosaToTensor.cpp +++ b/mlir/lib/Conversion/TosaToTensor/TosaToTensor.cpp @@ -229,8 +229,8 @@ class ReshapeConverter : public OpConversionPattern { matchAndRewrite(tosa::ReshapeOp reshape, OpAdaptor adaptor, ConversionPatternRewriter &rewriter) const final { auto loc = reshape.getLoc(); - auto resultType = cast_if_present( - getTypeConverter()->convertType(reshape.getType())); + auto resultType = + getTypeConverter()->convertType(reshape.getType())); if (!resultType) { return rewriter.notifyMatchFailure(reshape.getLoc(), "could not convert result type"); From ba18a75ff665c799b8c2fa17ad0c84b8e53fe903 Mon Sep 17 00:00:00 2001 From: Longsheng Mou Date: Mon, 28 Jul 2025 17:29:23 +0800 Subject: [PATCH 3/3] drop bracket --- mlir/lib/Conversion/TosaToTensor/TosaToTensor.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mlir/lib/Conversion/TosaToTensor/TosaToTensor.cpp b/mlir/lib/Conversion/TosaToTensor/TosaToTensor.cpp index 0afb3f75408cf..802691c1f7d76 100644 --- a/mlir/lib/Conversion/TosaToTensor/TosaToTensor.cpp +++ b/mlir/lib/Conversion/TosaToTensor/TosaToTensor.cpp @@ -230,7 +230,7 @@ class ReshapeConverter : public OpConversionPattern { ConversionPatternRewriter &rewriter) const final { auto loc = reshape.getLoc(); auto resultType = - getTypeConverter()->convertType(reshape.getType())); + getTypeConverter()->convertType(reshape.getType()); if (!resultType) { return rewriter.notifyMatchFailure(reshape.getLoc(), "could not convert result type");