MLIR 23.0.0git
EmitC.h
Go to the documentation of this file.
1//===-- mlir-c/Dialect/EmitC.h - C API for EmitC dialect ----------*- C -*-===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM
4// Exceptions.
5// See https://llvm.org/LICENSE.txt for license information.
6// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7//
8//===----------------------------------------------------------------------===//
9
10#ifndef MLIR_C_DIALECT_EmitC_H
11#define MLIR_C_DIALECT_EmitC_H
12
13#include "mlir-c/IR.h"
14#include "mlir-c/Support.h"
15
16#ifdef __cplusplus
17extern "C" {
18#endif
19
21
31
32//===---------------------------------------------------------------------===//
33// ArrayType
34//===---------------------------------------------------------------------===//
35
37
39
41 int64_t *shape,
42 MlirType elementType);
43
45
46//===---------------------------------------------------------------------===//
47// LValueType
48//===---------------------------------------------------------------------===//
49
51
53
54MLIR_CAPI_EXPORTED MlirType mlirEmitCLValueTypeGet(MlirType valueType);
55
57
58//===---------------------------------------------------------------------===//
59// OpaqueType
60//===---------------------------------------------------------------------===//
61
63
65
66MLIR_CAPI_EXPORTED MlirType mlirEmitCOpaqueTypeGet(MlirContext ctx,
67 MlirStringRef value);
68
70
71//===---------------------------------------------------------------------===//
72// PointerType
73//===---------------------------------------------------------------------===//
74
76
78
79MLIR_CAPI_EXPORTED MlirType mlirEmitCPointerTypeGet(MlirType pointee);
80
82
83//===---------------------------------------------------------------------===//
84// PtrDiffTType
85//===---------------------------------------------------------------------===//
86
88
90
91MLIR_CAPI_EXPORTED MlirType mlirEmitCPtrDiffTTypeGet(MlirContext ctx);
92
94
95//===---------------------------------------------------------------------===//
96// SignedSizeTType
97//===---------------------------------------------------------------------===//
98
100
102
103MLIR_CAPI_EXPORTED MlirType mlirEmitCSignedSizeTTypeGet(MlirContext ctx);
104
106
107//===---------------------------------------------------------------------===//
108// SizeTType
109//===---------------------------------------------------------------------===//
110
112
114
115MLIR_CAPI_EXPORTED MlirType mlirEmitCSizeTTypeGet(MlirContext ctx);
116
118
119//===----------------------------------------------------------------------===//
120// CmpPredicate attribute.
121//===----------------------------------------------------------------------===//
122
124
125MLIR_CAPI_EXPORTED MlirAttribute
126mlirEmitCCmpPredicateAttrGet(MlirContext ctx, enum MlirEmitCCmpPredicate val);
127
129
131mlirEmitCCmpPredicateAttrGetValue(MlirAttribute attr);
132
134
135//===----------------------------------------------------------------------===//
136// Opaque attribute.
137//===----------------------------------------------------------------------===//
138
139MLIR_CAPI_EXPORTED bool mlirAttributeIsAEmitCOpaque(MlirAttribute attr);
140
141MLIR_CAPI_EXPORTED MlirAttribute mlirEmitCOpaqueAttrGet(MlirContext ctx,
142 MlirStringRef value);
143
145
147mlirEmitCOpaqueAttrGetValue(MlirAttribute attr);
148
150
151#ifdef __cplusplus
152}
153#endif
154
155#include "mlir/Dialect/EmitC/Transforms/Passes.capi.h.inc"
156
157#endif // MLIR_C_DIALECT_EmitC_H
MLIR_CAPI_EXPORTED MlirTypeID mlirEmitCOpaqueTypeGetTypeID(void)
Definition EmitC.cpp:85
MLIR_CAPI_EXPORTED MlirAttribute mlirEmitCOpaqueAttrGet(MlirContext ctx, MlirStringRef value)
Definition EmitC.cpp:212
MLIR_CAPI_EXPORTED bool mlirTypeIsAEmitCOpaqueType(MlirType type)
Definition EmitC.cpp:81
MLIR_CAPI_EXPORTED bool mlirTypeIsAEmitCSizeTType(MlirType type)
Definition EmitC.cpp:161
MLIR_CAPI_EXPORTED MlirTypeID mlirEmitCPointerTypeGetTypeID(void)
Definition EmitC.cpp:105
MLIR_CAPI_EXPORTED MlirTypeID mlirEmitCCmpPredicateAttrGetTypeID(void)
Definition EmitC.cpp:200
MLIR_CAPI_EXPORTED MlirStringRef mlirEmitCOpaqueAttrGetName(void)
Definition EmitC.cpp:216
MLIR_CAPI_EXPORTED MlirStringRef mlirEmitCLValueTypeGetName(void)
Definition EmitC.cpp:73
MLIR_CAPI_EXPORTED bool mlirTypeIsAEmitCPointerType(MlirType type)
Definition EmitC.cpp:101
MlirEmitCCmpPredicate
Definition EmitC.h:22
@ MLIR_EMITC_CMP_PREDICATE_LE
Definition EmitC.h:26
@ MLIR_EMITC_CMP_PREDICATE_EQ
Definition EmitC.h:23
@ MLIR_EMITC_CMP_PREDICATE_THREE_WAY
Definition EmitC.h:29
@ MLIR_EMITC_CMP_PREDICATE_LT
Definition EmitC.h:25
@ MLIR_EMITC_CMP_PREDICATE_GE
Definition EmitC.h:28
@ MLIR_EMITC_CMP_PREDICATE_NE
Definition EmitC.h:24
@ MLIR_EMITC_CMP_PREDICATE_GT
Definition EmitC.h:27
MLIR_CAPI_EXPORTED MlirTypeID mlirEmitCLValueTypeGetTypeID(void)
Definition EmitC.cpp:65
MLIR_CAPI_EXPORTED MlirType mlirEmitCOpaqueTypeGet(MlirContext ctx, MlirStringRef value)
Definition EmitC.cpp:89
MLIR_CAPI_EXPORTED MlirStringRef mlirEmitCPointerTypeGetName(void)
Definition EmitC.cpp:113
MLIR_CAPI_EXPORTED MlirStringRef mlirEmitCSizeTTypeGetName(void)
Definition EmitC.cpp:173
MLIR_CAPI_EXPORTED MlirStringRef mlirEmitCPtrDiffTTypeGetName(void)
Definition EmitC.cpp:133
MLIR_CAPI_EXPORTED enum MlirEmitCCmpPredicate mlirEmitCCmpPredicateAttrGetValue(MlirAttribute attr)
Definition EmitC.cpp:195
MLIR_CAPI_EXPORTED MlirAttribute mlirEmitCCmpPredicateAttrGet(MlirContext ctx, enum MlirEmitCCmpPredicate val)
Definition EmitC.cpp:185
MLIR_CAPI_EXPORTED bool mlirAttributeIsAEmitCOpaque(MlirAttribute attr)
Definition EmitC.cpp:208
MLIR_CAPI_EXPORTED bool mlirTypeIsAEmitCArrayType(MlirType type)
Definition EmitC.cpp:39
MLIR_CAPI_EXPORTED MlirStringRef mlirEmitCOpaqueTypeGetName(void)
Definition EmitC.cpp:93
MLIR_CAPI_EXPORTED bool mlirTypeIsAEmitCLValueType(MlirType type)
Definition EmitC.cpp:61
MLIR_CAPI_EXPORTED MlirStringRef mlirEmitCOpaqueAttrGetValue(MlirAttribute attr)
Definition EmitC.cpp:220
MLIR_CAPI_EXPORTED MlirStringRef mlirEmitCArrayTypeGetName(void)
Definition EmitC.cpp:53
MLIR_CAPI_EXPORTED MlirTypeID mlirEmitCSignedSizeTTypeGetTypeID(void)
Definition EmitC.cpp:145
MLIR_CAPI_EXPORTED MlirTypeID mlirEmitCSizeTTypeGetTypeID(void)
Definition EmitC.cpp:165
MLIR_CAPI_EXPORTED MlirTypeID mlirEmitCArrayTypeGetTypeID(void)
Definition EmitC.cpp:43
MLIR_CAPI_EXPORTED MlirTypeID mlirEmitCPtrDiffTTypeGetTypeID(void)
Definition EmitC.cpp:125
MLIR_CAPI_EXPORTED MlirType mlirEmitCPtrDiffTTypeGet(MlirContext ctx)
Definition EmitC.cpp:129
MLIR_CAPI_EXPORTED bool mlirAttributeIsAEmitCCmpPredicate(MlirAttribute attr)
Definition EmitC.cpp:181
MLIR_CAPI_EXPORTED MlirType mlirEmitCLValueTypeGet(MlirType valueType)
Definition EmitC.cpp:69
MLIR_CAPI_EXPORTED bool mlirTypeIsAEmitCPtrDiffTType(MlirType type)
Definition EmitC.cpp:121
MLIR_CAPI_EXPORTED MlirType mlirEmitCArrayTypeGet(intptr_t nDims, int64_t *shape, MlirType elementType)
Definition EmitC.cpp:47
MLIR_CAPI_EXPORTED bool mlirTypeIsAEmitCSignedSizeTType(MlirType type)
Definition EmitC.cpp:141
MLIR_CAPI_EXPORTED MlirType mlirEmitCSizeTTypeGet(MlirContext ctx)
Definition EmitC.cpp:169
MLIR_CAPI_EXPORTED MlirStringRef mlirEmitCCmpPredicateAttrGetName(void)
Definition EmitC.cpp:191
MLIR_CAPI_EXPORTED MlirType mlirEmitCPointerTypeGet(MlirType pointee)
Definition EmitC.cpp:109
MLIR_CAPI_EXPORTED MlirStringRef mlirEmitCSignedSizeTTypeGetName(void)
Definition EmitC.cpp:153
MLIR_CAPI_EXPORTED MlirTypeID mlirEmitCOpaqueAttrGetTypeID(void)
Definition EmitC.cpp:224
MLIR_CAPI_EXPORTED MlirType mlirEmitCSignedSizeTTypeGet(MlirContext ctx)
Definition EmitC.cpp:149
#define MLIR_DECLARE_CAPI_DIALECT_REGISTRATION(Name, Namespace)
Definition IR.h:215
#define MLIR_CAPI_EXPORTED
Definition Support.h:46
A pointer to a sized fragment of a string, not necessarily null-terminated.
Definition Support.h:75