CIRCT  19.0.0git
Classes | Macros | Typedefs | Enumerations | Functions
HW.h File Reference
#include "mlir-c/IR.h"
Include dependency graph for HW.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  HWStructFieldInfo
 
struct  HWModulePort
 

Macros

#define DEFINE_C_API_STRUCT(name, storage)
 

Typedefs

typedef struct HWStructFieldInfo HWStructFieldInfo
 
typedef enum HWModulePortDirection HWModulePortDirection
 
typedef struct HWModulePort HWModulePort
 
typedef void(* HWInstanceGraphNodeCallback) (HWInstanceGraphNode, void *)
 

Enumerations

enum  HWModulePortDirection { Input , Output , InOut }
 

Functions

 DEFINE_C_API_STRUCT (HWInstanceGraph, void)
 
 DEFINE_C_API_STRUCT (HWInstanceGraphNode, void)
 
 MLIR_DECLARE_CAPI_DIALECT_REGISTRATION (HW, hw)
 
MLIR_CAPI_EXPORTED int64_t hwGetBitWidth (MlirType)
 Return the hardware bit width of a type. More...
 
MLIR_CAPI_EXPORTED bool hwTypeIsAValueType (MlirType)
 Return true if the specified type can be used as an HW value type, that is the set of types that can be composed together to represent synthesized, hardware but not marker types like InOutType or unknown types from other dialects. More...
 
MLIR_CAPI_EXPORTED bool hwTypeIsAArrayType (MlirType)
 If the type is an HW array. More...
 
MLIR_CAPI_EXPORTED bool hwTypeIsAInOut (MlirType type)
 If the type is an HW inout. More...
 
MLIR_CAPI_EXPORTED bool hwTypeIsAModuleType (MlirType type)
 If the type is an HW module type. More...
 
MLIR_CAPI_EXPORTED bool hwTypeIsAStructType (MlirType)
 If the type is an HW struct. More...
 
MLIR_CAPI_EXPORTED bool hwTypeIsATypeAliasType (MlirType)
 If the type is an HW type alias. More...
 
MLIR_CAPI_EXPORTED bool hwTypeIsAIntType (MlirType)
 If the type is an HW int. More...
 
MLIR_CAPI_EXPORTED MlirType hwArrayTypeGet (MlirType element, size_t size)
 Creates a fixed-size HW array type in the context associated with element. More...
 
MLIR_CAPI_EXPORTED MlirType hwArrayTypeGetElementType (MlirType)
 returns the element type of an array type More...
 
MLIR_CAPI_EXPORTED intptr_t hwArrayTypeGetSize (MlirType)
 returns the size of an array type More...
 
MLIR_CAPI_EXPORTED MlirType hwInOutTypeGet (MlirType element)
 Creates an HW inout type in the context associated with element. More...
 
MLIR_CAPI_EXPORTED MlirType hwInOutTypeGetElementType (MlirType)
 Returns the element type of an inout type. More...
 
MLIR_CAPI_EXPORTED MlirType hwModuleTypeGet (MlirContext ctx, intptr_t numPorts, HWModulePort const *ports)
 Creates an HW module type. More...
 
MLIR_CAPI_EXPORTED intptr_t hwModuleTypeGetNumInputs (MlirType type)
 Get an HW module type's number of inputs. More...
 
MLIR_CAPI_EXPORTED MlirType hwModuleTypeGetInputType (MlirType type, intptr_t index)
 Get an HW module type's input type at a specific index. More...
 
MLIR_CAPI_EXPORTED MlirStringRef hwModuleTypeGetInputName (MlirType type, intptr_t index)
 Get an HW module type's input name at a specific index. More...
 
MLIR_CAPI_EXPORTED intptr_t hwModuleTypeGetNumOutputs (MlirType type)
 Get an HW module type's number of outputs. More...
 
MLIR_CAPI_EXPORTED MlirType hwModuleTypeGetOutputType (MlirType type, intptr_t index)
 Get an HW module type's output type at a specific index. More...
 
