MLIR 23.0.0git
ExtensibleDialect.h File Reference
#include "mlir-c/IR.h"
#include "mlir-c/Support.h"

Go to the source code of this file.

Classes

struct  MlirDynamicOpTraitCallbacks

Macros

#define DEFINE_C_API_STRUCT(name, storage)
 Opaque type declarations (see mlir-c/IR.h for more details).

Functions

 DEFINE_C_API_STRUCT (MlirDynamicOpTrait, void)
MLIR_CAPI_EXPORTED bool mlirDynamicOpTraitAttach (MlirDynamicOpTrait dynamicOpTrait, MlirStringRef opName, MlirContext context)
 Attach a dynamic op trait to the given operation name.
MLIR_CAPI_EXPORTED MlirDynamicOpTrait mlirDynamicOpTraitIsTerminatorCreate (void)
 Get the dynamic op trait that indicates the operation is a terminator.
MLIR_CAPI_EXPORTED MlirDynamicOpTrait mlirDynamicOpTraitNoTerminatorCreate (void)
 Get the dynamic op trait that indicates regions have no terminator.
MLIR_CAPI_EXPORTED void mlirDynamicOpTraitDestroy (MlirDynamicOpTrait dynamicOpTrait)
 Destroy the dynamic op trait.
MLIR_CAPI_EXPORTED MlirDynamicOpTrait mlirDynamicOpTraitCreate (MlirTypeID typeID, MlirDynamicOpTraitCallbacks callbacks, void *userData)
 Create a custom dynamic op trait with the given type ID and callbacks.

Macro Definition Documentation

◆ DEFINE_C_API_STRUCT

#define DEFINE_C_API_STRUCT ( name,
storage )
Value:
struct name { \
storage *ptr; \
}; \
typedef struct name name

Opaque type declarations (see mlir-c/IR.h for more details).

Definition at line 28 of file ExtensibleDialect.h.

Function Documentation

◆ DEFINE_C_API_STRUCT()

DEFINE_C_API_STRUCT ( MlirDynamicOpTrait ,
void  )

References MLIR_CAPI_EXPORTED.

◆ mlirDynamicOpTraitAttach()

MLIR_CAPI_EXPORTED bool mlirDynamicOpTraitAttach ( MlirDynamicOpTrait dynamicOpTrait,
MlirStringRef opName,
MlirContext context )

Attach a dynamic op trait to the given operation name.

Note that the operation name must be modeled by dynamic dialect and must be registered. The ownership of the trait will be transferred to the operation name after this call.

Definition at line 19 of file ExtensibleDialect.cpp.

References mlir::OperationName::getImpl(), mlir::RegisteredOperationName::lookup(), mlirDynamicOpTraitAttach(), and unwrap().

Referenced by mlirDynamicOpTraitAttach().

◆ mlirDynamicOpTraitCreate()

MLIR_CAPI_EXPORTED MlirDynamicOpTrait mlirDynamicOpTraitCreate ( MlirTypeID typeID,
MlirDynamicOpTraitCallbacks callbacks,
void * userData )

Create a custom dynamic op trait with the given type ID and callbacks.

Definition at line 83 of file ExtensibleDialect.cpp.

References unwrap(), and wrap().

◆ mlirDynamicOpTraitDestroy()

MLIR_CAPI_EXPORTED void mlirDynamicOpTraitDestroy ( MlirDynamicOpTrait dynamicOpTrait)

Destroy the dynamic op trait.

Definition at line 47 of file ExtensibleDialect.cpp.

References unwrap().

◆ mlirDynamicOpTraitIsTerminatorCreate()

MLIR_CAPI_EXPORTED MlirDynamicOpTrait mlirDynamicOpTraitIsTerminatorCreate ( void )

Get the dynamic op trait that indicates the operation is a terminator.

Definition at line 39 of file ExtensibleDialect.cpp.

References wrap().

Referenced by mlir::python::MLIR_BINDINGS_PYTHON_DOMAIN::PyDynamicOpTraits::IsTerminator::bind().

◆ mlirDynamicOpTraitNoTerminatorCreate()

MLIR_CAPI_EXPORTED MlirDynamicOpTrait mlirDynamicOpTraitNoTerminatorCreate ( void )

Get the dynamic op trait that indicates regions have no terminator.

Definition at line 43 of file ExtensibleDialect.cpp.

References wrap().

Referenced by mlir::python::MLIR_BINDINGS_PYTHON_DOMAIN::PyDynamicOpTraits::NoTerminator::bind().