[Mlir-commits] [mlir] dddd244 - [mlir] Using `getDefiningOp<OpTy>()` instead of `dyn_cast_or_null<OpTy>(getDefiningOp())` (NFC) (#173445)

llvmlistbot at llvm.org llvmlistbot at llvm.org
Wed Dec 24 03:16:01 PST 2025


Author: Longsheng Mou
Date: 2025-12-24T19:15:57+08:00
New Revision: dddd244ca900c67912d3cd668302ada2765749cd

URL: https://github.com/llvm/llvm-project/commit/dddd244ca900c67912d3cd668302ada2765749cd
DIFF: https://github.com/llvm/llvm-project/commit/dddd244ca900c67912d3cd668302ada2765749cd.diff

LOG: [mlir] Using `getDefiningOp<OpTy>()` instead of `dyn_cast_or_null<OpTy>(getDefiningOp())` (NFC) (#173445)

Added: 
    

Modified: 
    mlir/lib/Conversion/SCFToGPU/SCFToGPU.cpp
    mlir/lib/Dialect/OpenACC/Transforms/ACCImplicitData.cpp
    mlir/lib/Dialect/OpenACC/Utils/OpenACCUtils.cpp
    mlir/lib/Target/IRDLToCpp/IRDLToCpp.cpp

Removed: 
    


################################################################################
diff  --git a/mlir/lib/Conversion/SCFToGPU/SCFToGPU.cpp b/mlir/lib/Conversion/SCFToGPU/SCFToGPU.cpp
index b9f5befc77409..36a93d60e0882 100644
--- a/mlir/lib/Conversion/SCFToGPU/SCFToGPU.cpp
+++ b/mlir/lib/Conversion/SCFToGPU/SCFToGPU.cpp
@@ -1,4 +1,4 @@
-//===- SCFToGPU.cpp - Convert an affine loop nest to a GPU kernel -------===//
+//===- SCFToGPU.cpp - Convert an affine loop nest to a GPU kernel ---------===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
@@ -333,12 +333,10 @@ static Value deriveStaticUpperBound(Value upperBound,
   }
 
   if (auto multiplyOp = upperBound.getDefiningOp<arith::MulIOp>()) {
-    if (auto lhs = dyn_cast_or_null<arith::ConstantIndexOp>(
-            deriveStaticUpperBound(multiplyOp.getOperand(0), rewriter)
-                .getDefiningOp()))
-      if (auto rhs = dyn_cast_or_null<arith::ConstantIndexOp>(
-              deriveStaticUpperBound(multiplyOp.getOperand(1), rewriter)
-                  .getDefiningOp())) {
+    if (auto lhs = deriveStaticUpperBound(multiplyOp.getOperand(0), rewriter)
+                       .getDefiningOp<arith::ConstantIndexOp>())
+      if (auto rhs = deriveStaticUpperBound(multiplyOp.getOperand(1), rewriter)
+                         .getDefiningOp<arith::ConstantIndexOp>()) {
         // Assumptions about the upper bound of minimum computations no longer
         // work if multiplied by mixed signs, so abort in this case.
         if ((lhs.value() < 0) != (rhs.value() < 0))

diff  --git a/mlir/lib/Dialect/OpenACC/Transforms/ACCImplicitData.cpp b/mlir/lib/Dialect/OpenACC/Transforms/ACCImplicitData.cpp
index a4049dfa96758..c4b43c5cb1b27 100644
--- a/mlir/lib/Dialect/OpenACC/Transforms/ACCImplicitData.cpp
+++ b/mlir/lib/Dialect/OpenACC/Transforms/ACCImplicitData.cpp
@@ -400,14 +400,13 @@ void ACCImplicitData::generateRecipes(ModuleOp &module, OpBuilder &builder,
   auto &accSupport = this->getAnalysis<acc::OpenACCSupport>();
   for (auto var : newOperands) {
     auto loc{var.getLoc()};
-    if (auto privateOp = dyn_cast<acc::PrivateOp>(var.getDefiningOp())) {
+    if (auto privateOp = var.getDefiningOp<acc::PrivateOp>()) {
       auto recipe = generatePrivateRecipe(
           module, acc::getVar(var.getDefiningOp()), loc, builder, accSupport);
       if (recipe)
         privateOp.setRecipeAttr(
             SymbolRefAttr::get(module->getContext(), recipe.getSymName()));
-    } else if (auto firstprivateOp =
-                   dyn_cast<acc::FirstprivateOp>(var.getDefiningOp())) {
+    } else if (auto firstprivateOp = var.getDefiningOp<acc::FirstprivateOp>()) {
       auto recipe = generateFirstprivateRecipe(
           module, acc::getVar(var.getDefiningOp()), loc, builder, accSupport);
       if (recipe)

diff  --git a/mlir/lib/Dialect/OpenACC/Utils/OpenACCUtils.cpp b/mlir/lib/Dialect/OpenACC/Utils/OpenACCUtils.cpp
index bd64d758045a4..e97fd1471e6e0 100644
--- a/mlir/lib/Dialect/OpenACC/Utils/OpenACCUtils.cpp
+++ b/mlir/lib/Dialect/OpenACC/Utils/OpenACCUtils.cpp
@@ -153,7 +153,7 @@ std::string mlir::acc::getRecipeName(mlir::acc::RecipeKind kind,
 
 mlir::Value mlir::acc::getBaseEntity(mlir::Value val) {
   if (auto partialEntityAccessOp =
-          dyn_cast<PartialEntityAccessOpInterface>(val.getDefiningOp())) {
+          val.getDefiningOp<PartialEntityAccessOpInterface>()) {
     if (!partialEntityAccessOp.isCompleteView())
       return partialEntityAccessOp.getBaseEntity();
   }

diff  --git a/mlir/lib/Target/IRDLToCpp/IRDLToCpp.cpp b/mlir/lib/Target/IRDLToCpp/IRDLToCpp.cpp
index b87cbb5a9aab1..253f3172aff96 100644
--- a/mlir/lib/Target/IRDLToCpp/IRDLToCpp.cpp
+++ b/mlir/lib/Target/IRDLToCpp/IRDLToCpp.cpp
@@ -371,7 +371,7 @@ static void generateRegionConstraintVerifiers(
     std::string textualConditionName = "any region";
 
     if (auto regionDefOp =
-            dyn_cast<irdl::RegionOp>(regionsOp->getArgs()[i].getDefiningOp())) {
+            regionsOp->getArgs()[i].getDefiningOp<irdl::RegionOp>()) {
       // Generate constraint condition based on RegionOp attributes
       SmallVector<std::string> conditionParts;
       SmallVector<std::string> descriptionParts;


        


More information about the Mlir-commits mailing list