MLIR_CAPI_EXPORTED MlirStringRef hwModuleTypeGetOutputName (MlirType type, intptr_t index)
 Get an HW module type's output name at a specific index. More...
 
MLIR_CAPI_EXPORTED MlirType hwStructTypeGet (MlirContext ctx, intptr_t numElements, HWStructFieldInfo const *elements)
 Creates an HW struct type in the context associated with the elements. More...
 
MLIR_CAPI_EXPORTED MlirType hwStructTypeGetField (MlirType structType, MlirStringRef fieldName)
 
MLIR_CAPI_EXPORTED MlirType hwParamIntTypeGet (MlirAttribute parameter)
 
MLIR_CAPI_EXPORTED MlirAttribute hwParamIntTypeGetWidthAttr (MlirType)
 
MLIR_CAPI_EXPORTED MlirAttribute hwStructTypeGetFieldIndex (MlirType structType, MlirStringRef fieldName)
 
MLIR_CAPI_EXPORTED HWStructFieldInfo hwStructTypeGetFieldNum (MlirType structType, unsigned idx)
 
MLIR_CAPI_EXPORTED intptr_t hwStructTypeGetNumFields (MlirType structType)
 
MLIR_CAPI_EXPORTED MlirType hwTypeAliasTypeGet (MlirStringRef scope, MlirStringRef name, MlirType innerType)
 
MLIR_CAPI_EXPORTED MlirType hwTypeAliasTypeGetCanonicalType (MlirType typeAlias)
 
MLIR_CAPI_EXPORTED MlirType hwTypeAliasTypeGetInnerType (MlirType typeAlias)
 
MLIR_CAPI_EXPORTED MlirStringRef hwTypeAliasTypeGetName (MlirType typeAlias)
 
MLIR_CAPI_EXPORTED MlirStringRef hwTypeAliasTypeGetScope (MlirType typeAlias)
 
MLIR_CAPI_EXPORTED bool hwAttrIsAInnerSymAttr (MlirAttribute)
 
MLIR_CAPI_EXPORTED MlirAttribute hwInnerSymAttrGet (MlirAttribute symName)
 
MLIR_CAPI_EXPORTED MlirAttribute hwInnerSymAttrGetSymName (MlirAttribute)
 
MLIR_CAPI_EXPORTED bool hwAttrIsAInnerRefAttr (MlirAttribute)
 
MLIR_CAPI_EXPORTED MlirAttribute hwInnerRefAttrGet (MlirAttribute moduleName, MlirAttribute innerSym)
 
MLIR_CAPI_EXPORTED MlirAttribute hwInnerRefAttrGetName (MlirAttribute)
 
MLIR_CAPI_EXPORTED MlirAttribute hwInnerRefAttrGetModule (MlirAttribute)
 
MLIR_CAPI_EXPORTED bool hwAttrIsAParamDeclAttr (MlirAttribute)
 
MLIR_CAPI_EXPORTED MlirAttribute hwParamDeclAttrGet (MlirStringRef name, MlirType type, MlirAttribute value)
 
MLIR_CAPI_EXPORTED MlirStringRef hwParamDeclAttrGetName (MlirAttribute decl)
 
MLIR_CAPI_EXPORTED MlirType hwParamDeclAttrGetType (MlirAttribute decl)
 
MLIR_CAPI_EXPORTED MlirAttribute hwParamDeclAttrGetValue (MlirAttribute decl)
 
MLIR_CAPI_EXPORTED bool hwAttrIsAParamDeclRefAttr (MlirAttribute)
 
MLIR_CAPI_EXPORTED MlirAttribute hwParamDeclRefAttrGet (MlirContext ctx, MlirStringRef cName)
 
MLIR_CAPI_EXPORTED MlirStringRef hwParamDeclRefAttrGetName (MlirAttribute decl)
 
MLIR_CAPI_EXPORTED MlirType hwParamDeclRefAttrGetType (MlirAttribute decl)
 
