[Mlir-commits] [mlir] ba110cf - [mlir] Add getters for DenseArrayAttr.
Adrian Kuegel
llvmlistbot at llvm.org
Thu Jul 28 04:26:38 PDT 2022
Author: Adrian Kuegel
Date: 2022-07-28T13:26:27+02:00
New Revision: ba110cf97a87713efee5ce3055e85ffc4d39fdaa
URL: https://github.com/llvm/llvm-project/commit/ba110cf97a87713efee5ce3055e85ffc4d39fdaa
DIFF: https://github.com/llvm/llvm-project/commit/ba110cf97a87713efee5ce3055e85ffc4d39fdaa.diff
LOG: [mlir] Add getters for DenseArrayAttr.
This change adds convenience getters to builders.
Differential Revision: https://reviews.llvm.org/D130696
Added:
Modified:
mlir/include/mlir/IR/Builders.h
mlir/lib/IR/Builders.cpp
Removed:
################################################################################
diff --git a/mlir/include/mlir/IR/Builders.h b/mlir/include/mlir/IR/Builders.h
index 4e214af40caf0..3337ef66ba5a0 100644
--- a/mlir/include/mlir/IR/Builders.h
+++ b/mlir/include/mlir/IR/Builders.h
@@ -130,6 +130,14 @@ class Builder {
DenseIntElementsAttr getI64VectorAttr(ArrayRef<int64_t> values);
DenseIntElementsAttr getIndexVectorAttr(ArrayRef<int64_t> values);
+ /// Vector-typed DenseArrayAttr getters.
+ DenseI8ArrayAttr getDenseI8ArrayAttr(ArrayRef<int8_t> values);
+ DenseI16ArrayAttr getDenseI16ArrayAttr(ArrayRef<int16_t> values);
+ DenseI32ArrayAttr getDenseI32ArrayAttr(ArrayRef<int32_t> values);
+ DenseI64ArrayAttr getDenseI64ArrayAttr(ArrayRef<int64_t> values);
+ DenseF32ArrayAttr getDenseF32ArrayAttr(ArrayRef<float> values);
+ DenseF64ArrayAttr getDenseF64ArrayAttr(ArrayRef<double> values);
+
/// Tensor-typed DenseIntElementsAttr getters. `values` can be empty.
/// These are generally preferable for representing general lists of integers
/// as attributes.
diff --git a/mlir/lib/IR/Builders.cpp b/mlir/lib/IR/Builders.cpp
index 6bea6c79b4681..eb841da88f6db 100644
--- a/mlir/lib/IR/Builders.cpp
+++ b/mlir/lib/IR/Builders.cpp
@@ -124,6 +124,30 @@ DenseIntElementsAttr Builder::getIndexVectorAttr(ArrayRef<int64_t> values) {
values);
}
+DenseI8ArrayAttr Builder::getDenseI8ArrayAttr(ArrayRef<int8_t> values) {
+ return DenseI8ArrayAttr::get(context, values);
+}
+
+DenseI16ArrayAttr Builder::getDenseI16ArrayAttr(ArrayRef<int16_t> values) {
+ return DenseI16ArrayAttr::get(context, values);
+}
+
+DenseI32ArrayAttr Builder::getDenseI32ArrayAttr(ArrayRef<int32_t> values) {
+ return DenseI32ArrayAttr::get(context, values);
+}
+
+DenseI64ArrayAttr Builder::getDenseI64ArrayAttr(ArrayRef<int64_t> values) {
+ return DenseI64ArrayAttr::get(context, values);
+}
+
+DenseF32ArrayAttr Builder::getDenseF32ArrayAttr(ArrayRef<float> values) {
+ return DenseF32ArrayAttr::get(context, values);
+}
+
+DenseF64ArrayAttr Builder::getDenseF64ArrayAttr(ArrayRef<double> values) {
+ return DenseF64ArrayAttr::get(context, values);
+}
+
DenseIntElementsAttr Builder::getI32TensorAttr(ArrayRef<int32_t> values) {
return DenseIntElementsAttr::get(
RankedTensorType::get(static_cast<int64_t>(values.size()),
More information about the Mlir-commits
mailing list