diff --git a/mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp b/mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp index 8839faf4cafb2d..8397652d1d8a8a 100644 --- a/mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp +++ b/mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp @@ -94,14 +94,14 @@ static DiagnosedSilenceableFailure unpackSingleIndexResultPayloadOperations( transform::TransformState &state, TransformOpInterface transformOp, SmallVector &result, ArrayRef ofrs) { for (OpFoldResult ofr : ofrs) { - if (ofr.is()) { - if (!isa(ofr.get())) + if (auto attr = dyn_cast(ofr)) { + if (!isa(attr)) return transformOp.emitDefiniteFailure() << "expected IntegerAttr"; result.push_back(ofr); continue; } - Value transformValue = ofr.get(); + Value transformValue = cast(ofr); if (isa(transformValue.getType())) { ArrayRef params = state.getParams(transformValue); if (params.size() != 1) @@ -180,12 +180,11 @@ static DiagnosedSilenceableFailure reifyMixedParamAndHandleResults( TransformState &state, TransformOpInterface &transformOp, ArrayRef mixedResults, SmallVectorImpl &reified) { for (OpFoldResult paramOrHandle : mixedResults) { - if (isa(paramOrHandle)) { - reified.push_back( - cast(paramOrHandle.get()).getInt()); + if (auto attr = dyn_cast(paramOrHandle)) { + reified.push_back(cast(attr).getInt()); continue; - } else if (isa(paramOrHandle.get().getType())) { - ArrayRef params = state.getParams(paramOrHandle.get()); + } else if (isa(cast(paramOrHandle).getType())) { + ArrayRef params = state.getParams(cast(paramOrHandle)); if (params.size() != 1) return transformOp.emitSilenceableError() << "expected a single param"; reified.push_back( @@ -193,7 +192,7 @@ static DiagnosedSilenceableFailure reifyMixedParamAndHandleResults( continue; } - Value handle = paramOrHandle.get(); + Value handle = cast(paramOrHandle); if (!isa(handle.getType())) return transformOp.emitSilenceableError() << "unexpected value handle"; auto payload = state.getPayloadOps(handle); diff --git a/mlir/lib/Dialect/Linalg/Transforms/ConvertToDestinationStyle.cpp b/mlir/lib/Dialect/Linalg/Transforms/ConvertToDestinationStyle.cpp index 59c189fa1fbadc..6801b68a853815 100644 --- a/mlir/lib/Dialect/Linalg/Transforms/ConvertToDestinationStyle.cpp +++ b/mlir/lib/Dialect/Linalg/Transforms/ConvertToDestinationStyle.cpp @@ -170,9 +170,8 @@ static SmallVector reifyOrComputeDynamicSizes(OpBuilder &b, SmallVector dynSizes; for (int64_t i = 0; i < tensorType.getRank(); ++i) { if (tensorType.isDynamicDim(i)) - dynSizes.push_back( - reifiedShape[cast(value).getResultNumber()][i] - .get()); + dynSizes.push_back(cast( + reifiedShape[cast(value).getResultNumber()][i])); } return dynSizes; } @@ -437,7 +436,7 @@ mlir::linalg::rewriteInDestinationPassingStyle(RewriterBase &rewriter, SmallVector dynamicSizes; for (int64_t i = 0; i < resultType.getRank(); ++i) if (resultType.isDynamicDim(i)) - dynamicSizes.push_back(reifiedShape[0][i].get()); + dynamicSizes.push_back(cast(reifiedShape[0][i])); // If the `padOp` has a nofold attribute and all paddings are known to be 0, // explicitly insert a `linalg.copy`. diff --git a/mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp b/mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp index c44194a1231588..efc7934bc7d8aa 100644 --- a/mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp +++ b/mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp @@ -1707,7 +1707,7 @@ FailureOr mlir::linalg::collapseOpIterationDims( if (auto attr = llvm::dyn_cast_if_present(ofr)) return cast(attr).getInt() == value; llvm::APInt actual; - return matchPattern(ofr.get(), m_ConstantInt(&actual)) && + return matchPattern(cast(ofr), m_ConstantInt(&actual)) && actual.getSExtValue() == value; }; if (!llvm::all_of(loopRanges, [&](Range range) { diff --git a/mlir/lib/Dialect/Linalg/Transforms/Tiling.cpp b/mlir/lib/Dialect/Linalg/Transforms/Tiling.cpp index 61bab2ed675307..7c2788f16a3b63 100644 --- a/mlir/lib/Dialect/Linalg/Transforms/Tiling.cpp +++ b/mlir/lib/Dialect/Linalg/Transforms/Tiling.cpp @@ -101,7 +101,7 @@ static void emitIsPositiveIndexAssertion(ImplicitLocOpBuilder &b, Value zero = b.create(0); Value condition = b.create(arith::CmpIPredicate::sgt, - value.get(), zero); + cast(value), zero); b.create( condition, b.getStringAttr("expected strictly positive tile size and divisor")); diff --git a/mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp b/mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp index 21141f161057e5..ad629b7588e224 100644 --- a/mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp +++ b/mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp @@ -948,7 +948,7 @@ DecomposePadOpPattern::matchAndRewrite(tensor::PadOp padOp, return val; return rewriter .create( - padOp.getLoc(), cast(ofr.get()).getInt()) + padOp.getLoc(), cast(cast(ofr)).getInt()) .getResult(); };