MLIR_CAPI_EXPORTED bool hwAttrIsAParamVerbatimAttr (MlirAttribute)
 
MLIR_CAPI_EXPORTED MlirAttribute hwParamVerbatimAttrGet (MlirAttribute text)
 
MLIR_CAPI_EXPORTED bool hwAttrIsAOutputFileAttr (MlirAttribute)
 
MLIR_CAPI_EXPORTED MlirAttribute hwOutputFileGetFromFileName (MlirAttribute text, bool excludeFromFileList, bool includeReplicatedOp)
 
MLIR_CAPI_EXPORTED HWInstanceGraph hwInstanceGraphGet (MlirOperation operation)
 
MLIR_CAPI_EXPORTED void hwInstanceGraphDestroy (HWInstanceGraph instanceGraph)
 
MLIR_CAPI_EXPORTED HWInstanceGraphNode hwInstanceGraphGetTopLevelNode (HWInstanceGraph instanceGraph)
 
MLIR_CAPI_EXPORTED void hwInstanceGraphForEachNode (HWInstanceGraph instanceGraph, HWInstanceGraphNodeCallback callback, void *userData)
 
MLIR_CAPI_EXPORTED bool hwInstanceGraphNodeEqual (HWInstanceGraphNode lhs, HWInstanceGraphNode rhs)
 
MLIR_CAPI_EXPORTED MlirModule hwInstanceGraphNodeGetModule (HWInstanceGraphNode node)
 
MLIR_CAPI_EXPORTED MlirOperation hwInstanceGraphNodeGetModuleOp (HWInstanceGraphNode node)
 

Macro Definition Documentation

◆ DEFINE_C_API_STRUCT

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

Definition at line 18 of file HW.h.

Typedef Documentation

◆ HWInstanceGraphNodeCallback

typedef void(* HWInstanceGraphNodeCallback) (HWInstanceGraphNode, void *)

Definition at line 205 of file HW.h.

◆ HWModulePort

typedef struct HWModulePort HWModulePort

Definition at line 25 of file HW.h.

◆ HWModulePortDirection

Definition at line 25 of file HW.h.

◆ HWStructFieldInfo

Definition at line 25 of file HW.h.

Enumeration Type Documentation

◆ HWModulePortDirection

Enumerator
Input 
Output 
InOut 

Definition at line 35 of file HW.h.

Function Documentation

◆ DEFINE_C_API_STRUCT() [1/2]

DEFINE_C_API_STRUCT ( HWInstanceGraph  ,
void   
)

◆ DEFINE_C_API_STRUCT() [2/2]

DEFINE_C_API_STRUCT ( HWInstanceGraphNode  ,
void   
)

◆ hwArrayTypeGet()

MLIR_CAPI_EXPORTED MlirType hwArrayTypeGet ( MlirType  element,
size_t  size 
)

Creates a fixed-size HW array type in the context associated with element.

Definition at line 42 of file HW.cpp.

References circt::calyx::direction::get(), unwrap(), and wrap().

◆ hwArrayTypeGetElementType()

MLIR_CAPI_EXPORTED MlirType hwArrayTypeGetElementType ( MlirType  type)

returns the element type of an array type

Definition at line 46 of file HW.cpp.

References unwrap(), and wrap().

◆ hwArrayTypeGetSize()

MLIR_CAPI_EXPORTED intptr_t hwArrayTypeGetSize ( MlirType  type)

returns the size of an array type

Definition at line 50 of file HW.cpp.

References unwrap().

◆ hwAttrIsAInnerRefAttr()

MLIR_CAPI_EXPORTED bool hwAttrIsAInnerRefAttr ( MlirAttribute  attr)

Definition at line 224 of file HW.cpp.

References unwrap().

◆ hwAttrIsAInnerSymAttr()

MLIR_CAPI_EXPORTED bool hwAttrIsAInnerSymAttr ( MlirAttribute  attr)

