[Mlir-commits] [mlir] [CAPI] add C API typedef to fix downstream C API usage (PR #135380)

llvmlistbot at llvm.org llvmlistbot at llvm.org
Fri Apr 11 07:34:50 PDT 2025


llvmbot wrote:


<!--LLVM PR SUMMARY COMMENT-->

@llvm/pr-subscribers-mlir

Author: Bangtian Liu (bangtianliu)

<details>
<summary>Changes</summary>

This PR is after #<!-- -->135253 and #<!-- -->134935 to fix the error reported by https://github.com/llvm/llvm-project/pull/135253#issuecomment-2796077024. This PR Adds typedef declarations for `MlirLinalgContractionDimensions `and `MlirLinalgConvolutionDimensions` in the C API to ensure compatibility with pure C code.

I confirm that this fix resolves the reported error based on my testing.

---
Full diff: https://github.com/llvm/llvm-project/pull/135380.diff


1 Files Affected:

- (modified) mlir/include/mlir-c/Dialect/Linalg.h (+4-4) 


``````````diff
diff --git a/mlir/include/mlir-c/Dialect/Linalg.h b/mlir/include/mlir-c/Dialect/Linalg.h
index 838c280903e2e..4f2ee0d434222 100644
--- a/mlir/include/mlir-c/Dialect/Linalg.h
+++ b/mlir/include/mlir-c/Dialect/Linalg.h
@@ -24,19 +24,19 @@ mlirLinalgFillBuiltinNamedOpRegion(MlirOperation mlirOp);
 
 MLIR_CAPI_EXPORTED bool mlirLinalgIsAContractionOp(MlirOperation op);
 
-struct MlirLinalgContractionDimensions {
+typedef struct MlirLinalgContractionDimensions {
   MlirAttribute batch;
   MlirAttribute m;
   MlirAttribute n;
   MlirAttribute k;
-};
+} MlirLinalgContractionDimensions;
 
 MLIR_CAPI_EXPORTED MlirLinalgContractionDimensions
 mlirLinalgInferContractionDimensions(MlirOperation op);
 
 MLIR_CAPI_EXPORTED bool mlirLinalgIsAConvolutionOp(MlirOperation op);
 
-struct MlirLinalgConvolutionDimensions {
+typedef struct MlirLinalgConvolutionDimensions {
   MlirAttribute batch;
   MlirAttribute outputImage;
   MlirAttribute outputChannel;
@@ -45,7 +45,7 @@ struct MlirLinalgConvolutionDimensions {
   MlirAttribute depth;
   MlirAttribute strides;
   MlirAttribute dilations;
-};
+} MlirLinalgConvolutionDimensions;
 
 MLIR_CAPI_EXPORTED MlirLinalgConvolutionDimensions
 mlirLinalgInferConvolutionDimensions(MlirOperation op);

``````````

</details>


https://github.com/llvm/llvm-project/pull/135380


More information about the Mlir-commits mailing list