[Mlir-commits] [mlir] [mlir][sparse][nfc] replace sparse_tensor.pointers in docs (PR #181636)
Vito Secona
llvmlistbot at llvm.org
Mon Feb 16 03:26:34 PST 2026
https://github.com/secona created https://github.com/llvm/llvm-project/pull/181636
The `-sparse-tensor-conversion` and `-sparse-tensor-codegen` descriptions use `sparse_tensor.pointers` which doesn't exist. I couldn't track the history, so I don't know if it was renamed or fully removed. This PR replaces said op into `sparse_tensor.positions`. It looks to have similar assembly format.
>From 2baa0476ac40a9394f01bb861c4f8ef799327bba Mon Sep 17 00:00:00 2001
From: Vito Secona <secona00 at gmail.com>
Date: Mon, 16 Feb 2026 18:08:13 +0700
Subject: [PATCH] [mlir][sparse][nfc] replace sparse_tensor.pointers in docs
---
.../Dialect/SparseTensor/Transforms/Passes.td | 21 +++++++++++--------
1 file changed, 12 insertions(+), 9 deletions(-)
diff --git a/mlir/include/mlir/Dialect/SparseTensor/Transforms/Passes.td b/mlir/include/mlir/Dialect/SparseTensor/Transforms/Passes.td
index 0b8562e484f51..d0e265c2d72ad 100644
--- a/mlir/include/mlir/Dialect/SparseTensor/Transforms/Passes.td
+++ b/mlir/include/mlir/Dialect/SparseTensor/Transforms/Passes.td
@@ -257,7 +257,7 @@ def SparseTensorConversionPass : Pass<"sparse-tensor-conversion", "ModuleOp"> {
```mlir
Before:
func.func @foo(%arg0: tensor<8x8xf32, #CSR>) -> memref<?xindex> {
- %0 = sparse_tensor.pointers %arg0 {dimension = 1 : index}
+ %0 = sparse_tensor.positions %arg0 {level = 1 : index}
: tensor<8x8xf32, #CSR> to memref<?xindex>
return %0 : memref<?xindex>
}
@@ -265,7 +265,7 @@ def SparseTensorConversionPass : Pass<"sparse-tensor-conversion", "ModuleOp"> {
After:
func.func @foo(%arg0: !llvm.ptr) -> memref<?xindex> {
%c1 = arith.constant 1 : index
- %0 = call @sparsePointers0(%arg0, %c1)
+ %0 = call @sparsePositions0(%arg0, %c1)
: (!llvm.ptr, index) -> memref<?xindex>
return %0 : memref<?xindex>
}
@@ -300,18 +300,21 @@ def SparseTensorCodegen : Pass<"sparse-tensor-codegen", "ModuleOp"> {
```mlir
Before:
func.func @foo(%arg0: tensor<8x8xf32, #CSR>) -> memref<?xindex> {
- %0 = sparse_tensor.pointers %arg0 {dimension = 1 : index}
+ %0 = sparse_tensor.positions %arg0 {level = 1 : index}
: tensor<8x8xf32, #CSR> to memref<?xindex>
return %0 : memref<?xindex>
}
After:
- func.func @foo(%arg0: memref<2xindex>,
- %arg1: memref<3xindex>,
- %arg2: memref<?xindex>,
- %arg3: memref<?xindex>,
- %arg4: memref<?xf32>) -> memref<?xindex> {
- return %arg2 : memref<?xindex>
+ func.func @foo(%arg0: memref<?xindex>,
+ %arg1: memref<?xindex>,
+ %arg2: memref<?xf32>,
+ %arg3: !sparse_tensor.storage_specifier<#sparse>) -> memref<?xindex> {
+ %0 = sparse_tensor.storage_specifier.get %arg3 pos_mem_sz at 1
+ : !sparse_tensor.storage_specifier<#sparse>
+ %subview = memref.subview %arg0[0] [%0] [1]
+ : memref<?xindex> to memref<?xindex>
+ return %subview : memref<?xindex>
}
```
}];
More information about the Mlir-commits
mailing list