Definition at line 212 of file HW.cpp.

References unwrap().

◆ hwAttrIsAOutputFileAttr()

MLIR_CAPI_EXPORTED bool hwAttrIsAOutputFileAttr ( MlirAttribute  attr)

Definition at line 292 of file HW.cpp.

References unwrap().

◆ hwAttrIsAParamDeclAttr()

MLIR_CAPI_EXPORTED bool hwAttrIsAParamDeclAttr ( MlirAttribute  attr)

Definition at line 243 of file HW.cpp.

References unwrap().

◆ hwAttrIsAParamDeclRefAttr()

MLIR_CAPI_EXPORTED bool hwAttrIsAParamDeclRefAttr ( MlirAttribute  attr)

Definition at line 264 of file HW.cpp.

References unwrap().

◆ hwAttrIsAParamVerbatimAttr()

MLIR_CAPI_EXPORTED bool hwAttrIsAParamVerbatimAttr ( MlirAttribute  attr)

Definition at line 282 of file HW.cpp.

References unwrap().

◆ hwGetBitWidth()

MLIR_CAPI_EXPORTED int64_t hwGetBitWidth ( MlirType  type)

Return the hardware bit width of a type.

Does not reflect any encoding, padding, or storage scheme, just the bit (and wire width) of a statically-size type. Reflects the number of wires needed to transmit a value of this type. Returns -1 if the type is not known or cannot be statically computed.

Definition at line 36 of file HW.cpp.

References circt::hw::getBitWidth(), and unwrap().

◆ hwInnerRefAttrGet()

MLIR_CAPI_EXPORTED MlirAttribute hwInnerRefAttrGet ( MlirAttribute  moduleName,
MlirAttribute  innerSym 
)

Definition at line 228 of file HW.cpp.

References circt::calyx::direction::get(), unwrap(), and wrap().

◆ hwInnerRefAttrGetModule()

MLIR_CAPI_EXPORTED MlirAttribute hwInnerRefAttrGetModule ( MlirAttribute  innerRefAttr)

Definition at line 239 of file HW.cpp.

References unwrap(), and wrap().

◆ hwInnerRefAttrGetName()

MLIR_CAPI_EXPORTED MlirAttribute hwInnerRefAttrGetName ( MlirAttribute  innerRefAttr)

Definition at line 235 of file HW.cpp.

References circt::hw::instance_like_impl::getName(), unwrap(), and wrap().

◆ hwInnerSymAttrGet()

MLIR_CAPI_EXPORTED MlirAttribute hwInnerSymAttrGet ( MlirAttribute  symName)

Definition at line 216 of file HW.cpp.

References circt::calyx::direction::get(), unwrap(), and wrap().

◆ hwInnerSymAttrGetSymName()

MLIR_CAPI_EXPORTED MlirAttribute hwInnerSymAttrGetSymName ( MlirAttribute  innerSymAttr)

Definition at line 220 of file HW.cpp.

References unwrap(), and wrap().

◆ hwInOutTypeGet()

MLIR_CAPI_EXPORTED MlirType hwInOutTypeGet ( MlirType  element)

Creates an HW inout type in the context associated with element.

Definition at line 64 of file HW.cpp.

References circt::calyx::direction::get(), unwrap(), and wrap().

◆ hwInOutTypeGetElementType()

MLIR_CAPI_EXPORTED MlirType hwInOutTypeGetElementType ( MlirType  type)

Returns the element type of an inout type.

Definition at line 68 of file HW.cpp.

References unwrap(), and wrap().

◆ hwInstanceGraphDestroy()

MLIR_CAPI_EXPORTED void hwInstanceGraphDestroy ( HWInstanceGraph  instanceGraph)

Definition at line 308 of file HW.cpp.

References unwrap().

◆ hwInstanceGraphForEachNode()

MLIR_CAPI_EXPORTED void hwInstanceGraphForEachNode ( HWInstanceGraph  instanceGraph,
HWInstanceGraphNodeCallback  callback,
void *  userData 
)

