20 static_cast<uint64_t
>(emitc::CmpPredicate::eq) &&
22 static_cast<uint64_t
>(emitc::CmpPredicate::ne) &&
24 static_cast<uint64_t
>(emitc::CmpPredicate::lt) &&
26 static_cast<uint64_t
>(emitc::CmpPredicate::le) &&
28 static_cast<uint64_t
>(emitc::CmpPredicate::gt) &&
30 static_cast<uint64_t
>(emitc::CmpPredicate::ge) &&
32 static_cast<uint64_t
>(emitc::CmpPredicate::three_way),
33 "MlirEmitCCmpPredicate (C-API) and CmpPredicate (C++) mismatch");
40 return isa<emitc::ArrayType>(
unwrap(type));
44 return wrap(emitc::ArrayType::getTypeID());
48 MlirType elementType) {
54 return wrap(emitc::ArrayType::name);
62 return isa<emitc::LValueType>(
unwrap(type));
66 return wrap(emitc::LValueType::getTypeID());
70 return wrap(emitc::LValueType::get(
unwrap(valueType)));
74 return wrap(emitc::LValueType::name);
82 return isa<emitc::OpaqueType>(
unwrap(type));
86 return wrap(emitc::OpaqueType::getTypeID());
94 return wrap(emitc::OpaqueType::name);
102 return isa<emitc::PointerType>(
unwrap(type));
106 return wrap(emitc::PointerType::getTypeID());
110 return wrap(emitc::PointerType::get(
unwrap(pointee)));
114 return wrap(emitc::PointerType::name);
122 return isa<emitc::PtrDiffTType>(
unwrap(type));
126 return wrap(emitc::PtrDiffTType::getTypeID());
130 return wrap(emitc::PtrDiffTType::get(
unwrap(ctx)));
134 return wrap(emitc::PtrDiffTType::name);
142 return isa<emitc::SignedSizeTType>(
unwrap(type));
146 return wrap(emitc::SignedSizeTType::getTypeID());
150 return wrap(emitc::SignedSizeTType::get(
unwrap(ctx)));
154 return wrap(emitc::SignedSizeTType::name);
162 return isa<emitc::SizeTType>(
unwrap(type));
166 return wrap(emitc::SizeTType::getTypeID());
170 return wrap(emitc::SizeTType::get(
unwrap(ctx)));
174 return wrap(emitc::SizeTType::name);
182 return llvm::isa<emitc::CmpPredicateAttr>(
unwrap(attr));
188 unwrap(ctx),
static_cast<emitc::CmpPredicate
>(val)));
192 return wrap(emitc::CmpPredicateAttr::name);
197 llvm::cast<emitc::CmpPredicateAttr>(
unwrap(attr)).getValue());
201 return wrap(emitc::CmpPredicateAttr::getTypeID());
209 return llvm::isa<emitc::OpaqueAttr>(
unwrap(attr));
217 return wrap(emitc::OpaqueAttr::name);
221 return wrap(llvm::cast<emitc::OpaqueAttr>(
unwrap(attr)).getValue());
225 return wrap(emitc::OpaqueAttr::getTypeID());
MlirTypeID mlirEmitCLValueTypeGetTypeID(void)
bool mlirTypeIsAEmitCSizeTType(MlirType type)
bool mlirTypeIsAEmitCSignedSizeTType(MlirType type)
MlirTypeID mlirEmitCPtrDiffTTypeGetTypeID(void)
MlirStringRef mlirEmitCPointerTypeGetName(void)
MlirType mlirEmitCSignedSizeTTypeGet(MlirContext ctx)
bool mlirAttributeIsAEmitCCmpPredicate(MlirAttribute attr)
MlirStringRef mlirEmitCSizeTTypeGetName(void)
MlirType mlirEmitCArrayTypeGet(intptr_t nDims, int64_t *shape, MlirType elementType)
MlirStringRef mlirEmitCCmpPredicateAttrGetName(void)
MlirType mlirEmitCPointerTypeGet(MlirType pointee)
MlirAttribute mlirEmitCOpaqueAttrGet(MlirContext ctx, MlirStringRef value)
MlirStringRef mlirEmitCOpaqueAttrGetValue(MlirAttribute attr)
bool mlirTypeIsAEmitCArrayType(MlirType type)
MlirType mlirEmitCSizeTTypeGet(MlirContext ctx)
MlirAttribute mlirEmitCCmpPredicateAttrGet(MlirContext ctx, MlirEmitCCmpPredicate val)
MlirTypeID mlirEmitCSizeTTypeGetTypeID(void)
MlirStringRef mlirEmitCOpaqueTypeGetName(void)
MlirStringRef mlirEmitCPtrDiffTTypeGetName(void)
MlirStringRef mlirEmitCArrayTypeGetName(void)
bool mlirTypeIsAEmitCLValueType(MlirType type)
bool mlirTypeIsAEmitCPtrDiffTType(MlirType type)
MlirTypeID mlirEmitCSignedSizeTTypeGetTypeID(void)
bool mlirTypeIsAEmitCOpaqueType(MlirType type)
MlirEmitCCmpPredicate mlirEmitCCmpPredicateAttrGetValue(MlirAttribute attr)
bool mlirAttributeIsAEmitCOpaque(MlirAttribute attr)
MlirType mlirEmitCPtrDiffTTypeGet(MlirContext ctx)
bool mlirTypeIsAEmitCPointerType(MlirType type)
MlirStringRef mlirEmitCSignedSizeTTypeGetName(void)
MlirStringRef mlirEmitCOpaqueAttrGetName(void)
MlirTypeID mlirEmitCArrayTypeGetTypeID(void)
MlirType mlirEmitCLValueTypeGet(MlirType valueType)
MlirStringRef mlirEmitCLValueTypeGetName(void)
MlirTypeID mlirEmitCOpaqueTypeGetTypeID(void)
MlirTypeID mlirEmitCCmpPredicateAttrGetTypeID(void)
MlirType mlirEmitCOpaqueTypeGet(MlirContext ctx, MlirStringRef value)
MlirTypeID mlirEmitCPointerTypeGetTypeID(void)
MlirTypeID mlirEmitCOpaqueAttrGetTypeID(void)
#define MLIR_DEFINE_CAPI_DIALECT_REGISTRATION(Name, Namespace, ClassName)
Attributes are known-constant values of operations.
MlirDiagnostic wrap(mlir::Diagnostic &diagnostic)
mlir::Diagnostic & unwrap(MlirDiagnostic diagnostic)
@ MLIR_EMITC_CMP_PREDICATE_LE
@ MLIR_EMITC_CMP_PREDICATE_EQ
@ MLIR_EMITC_CMP_PREDICATE_THREE_WAY
@ MLIR_EMITC_CMP_PREDICATE_LT
@ MLIR_EMITC_CMP_PREDICATE_GE
@ MLIR_EMITC_CMP_PREDICATE_NE
@ MLIR_EMITC_CMP_PREDICATE_GT
Include the generated interface declarations.
A pointer to a sized fragment of a string, not necessarily null-terminated.