LLZK 0.1.0
Veridise's ZK Language IR
Loading...
Searching...
No Matches
Polymorphic.h File Reference
#include "llzk/Dialect/Polymorphic/Transforms/TransformationPasses.capi.h.inc"
#include "llzk-c/Support.h"
#include <mlir-c/AffineExpr.h>
#include <mlir-c/AffineMap.h>
#include <mlir-c/IR.h>
#include <mlir-c/Support.h>
Include dependency graph for Polymorphic.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

 MLIR_DECLARE_CAPI_DIALECT_REGISTRATION (Polymorphic, llzk__polymorphic)
 
MLIR_CAPI_EXPORTED MlirType llzkTypeVarTypeGet (MlirContext context, MlirStringRef value)
 Creates a llzk::polymorphic::TypeVarType.
 
 LLZK_DECLARE_TYPE_ISA (TypeVarType)
 Returns true if the type is a TypeVarType.
 
MLIR_CAPI_EXPORTED MlirType llzkTypeVarTypeGetFromAttr (MlirContext context, MlirAttribute value)
 Creates a llzk::polymorphic::TypeVarType from either a StringAttr or a FlatSymbolRefAttr.
 
MLIR_CAPI_EXPORTED MlirStringRef llzkTypeVarTypeGetNameRef (MlirType type)
 Returns the var name of the TypeVarType as a StringRef.
 
MLIR_CAPI_EXPORTED MlirAttribute llzkTypeVarTypeGetName (MlirType type)
 Returns the var name of the TypeVarType as a FlatSymbolRefAttr.
 
 LLZK_DECLARE_OP_BUILD_METHOD (ApplyMapOp, MlirAttribute affineMapAttr, MlirValueRange operands)
 Creates an ApplyMapOp with the given attribute that has to be of type AffineMapAttr.
 
 LLZK_DECLARE_SUFFIX_OP_BUILD_METHOD (ApplyMapOp, WithAffineMap, MlirAffineMap affineMap, MlirValueRange operands)
 Creates an ApplyMapOp with the given affine map.
 
 LLZK_DECLARE_SUFFIX_OP_BUILD_METHOD (ApplyMapOp, WithAffineExpr, MlirAffineExpr affineExpr, MlirValueRange operands)
 Creates an ApplyMapOp with the given affine expression.
 
 LLZK_DECLARE_OP_ISA (ApplyMapOp)
 Returns true if the op is an ApplyMapOp.
 
MLIR_CAPI_EXPORTED MlirAffineMap llzkApplyMapOpGetAffineMap (MlirOperation op)
 Returns the affine map associated with the op.
 
MLIR_CAPI_EXPORTED intptr_t llzkApplyMapOpGetNumDimOperands (MlirOperation op)
 Returns the number of operands that correspond to dimensions in the affine map.
 
MLIR_CAPI_EXPORTED void llzkApplyMapOpGetDimOperands (MlirOperation op, MlirValue *dst)
 Writes into the destination buffer the operands that correspond to dimensions in the affine map.
 
MLIR_CAPI_EXPORTED intptr_t llzkApplyMapOpGetNumSymbolOperands (MlirOperation op)
 Returns the number of operands that correspond to symbols in the affine map.
 
MLIR_CAPI_EXPORTED void llzkApplyMapOpGetSymbolOperands (MlirOperation op, MlirValue *dst)
 Writes into the destination buffer the operands that correspond to symbols in the affine map.
 

Function Documentation

◆ LLZK_DECLARE_OP_BUILD_METHOD()

LLZK_DECLARE_OP_BUILD_METHOD ( ApplyMapOp ,
MlirAttribute affineMapAttr,
MlirValueRange operands )

Creates an ApplyMapOp with the given attribute that has to be of type AffineMapAttr.

◆ LLZK_DECLARE_OP_ISA()

LLZK_DECLARE_OP_ISA ( ApplyMapOp )

Returns true if the op is an ApplyMapOp.

◆ LLZK_DECLARE_SUFFIX_OP_BUILD_METHOD() [1/2]