Definition at line 318 of file HW.cpp.

References unwrap(), and wrap().

◆ hwInstanceGraphGet()

MLIR_CAPI_EXPORTED HWInstanceGraph hwInstanceGraphGet ( MlirOperation  operation)

Definition at line 304 of file HW.cpp.

References unwrap(), and wrap().

◆ hwInstanceGraphGetTopLevelNode()

MLIR_CAPI_EXPORTED HWInstanceGraphNode hwInstanceGraphGetTopLevelNode ( HWInstanceGraph  instanceGraph)

Definition at line 313 of file HW.cpp.

References unwrap(), and wrap().

◆ hwInstanceGraphNodeEqual()

MLIR_CAPI_EXPORTED bool hwInstanceGraphNodeEqual ( HWInstanceGraphNode  lhs,
HWInstanceGraphNode  rhs 
)

Definition at line 327 of file HW.cpp.

References unwrap().

◆ hwInstanceGraphNodeGetModule()

MLIR_CAPI_EXPORTED MlirModule hwInstanceGraphNodeGetModule ( HWInstanceGraphNode  node)

Definition at line 333 of file HW.cpp.

References unwrap(), and wrap().

◆ hwInstanceGraphNodeGetModuleOp()

MLIR_CAPI_EXPORTED MlirOperation hwInstanceGraphNodeGetModuleOp ( HWInstanceGraphNode  node)

Definition at line 338 of file HW.cpp.

References unwrap(), and wrap().

◆ hwModuleTypeGet()

MLIR_CAPI_EXPORTED MlirType hwModuleTypeGet ( MlirContext  ctx,
intptr_t  numPorts,
HWModulePort const *  ports 
)

Creates an HW module type.

Definition at line 78 of file HW.cpp.

References HWModulePort::dir, circt::calyx::direction::get(), InOut, Input, HWModulePort::name, Output, HWModulePort::type, unwrap(), and wrap().

◆ hwModuleTypeGetInputName()

MLIR_CAPI_EXPORTED MlirStringRef hwModuleTypeGetInputName ( MlirType  type,
intptr_t  index 
)

Get an HW module type's input name at a specific index.

Definition at line 114 of file HW.cpp.

References unwrap(), and wrap().

◆ hwModuleTypeGetInputType()

MLIR_CAPI_EXPORTED MlirType hwModuleTypeGetInputType ( MlirType  type,
intptr_t  index 
)

Get an HW module type's input type at a specific index.

Definition at line 110 of file HW.cpp.

References unwrap(), and wrap().

◆ hwModuleTypeGetNumInputs()

MLIR_CAPI_EXPORTED intptr_t hwModuleTypeGetNumInputs ( MlirType  type)

Get an HW module type's number of inputs.

Definition at line 106 of file HW.cpp.

References unwrap().

◆ hwModuleTypeGetNumOutputs()

MLIR_CAPI_EXPORTED intptr_t hwModuleTypeGetNumOutputs ( MlirType  type)

Get an HW module type's number of outputs.

Definition at line 118 of file HW.cpp.

References unwrap().

◆ hwModuleTypeGetOutputName()

MLIR_CAPI_EXPORTED MlirStringRef hwModuleTypeGetOutputName ( MlirType  type,
intptr_t  index 
)

Get an HW module type's output name at a specific index.

Definition at line 126 of file HW.cpp.

References unwrap(), and wrap().

◆ hwModuleTypeGetOutputType()

MLIR_CAPI_EXPORTED MlirType hwModuleTypeGetOutputType ( MlirType  type,
intptr_t  index 
)

Get an HW module type's output type at a specific index.

Definition at line 122 of file HW.cpp.

References unwrap(), and wrap().

◆ hwOutputFileGetFromFileName()

MLIR_CAPI_EXPORTED MlirAttribute hwOutputFileGetFromFileName ( MlirAttribute  text,
bool  excludeFromFileList,
bool  includeReplicatedOp 
)

