[llvm-branch-commits] [mlir] 7c7c3d4 - [ODS][NFC] Cast range.size() to int32_t in accumulation (#85629)

Tom Stellard via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Wed Mar 27 16:15:10 PDT 2024


Author: Andrei Golubev
Date: 2024-03-27T16:14:17-07:00
New Revision: 7c7c3d4a3a278f70b82b4edf5bad8915d929c97d

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

LOG: [ODS][NFC] Cast range.size() to int32_t in accumulation (#85629)

Using range.size() "as is" means we accumulate 'size_t' values into
'int32_t' variable. This may produce narrowing conversion warnings
(particularly, on MSVC). The surrounding code seems to cast <x>.size()
to 'int32_t' so following this practice seems safe enough.

Co-authored-by: Ovidiu Pintican <ovidiu.pintican at intel.com>
(cherry picked from commit bce17034157fdfe4d898d30366c1eeca3442fa3d)

Added: 
    

Modified: 
    mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp

Removed: 
    


################################################################################
diff  --git a/mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp b/mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp
index 71326049af0579..7f748cfbd31ad4 100644
--- a/mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp
+++ b/mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp
@@ -3058,7 +3058,7 @@ void OpEmitter::genCodeForAddingArgAndRegionForBuilder(
         body << llvm::formatv(
             "static_cast<int32_t>(std::accumulate({0}.begin(), {0}.end(), 0, "
             "[](int32_t curSum, ::mlir::ValueRange range) {{ return curSum + "
-            "range.size(); }))",
+            "static_cast<int32_t>(range.size()); }))",
             operandName);
       } else {
         body << "static_cast<int32_t>(" << getArgumentName(op, i) << ".size())";


        


More information about the llvm-branch-commits mailing list