Previously, the Python bindings for the Linalg dialect relied on the internal implementation of core bindings. Most of that functionality was moved, and the remaining one does not need access to the implementation: it used to accept a dialect pointer as argument, but it can always be extracted from the operation that it also accepts; operations are available through PybindAdaptors in an opaque way. Change the bindings in that direction. This enables the decoupling of the Linalg dialect Python extension from the core IR Python extension. Reviewed By: nicolasvasilache Differential Revision: https://reviews.llvm.org/D116649
34 lines
916 B
C
34 lines
916 B
C
//===-- mlir-c/Dialect/Linalg.h - C API for Linalg dialect -------*- 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_LINALG_H
|
|
#define MLIR_C_DIALECT_LINALG_H
|
|
|
|
#include "mlir-c/Registration.h"
|
|
#include "mlir-c/Support.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
/// Apply the special region builder for the builtin named Linalg op.
|
|
/// Assert that `mlirOp` is a builtin named Linalg op.
|
|
MLIR_CAPI_EXPORTED void
|
|
mlirLinalgFillBuiltinNamedOpRegion(MlirOperation mlirOp);
|
|
|
|
MLIR_DECLARE_CAPI_DIALECT_REGISTRATION(Linalg, linalg);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#include "mlir/Dialect/Linalg/Passes.capi.h.inc"
|
|
|
|
#endif // MLIR_C_DIALECT_LINALG_H
|