Definition at line 296 of file HW.cpp.

References unwrap(), and wrap().

◆ hwParamDeclAttrGet()

MLIR_CAPI_EXPORTED MlirAttribute hwParamDeclAttrGet ( MlirStringRef  name,
MlirType  type,
MlirAttribute  value 
)

Definition at line 246 of file HW.cpp.

References circt::calyx::direction::get(), unwrap(), and wrap().

◆ hwParamDeclAttrGetName()

MLIR_CAPI_EXPORTED MlirStringRef hwParamDeclAttrGetName ( MlirAttribute  decl)

Definition at line 254 of file HW.cpp.

References circt::hw::instance_like_impl::getName(), unwrap(), and wrap().

◆ hwParamDeclAttrGetType()

MLIR_CAPI_EXPORTED MlirType hwParamDeclAttrGetType ( MlirAttribute  decl)

Definition at line 257 of file HW.cpp.

References unwrap(), and wrap().

◆ hwParamDeclAttrGetValue()

MLIR_CAPI_EXPORTED MlirAttribute hwParamDeclAttrGetValue ( MlirAttribute  decl)

Definition at line 260 of file HW.cpp.

References unwrap(), and wrap().

◆ hwParamDeclRefAttrGet()

MLIR_CAPI_EXPORTED MlirAttribute hwParamDeclRefAttrGet ( MlirContext  ctx,
MlirStringRef  cName 
)

Definition at line 268 of file HW.cpp.

References circt::calyx::direction::get(), unwrap(), and wrap().

◆ hwParamDeclRefAttrGetName()

MLIR_CAPI_EXPORTED MlirStringRef hwParamDeclRefAttrGetName ( MlirAttribute  decl)

Definition at line 275 of file HW.cpp.

References circt::hw::instance_like_impl::getName(), unwrap(), and wrap().

◆ hwParamDeclRefAttrGetType()

MLIR_CAPI_EXPORTED MlirType hwParamDeclRefAttrGetType ( MlirAttribute  decl)

Definition at line 278 of file HW.cpp.

References unwrap(), and wrap().

◆ hwParamIntTypeGet()

MLIR_CAPI_EXPORTED MlirType hwParamIntTypeGet ( MlirAttribute  parameter)

Definition at line 56 of file HW.cpp.

References circt::calyx::direction::get(), unwrap(), and wrap().

◆ hwParamIntTypeGetWidthAttr()

MLIR_CAPI_EXPORTED MlirAttribute hwParamIntTypeGetWidthAttr ( MlirType  type)

Definition at line 60 of file HW.cpp.

References circt::esi::detail::getWidth(), unwrap(), and wrap().

◆ hwParamVerbatimAttrGet()

MLIR_CAPI_EXPORTED MlirAttribute hwParamVerbatimAttrGet ( MlirAttribute  text)

Definition at line 285 of file HW.cpp.

References circt::calyx::direction::get(), unwrap(), and wrap().

◆ hwStructTypeGet()

MLIR_CAPI_EXPORTED MlirType hwStructTypeGet ( MlirContext  ctx,
intptr_t  numElements,
HWStructFieldInfo const *  elements 
)

Creates an HW struct type in the context associated with the elements.

Definition at line 134 of file HW.cpp.

References circt::calyx::direction::get(), numElements, unwrap(), and wrap().

◆ hwStructTypeGetField()

MLIR_CAPI_EXPORTED MlirType hwStructTypeGetField ( MlirType  structType,
MlirStringRef  fieldName 
)

Definition at line 145 of file HW.cpp.

References unwrap(), and wrap().

◆ hwStructTypeGetFieldIndex()

MLIR_CAPI_EXPORTED MlirAttribute hwStructTypeGetFieldIndex ( MlirType  structType,
MlirStringRef  fieldName 
)

Definition at line 150 of file HW.cpp.

References circt::calyx::direction::get(), unwrap(), and wrap().

