summaryrefslogtreecommitdiffstats
path: root/mlir/lib/EDSC
diff options
context:
space:
mode:
Diffstat (limited to 'mlir/lib/EDSC')
-rw-r--r--mlir/lib/EDSC/CoreAPIs.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/mlir/lib/EDSC/CoreAPIs.cpp b/mlir/lib/EDSC/CoreAPIs.cpp
index ab935742b8d..b88a1fdf4ef 100644
--- a/mlir/lib/EDSC/CoreAPIs.cpp
+++ b/mlir/lib/EDSC/CoreAPIs.cpp
@@ -74,6 +74,18 @@ mlir_attr_t makeBoolAttr(mlir_context_t context, bool value) {
return mlir_attr_t{attr.getAsOpaquePointer()};
}
+mlir_attr_t makeFloatAttr(mlir_context_t context, float value) {
+ auto *ctx = reinterpret_cast<mlir::MLIRContext *>(context);
+ auto attr = FloatAttr::get(FloatType::getF32(ctx), APFloat(value));
+ return mlir_attr_t{attr.getAsOpaquePointer()};
+}
+
+mlir_attr_t makeStringAttr(mlir_context_t context, const char *value) {
+ auto *ctx = reinterpret_cast<mlir::MLIRContext *>(context);
+ auto attr = StringAttr::get(value, ctx);
+ return mlir_attr_t{attr.getAsOpaquePointer()};
+}
+
unsigned getFunctionArity(mlir_func_t function) {
auto f = mlir::FuncOp::getFromOpaquePointer(function);
return f.getNumArguments();
OpenPOWER on IntegriCloud