19 static_cast<uint64_t
>(emitc::CmpPredicate::eq) &&
21 static_cast<uint64_t
>(emitc::CmpPredicate::ne) &&
23 static_cast<uint64_t
>(emitc::CmpPredicate::lt) &&
25 static_cast<uint64_t
>(emitc::CmpPredicate::le) &&
27 static_cast<uint64_t
>(emitc::CmpPredicate::gt) &&
29 static_cast<uint64_t
>(emitc::CmpPredicate::ge) &&
31 static_cast<uint64_t
>(emitc::CmpPredicate::three_way),
32 "MlirEmitCCmpPredicate (C-API) and CmpPredicate (C++) mismatch");
39 return isa<emitc::ArrayType>(
unwrap(type));
43 return wrap(emitc::ArrayType::getTypeID());
47 MlirType elementType) {
57 return isa<emitc::LValueType>(
unwrap(type));
61 return wrap(emitc::LValueType::getTypeID());
73 return isa<emitc::OpaqueType>(
unwrap(type));
77 return wrap(emitc::OpaqueType::getTypeID());
89 return isa<emitc::PointerType>(
unwrap(type));
93 return wrap(emitc::PointerType::getTypeID());
105 return isa<emitc::PtrDiffTType>(
unwrap(type));
109 return wrap(emitc::PtrDiffTType::getTypeID());
121 return isa<emitc::SignedSizeTType>(
unwrap(type));
125 return wrap(emitc::SignedSizeTType::getTypeID());
137 return isa<emitc::SizeTType>(
unwrap(type));
141 return wrap(emitc::SizeTType::getTypeID());
153 return llvm::isa<emitc::CmpPredicateAttr>(
unwrap(attr));
164 llvm::cast<emitc::CmpPredicateAttr>(
unwrap(attr)).getValue());
168 return wrap(emitc::CmpPredicateAttr::getTypeID());
176 return llvm::isa<emitc::OpaqueAttr>(
unwrap(attr));
184 return wrap(llvm::cast<emitc::OpaqueAttr>(
unwrap(attr)).getValue());
188 return wrap(emitc::OpaqueAttr::getTypeID());
MlirTypeID mlirEmitCLValueTypeGetTypeID(void)
bool mlirTypeIsAEmitCSizeTType(MlirType type)
bool mlirTypeIsAEmitCSignedSizeTType(MlirType type)
MlirTypeID mlirEmitCPtrDiffTTypeGetTypeID(void)
MlirType mlirEmitCSignedSizeTTypeGet(MlirContext ctx)
bool mlirAttributeIsAEmitCCmpPredicate(MlirAttribute attr)
MlirType mlirEmitCArrayTypeGet(intptr_t nDims, int64_t *shape, MlirType elementType)
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)
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)
MlirTypeID mlirEmitCArrayTypeGetTypeID(void)
MlirType mlirEmitCLValueTypeGet(MlirType valueType)
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.
mlir::Diagnostic & unwrap(MlirDiagnostic diagnostic)
MlirDiagnostic wrap(mlir::Diagnostic &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
CmpPredicate
Copy of the enum from arith and index to allow the common integer range infrastructure to not depend ...
Include the generated interface declarations.
auto get(MLIRContext *context, Ts &&...params)
Helper method that injects context only if needed, this helps unify some of the attribute constructio...
A pointer to a sized fragment of a string, not necessarily null-terminated.