◆ hwStructTypeGetFieldNum()

MLIR_CAPI_EXPORTED HWStructFieldInfo hwStructTypeGetFieldNum ( MlirType  structType,
unsigned  idx 
)

Definition at line 163 of file HW.cpp.

References HWStructFieldInfo::name, HWStructFieldInfo::type, unwrap(), and wrap().

◆ hwStructTypeGetNumFields()

MLIR_CAPI_EXPORTED intptr_t hwStructTypeGetNumFields ( MlirType  structType)

Definition at line 158 of file HW.cpp.

References unwrap().

◆ hwTypeAliasTypeGet()

MLIR_CAPI_EXPORTED MlirType hwTypeAliasTypeGet ( MlirStringRef  scope,
MlirStringRef  name,
MlirType  innerType 
)

Definition at line 176 of file HW.cpp.

References circt::calyx::direction::get(), circt::esi::innerType(), unwrap(), and wrap().

◆ hwTypeAliasTypeGetCanonicalType()

MLIR_CAPI_EXPORTED MlirType hwTypeAliasTypeGetCanonicalType ( MlirType  typeAlias)

Definition at line 188 of file HW.cpp.

References unwrap(), and wrap().

◆ hwTypeAliasTypeGetInnerType()

MLIR_CAPI_EXPORTED MlirType hwTypeAliasTypeGetInnerType ( MlirType  typeAlias)

Definition at line 193 of file HW.cpp.

References unwrap(), and wrap().

◆ hwTypeAliasTypeGetName()

MLIR_CAPI_EXPORTED MlirStringRef hwTypeAliasTypeGetName ( MlirType  typeAlias)

Definition at line 198 of file HW.cpp.

References unwrap(), and wrap().

◆ hwTypeAliasTypeGetScope()

MLIR_CAPI_EXPORTED MlirStringRef hwTypeAliasTypeGetScope ( MlirType  typeAlias)

Definition at line 203 of file HW.cpp.

References unwrap(), and wrap().

◆ hwTypeIsAArrayType()

MLIR_CAPI_EXPORTED bool hwTypeIsAArrayType ( MlirType  type)

If the type is an HW array.

Definition at line 40 of file HW.cpp.

References unwrap().

◆ hwTypeIsAInOut()

MLIR_CAPI_EXPORTED bool hwTypeIsAInOut ( MlirType  type)

If the type is an HW inout.

Definition at line 72 of file HW.cpp.

References unwrap().

◆ hwTypeIsAIntType()

MLIR_CAPI_EXPORTED bool hwTypeIsAIntType ( MlirType  type)

If the type is an HW int.

Definition at line 54 of file HW.cpp.

References unwrap().

◆ hwTypeIsAModuleType()

MLIR_CAPI_EXPORTED bool hwTypeIsAModuleType ( MlirType  type)

If the type is an HW module type.

Definition at line 74 of file HW.cpp.

References unwrap().

◆ hwTypeIsAStructType()

MLIR_CAPI_EXPORTED bool hwTypeIsAStructType ( MlirType  type)

If the type is an HW struct.

Definition at line 130 of file HW.cpp.

References unwrap().

◆ hwTypeIsATypeAliasType()

MLIR_CAPI_EXPORTED bool hwTypeIsATypeAliasType ( MlirType  type)

If the type is an HW type alias.

Definition at line 172 of file HW.cpp.

References unwrap().

◆ hwTypeIsAValueType()

MLIR_CAPI_EXPORTED bool hwTypeIsAValueType ( MlirType  type)

Return true if the specified type can be used as an HW value type, that is the set of types that can be composed together to represent synthesized, hardware but not marker types like InOutType or unknown types from other dialects.

Definition at line 38 of file HW.cpp.

References circt::hw::isHWValueType(), and unwrap().

◆ MLIR_DECLARE_CAPI_DIALECT_REGISTRATION()

MLIR_DECLARE_CAPI_DIALECT_REGISTRATION ( HW  ,
hw   
)