1 //===-- mlir-c/Dialect/GPU.h - C API for GPU dialect -------------*- C -*-===//
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM
5 // See https://llvm.org/LICENSE.txt for license information.
6 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
8 //===---------------------------------------------------------------------===//
10 #ifndef MLIR_C_DIALECT_GPU_H
11 #define MLIR_C_DIALECT_GPU_H
13 #include "mlir-c/IR.h"
14 #include "mlir-c/Support.h"
20 MLIR_DECLARE_CAPI_DIALECT_REGISTRATION(GPU
, gpu
);
22 //===---------------------------------------------------------------------===//
24 //===---------------------------------------------------------------------===//
26 MLIR_CAPI_EXPORTED
bool mlirAttributeIsAGPUObjectAttr(MlirAttribute attr
);
28 MLIR_CAPI_EXPORTED MlirAttribute
29 mlirGPUObjectAttrGet(MlirContext mlirCtx
, MlirAttribute target
, uint32_t format
,
30 MlirStringRef objectStrRef
, MlirAttribute mlirObjectProps
);
32 MLIR_CAPI_EXPORTED MlirAttribute
33 mlirGPUObjectAttrGetTarget(MlirAttribute mlirObjectAttr
);
35 MLIR_CAPI_EXPORTED
uint32_t
36 mlirGPUObjectAttrGetFormat(MlirAttribute mlirObjectAttr
);
38 MLIR_CAPI_EXPORTED MlirStringRef
39 mlirGPUObjectAttrGetObject(MlirAttribute mlirObjectAttr
);
41 MLIR_CAPI_EXPORTED
bool
42 mlirGPUObjectAttrHasProperties(MlirAttribute mlirObjectAttr
);
44 MLIR_CAPI_EXPORTED MlirAttribute
45 mlirGPUObjectAttrGetProperties(MlirAttribute mlirObjectAttr
);
51 #include "mlir/Dialect/GPU/Transforms/Passes.capi.h.inc"
53 #endif // MLIR_C_DIALECT_GPU_H