LLZK_DECLARE_SUFFIX_OP_BUILD_METHOD ( ApplyMapOp ,
WithAffineExpr ,
MlirAffineExpr affineExpr,
MlirValueRange operands )

Creates an ApplyMapOp with the given affine expression.

◆ LLZK_DECLARE_SUFFIX_OP_BUILD_METHOD() [2/2]

LLZK_DECLARE_SUFFIX_OP_BUILD_METHOD ( ApplyMapOp ,
WithAffineMap ,
MlirAffineMap affineMap,
MlirValueRange operands )

Creates an ApplyMapOp with the given affine map.

◆ LLZK_DECLARE_TYPE_ISA()

LLZK_DECLARE_TYPE_ISA ( TypeVarType )

Returns true if the type is a TypeVarType.

◆ llzkApplyMapOpGetAffineMap()

MLIR_CAPI_EXPORTED MlirAffineMap llzkApplyMapOpGetAffineMap ( MlirOperation op)

Returns the affine map associated with the op.

Definition at line 105 of file Polymorphic.cpp.

◆ llzkApplyMapOpGetDimOperands()

MLIR_CAPI_EXPORTED void llzkApplyMapOpGetDimOperands ( MlirOperation op,
MlirValue * dst )

Writes into the destination buffer the operands that correspond to dimensions in the affine map.

The buffer needs to be preallocated first with the necessary amount and the caller is responsible of its lifetime. See llzkApplyMapOpGetNumDimOperands.

Definition at line 131 of file Polymorphic.cpp.

◆ llzkApplyMapOpGetNumDimOperands()

MLIR_CAPI_EXPORTED intptr_t llzkApplyMapOpGetNumDimOperands ( MlirOperation op)

Returns the number of operands that correspond to dimensions in the affine map.

Definition at line 124 of file Polymorphic.cpp.

◆ llzkApplyMapOpGetNumSymbolOperands()

MLIR_CAPI_EXPORTED intptr_t llzkApplyMapOpGetNumSymbolOperands ( MlirOperation op)

Returns the number of operands that correspond to symbols in the affine map.

Definition at line 136 of file Polymorphic.cpp.

◆ llzkApplyMapOpGetSymbolOperands()

MLIR_CAPI_EXPORTED void llzkApplyMapOpGetSymbolOperands ( MlirOperation op,
MlirValue * dst )

Writes into the destination buffer the operands that correspond to symbols in the affine map.

The buffer needs to be preallocated first with the necessary amount and the caller is responsible of its lifetime. See llzkApplyMapOpGetNumSymbolOperands.

Definition at line 143 of file Polymorphic.cpp.

◆ llzkTypeVarTypeGet()

MLIR_CAPI_EXPORTED MlirType llzkTypeVarTypeGet ( MlirContext context,
MlirStringRef value )

◆ llzkTypeVarTypeGetFromAttr()

MLIR_CAPI_EXPORTED MlirType llzkTypeVarTypeGetFromAttr ( MlirContext context,
MlirAttribute value )

Creates a llzk::polymorphic::TypeVarType from either a StringAttr or a FlatSymbolRefAttr.

Definition at line 54 of file Polymorphic.cpp.

◆ llzkTypeVarTypeGetName()

MLIR_CAPI_EXPORTED MlirAttribute llzkTypeVarTypeGetName ( MlirType type)

Returns the var name of the TypeVarType as a FlatSymbolRefAttr.

Definition at line 66 of file Polymorphic.cpp.

◆ llzkTypeVarTypeGetNameRef()

MLIR_CAPI_EXPORTED MlirStringRef llzkTypeVarTypeGetNameRef ( MlirType type)

Returns the var name of the TypeVarType as a StringRef.

Definition at line 62 of file Polymorphic.cpp.

◆ MLIR_DECLARE_CAPI_DIALECT_REGISTRATION()

MLIR_DECLARE_CAPI_DIALECT_REGISTRATION ( Polymorphic ,
llzk__polymorphic  )