From a1d986f810286286e0db35fa6b4f10ff068d2eb6 Mon Sep 17 00:00:00 2001 From: Evan Liu Date: Fri, 20 Jun 2025 21:29:51 -0700 Subject: [PATCH] Make getStridesAndOffset const --- mlir/include/mlir/IR/BuiltinTypes.td | 4 ++-- mlir/lib/IR/BuiltinTypes.cpp | 5 +++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/mlir/include/mlir/IR/BuiltinTypes.td b/mlir/include/mlir/IR/BuiltinTypes.td index 55d64d663f7ed..89ade79a3ac02 100644 --- a/mlir/include/mlir/IR/BuiltinTypes.td +++ b/mlir/include/mlir/IR/BuiltinTypes.td @@ -863,11 +863,11 @@ def Builtin_MemRef : Builtin_Type<"MemRef", "memref", [ /// the distance in the number of elements between successive entries along /// a particular dimension. LogicalResult getStridesAndOffset(SmallVectorImpl &strides, - int64_t &offset); + int64_t &offset) const; /// Wrapper around getStridesAndOffset(SmallVectorImpl, int64_t) /// that will assert if the logical result is not succeeded. - std::pair, int64_t> getStridesAndOffset(); + std::pair, int64_t> getStridesAndOffset() const; /// Return "true" if the layout is compatible with strided semantics. bool isStrided(); diff --git a/mlir/lib/IR/BuiltinTypes.cpp b/mlir/lib/IR/BuiltinTypes.cpp index 97bab479c79bf..e3a00ac5a14b1 100644 --- a/mlir/lib/IR/BuiltinTypes.cpp +++ b/mlir/lib/IR/BuiltinTypes.cpp @@ -730,11 +730,12 @@ MemRefType MemRefType::canonicalizeStridedLayout() { } LogicalResult MemRefType::getStridesAndOffset(SmallVectorImpl &strides, - int64_t &offset) { + int64_t &offset) const { return getLayout().getStridesAndOffset(getShape(), strides, offset); } -std::pair, int64_t> MemRefType::getStridesAndOffset() { +std::pair, int64_t> +MemRefType::getStridesAndOffset() const { SmallVector strides; int64_t offset; LogicalResult status = getStridesAndOffset(strides, offset);