diff --git a/mlir/include/mlir-c/Dialect/ControlFlow.h b/mlir/include/mlir-c/Dialect/ControlFlow.h new file mode 100644 --- /dev/null +++ b/mlir/include/mlir-c/Dialect/ControlFlow.h @@ -0,0 +1,25 @@ +//===-- mlir-c/Dialect/ControlFlow.h - C API for ControlFlow ------*- C -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM +// Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// + +#ifndef MLIR_C_DIALECT_CONTROLFLOW_H +#define MLIR_C_DIALECT_CONTROLFLOW_H + +#include "mlir-c/Registration.h" + +#ifdef __cplusplus +extern "C" { +#endif + +MLIR_DECLARE_CAPI_DIALECT_REGISTRATION(ControlFlow, cf); + +#ifdef __cplusplus +} +#endif + +#endif // MLIR_C_DIALECT_CONTROLFLOW_H diff --git a/mlir/lib/CAPI/Dialect/CMakeLists.txt b/mlir/lib/CAPI/Dialect/CMakeLists.txt --- a/mlir/lib/CAPI/Dialect/CMakeLists.txt +++ b/mlir/lib/CAPI/Dialect/CMakeLists.txt @@ -13,6 +13,15 @@ MLIRPass ) +add_mlir_upstream_c_api_library(MLIRCAPIControlFlow + ControlFlow.cpp + + PARTIAL_SOURCES_INTENDED + LINK_LIBS PUBLIC + MLIRCAPIIR + MLIRControlFlow +) + add_mlir_upstream_c_api_library(MLIRCAPIGPU GPU.cpp GPUPasses.cpp diff --git a/mlir/lib/CAPI/Dialect/ControlFlow.cpp b/mlir/lib/CAPI/Dialect/ControlFlow.cpp new file mode 100644 --- /dev/null +++ b/mlir/lib/CAPI/Dialect/ControlFlow.cpp @@ -0,0 +1,14 @@ +//===- ControlFlow.cpp - C Interface for ControlFlow dialect --------------===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// + +#include "mlir-c/Dialect/ControlFlow.h" +#include "mlir/CAPI/Registration.h" +#include "mlir/Dialect/ControlFlow/IR/ControlFlow.h" + +MLIR_DEFINE_CAPI_DIALECT_REGISTRATION(ControlFlow, cf, + mlir::cf::ControlFlowDialect)