[Mlir-commits] [mlir] [mlir][SparseTensor] Fix type conversion rule (PR #140350)
Matthias Springer
llvmlistbot at llvm.org
Sat May 17 17:08:29 PDT 2025
https://github.com/matthias-springer updated https://github.com/llvm/llvm-project/pull/140350
>From 5a46d6d613db8e88d95b45a0cfd37baf4ef280de Mon Sep 17 00:00:00 2001
From: Matthias Springer <mspringer at nvidia.com>
Date: Sat, 17 May 2025 06:44:59 +0200
Subject: [PATCH] [mlir][SparseTensor] Fix type conversion rule
---
.../Transforms/Utils/SparseTensorDescriptor.cpp | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorDescriptor.cpp b/mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorDescriptor.cpp
index 8bbb2cac5efdf..79602a22dc1fe 100644
--- a/mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorDescriptor.cpp
+++ b/mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorDescriptor.cpp
@@ -38,12 +38,13 @@ convertSparseTensorType(RankedTensorType rtp, SmallVectorImpl<Type> &fields) {
if (!stt.hasEncoding())
return std::nullopt;
+ unsigned numFields = fields.size();
foreachFieldAndTypeInSparseTensor(
stt,
- [&fields](Type fieldType, FieldIndex fieldIdx,
- SparseTensorFieldKind /*fieldKind*/, Level /*lvl*/,
- LevelType /*lt*/) -> bool {
- assert(fieldIdx == fields.size());
+ [&](Type fieldType, FieldIndex fieldIdx,
+ SparseTensorFieldKind /*fieldKind*/, Level /*lvl*/,
+ LevelType /*lt*/) -> bool {
+ assert(numFields + fieldIdx == fields.size());
fields.push_back(fieldType);
return true;
});
More information about the Mlir-commits
mailing list