[Mlir-commits] [mlir] 59080fe - Revert "[MLIR] Expose `getAsValues` in `StaticValueUtils.h` (NFC)"
Lorenzo Chelini
llvmlistbot at llvm.org
Mon Sep 26 13:13:29 PDT 2022
Author: Lorenzo Chelini
Date: 2022-09-26T22:11:40+02:00
New Revision: 59080febfc021c1c82ee6a9cc2ff07f9f3ffe56a
URL: https://github.com/llvm/llvm-project/commit/59080febfc021c1c82ee6a9cc2ff07f9f3ffe56a
DIFF: https://github.com/llvm/llvm-project/commit/59080febfc021c1c82ee6a9cc2ff07f9f3ffe56a.diff
LOG: Revert "[MLIR] Expose `getAsValues` in `StaticValueUtils.h` (NFC)"
It introduces a circular build dependence: DialectUtils <-
ArithmeticUtils <- ArithDialect <- DialectUtils
This reverts commit 27224fe7272a791bcc9f28c997ce322f7d3856cd.
Added:
Modified:
mlir/include/mlir/Dialect/Utils/StaticValueUtils.h
mlir/lib/Dialect/Tensor/IR/TensorInferTypeOpInterfaceImpl.cpp
mlir/lib/Dialect/Utils/CMakeLists.txt
mlir/lib/Dialect/Utils/StaticValueUtils.cpp
Removed:
################################################################################
diff --git a/mlir/include/mlir/Dialect/Utils/StaticValueUtils.h b/mlir/include/mlir/Dialect/Utils/StaticValueUtils.h
index f09cf88afaab3..f290b1e8e8b39 100644
--- a/mlir/include/mlir/Dialect/Utils/StaticValueUtils.h
+++ b/mlir/include/mlir/Dialect/Utils/StaticValueUtils.h
@@ -80,13 +80,6 @@ bool isConstantIntValue(OpFoldResult ofr, int64_t value);
/// no IndexAttr and that IndexType have no bitwidth.
bool isEqualConstantIntOrValue(OpFoldResult ofr1, OpFoldResult ofr2);
-/// Helper function to convert a vector of `OpFoldResult`s into a vector of
-/// `Value`s. For each `OpFoldResult` in `valueOrAttrVec` return the fold result
-/// if it casts to a `Value` or create an index-type constant if it casts to
-/// `IntegerAttr`. No other attribute types are supported.
-SmallVector<Value> getAsValues(OpBuilder &b, Location loc,
- ArrayRef<OpFoldResult> valueOrAttrVec);
-
} // namespace mlir
#endif // MLIR_DIALECT_UTILS_STATICVALUEUTILS_H
diff --git a/mlir/lib/Dialect/Tensor/IR/TensorInferTypeOpInterfaceImpl.cpp b/mlir/lib/Dialect/Tensor/IR/TensorInferTypeOpInterfaceImpl.cpp
index df65eee6782cc..3a6be9f74164a 100644
--- a/mlir/lib/Dialect/Tensor/IR/TensorInferTypeOpInterfaceImpl.cpp
+++ b/mlir/lib/Dialect/Tensor/IR/TensorInferTypeOpInterfaceImpl.cpp
@@ -8,8 +8,8 @@
#include "mlir/Dialect/Tensor/IR/TensorInferTypeOpInterfaceImpl.h"
#include "mlir/Dialect/Affine/IR/AffineOps.h"
+#include "mlir/Dialect/Arithmetic/Utils/Utils.h"
#include "mlir/Dialect/Tensor/IR/Tensor.h"
-#include "mlir/Dialect/Utils/StaticValueUtils.h"
#include "mlir/Interfaces/InferTypeOpInterface.h"
using namespace mlir;
@@ -134,6 +134,16 @@ getReshapeOutputShapeFromInputShape(OpBuilder &builder, Location loc, Value src,
builder, loc, src, dstStaticShape, reassocation);
}
+/// Helper function to convert a vector of `OpFoldResult`s into a vector of
+/// `Value`s.
+static SmallVector<Value> getAsValues(OpBuilder &b, Location loc,
+ ArrayRef<OpFoldResult> valueOrAttrVec) {
+ return llvm::to_vector<4>(
+ llvm::map_range(valueOrAttrVec, [&](OpFoldResult value) -> Value {
+ return getValueOrCreateConstantIndexOp(b, loc, value);
+ }));
+}
+
template <typename OpTy>
struct ReifyExpandOrCollapseShapeOp
: public ReifyRankedShapedTypeOpInterface::ExternalModel<
diff --git a/mlir/lib/Dialect/Utils/CMakeLists.txt b/mlir/lib/Dialect/Utils/CMakeLists.txt
index b93a30da1dc3b..f329afa8fa755 100644
--- a/mlir/lib/Dialect/Utils/CMakeLists.txt
+++ b/mlir/lib/Dialect/Utils/CMakeLists.txt
@@ -5,6 +5,5 @@ add_mlir_library(MLIRDialectUtils
StaticValueUtils.cpp
LINK_LIBS PUBLIC
- MLIRArithmeticUtils
MLIRIR
)
diff --git a/mlir/lib/Dialect/Utils/StaticValueUtils.cpp b/mlir/lib/Dialect/Utils/StaticValueUtils.cpp
index 2392b1d123f15..6212df9311448 100644
--- a/mlir/lib/Dialect/Utils/StaticValueUtils.cpp
+++ b/mlir/lib/Dialect/Utils/StaticValueUtils.cpp
@@ -7,7 +7,6 @@
//===----------------------------------------------------------------------===//
#include "mlir/Dialect/Utils/StaticValueUtils.h"
-#include "mlir/Dialect/Arithmetic/Utils/Utils.h"
#include "mlir/IR/Matchers.h"
#include "mlir/Support/LLVM.h"
#include "llvm/ADT/APSInt.h"
@@ -125,16 +124,4 @@ bool isEqualConstantIntOrValue(OpFoldResult ofr1, OpFoldResult ofr2) {
auto v1 = ofr1.dyn_cast<Value>(), v2 = ofr2.dyn_cast<Value>();
return v1 && v1 == v2;
}
-
-/// Helper function to convert a vector of `OpFoldResult`s into a vector of
-/// `Value`s. For each `OpFoldResult` in `valueOrAttrVec` return the fold result
-/// if it casts to a `Value` or create an index-type constant if it casts to
-/// `IntegerAttr`. No other attribute types are supported.
-SmallVector<Value> getAsValues(OpBuilder &b, Location loc,
- ArrayRef<OpFoldResult> valueOrAttrVec) {
- return llvm::to_vector<4>(
- llvm::map_range(valueOrAttrVec, [&](OpFoldResult value) -> Value {
- return getValueOrCreateConstantIndexOp(b, loc, value);
- }));
-}
} // namespace mlir
More information about the Mlir-commits
mailing list