[Mlir-commits] [mlir] [MLIR][DRR] Rename OperandIndexOrNumValues to ArgIndexOrNumValues (NFC) (PR #144821)
Xiaomin Liu
llvmlistbot at llvm.org
Wed Jun 18 18:33:02 PDT 2025
https://github.com/xl4624 created https://github.com/llvm/llvm-project/pull/144821
I think the term is misleading because this actually refers to the argument index, as seen here:
https://github.com/llvm/llvm-project/blob/6e5ee4aa98f1dc16e6a75a7fd298a59f1edd1c6e/mlir/lib/TableGen/Pattern.cpp#L303-L311
and here:
https://github.com/llvm/llvm-project/blob/6e5ee4aa98f1dc16e6a75a7fd298a59f1edd1c6e/mlir/lib/TableGen/Pattern.cpp#L253-L259
Especially because in RewriterGen, `operandIndex` is also used alongside `argIndex` and refers to the index counting *only* operands (ignoring Attributes). The getter for this variable is called getArgIndex(). So I think renaming this would help remove a possible source of confusion.
>From 5678372a27d22476976eeb5355ae03ca29759205 Mon Sep 17 00:00:00 2001
From: Xiaomin Liu <xl4624 at nyu.edu>
Date: Wed, 18 Jun 2025 21:24:24 -0400
Subject: [PATCH] [MLIR][DRR] Rename OperandIndexOrNumValues to
ArgIndexOrNumValues (NFC)
Signed-off-by: Xiaomin Liu <xl4624 at nyu.edu>
---
mlir/include/mlir/TableGen/Pattern.h | 35 ++++++++++++++--------------
1 file changed, 17 insertions(+), 18 deletions(-)
diff --git a/mlir/include/mlir/TableGen/Pattern.h b/mlir/include/mlir/TableGen/Pattern.h
index 1c9e128f0a0fb..abd567ee4bdbc 100644
--- a/mlir/include/mlir/TableGen/Pattern.h
+++ b/mlir/include/mlir/TableGen/Pattern.h
@@ -276,13 +276,12 @@ class SymbolInfoMap {
// Structure to uniquely distinguish different locations of the symbols.
//
// * If a symbol is defined as an operand of an operation, `dag` specifies
- // the DAG of the operation, `operandIndexOrNumValues` specifies the
- // operand index, and `variadicSubIndex` must be set to `std::nullopt`.
+ // the DAG of the operation, `argIndexOrNumValues` specifies the
+ // index, and `variadicSubIndex` must be set to `std::nullopt`.
//
// * If a symbol is defined in a `variadic` DAG, `dag` specifies the DAG
- // of the parent operation, `operandIndexOrNumValues` specifies the
- // declared operand index of the variadic operand in the parent
- // operation.
+ // of the parent operation, `argIndexOrNumValues` specifies the
+ // declared index of the variadic operand in the parent operation.
//
// - If the symbol is defined as a result of `variadic` DAG, the
// `variadicSubIndex` must be set to `std::nullopt`, which means that
@@ -292,9 +291,9 @@ class SymbolInfoMap {
// be set to the index within the variadic sub-operand list.
//
// * If a symbol is defined in a `either` DAG, `dag` specifies the DAG
- // of the parent operation, `operandIndexOrNumValues` specifies the
- // operand index in the parent operation (not necessary the index in the
- // DAG).
+ // of the parent operation, `argIndexOrNumValues` specifies the
+ // operand's index in the parent operation (not necessarily its index
+ // in the DAG).
//
// * If a symbol is defined as a result, specifies the number of returning
// value.
@@ -347,17 +346,17 @@ class SymbolInfoMap {
// DagNode and DagLeaf are accessed by value which means it can't be used
// as identifier here. Use an opaque pointer type instead.
const void *dag;
- int operandIndexOrNumValues;
+ int argIndexOrNumValues;
std::optional<int> variadicSubIndex;
- DagAndConstant(const void *dag, int operandIndexOrNumValues,
+ DagAndConstant(const void *dag, int argIndexOrNumValues,
std::optional<int> variadicSubIndex)
- : dag(dag), operandIndexOrNumValues(operandIndexOrNumValues),
+ : dag(dag), argIndexOrNumValues(argIndexOrNumValues),
variadicSubIndex(variadicSubIndex) {}
bool operator==(const DagAndConstant &rhs) const {
return dag == rhs.dag &&
- operandIndexOrNumValues == rhs.operandIndexOrNumValues &&
+ argIndexOrNumValues == rhs.argIndexOrNumValues &&
variadicSubIndex == rhs.variadicSubIndex;
}
};
@@ -385,11 +384,11 @@ class SymbolInfoMap {
return SymbolInfo(nullptr, Kind::Attr, std::nullopt);
}
static SymbolInfo
- getOperand(DagNode node, const Operator *op, int operandIndex,
+ getOperand(DagNode node, const Operator *op, int index,
std::optional<int> variadicSubIndex = std::nullopt) {
- return SymbolInfo(op, Kind::Operand,
- DagAndConstant(node.getAsOpaquePointer(), operandIndex,
- variadicSubIndex));
+ return SymbolInfo(
+ op, Kind::Operand,
+ DagAndConstant(node.getAsOpaquePointer(), index, variadicSubIndex));
}
static SymbolInfo getResult(const Operator *op) {
return SymbolInfo(op, Kind::Result, std::nullopt);
@@ -427,10 +426,10 @@ class SymbolInfoMap {
const char *separator) const;
// The argument index (for `Attr` and `Operand` only)
- int getArgIndex() const { return dagAndConstant->operandIndexOrNumValues; }
+ int getArgIndex() const { return dagAndConstant->argIndexOrNumValues; }
// The number of values in the MultipleValue
- int getSize() const { return dagAndConstant->operandIndexOrNumValues; }
+ int getSize() const { return dagAndConstant->argIndexOrNumValues; }
// The variadic sub-operands index (for variadic `Operand` only)
std::optional<int> getVariadicSubIndex() const {
More information about the Mlir-commits
mailing list