CIRCT  19.0.0git
Functions
ESI.cpp File Reference
#include "circt-c/Dialect/ESI.h"
#include "circt/Dialect/ESI/AppID.h"
#include "circt/Dialect/ESI/ESIServices.h"
#include "circt/Dialect/ESI/ESITypes.h"
#include "mlir/CAPI/IR.h"
#include "mlir/CAPI/Registration.h"
#include "mlir/CAPI/Support.h"
#include "mlir/CAPI/Utils.h"
#include "mlir/IR/Builders.h"
#include "mlir/IR/SymbolTable.h"
#include "mlir/Parser/Parser.h"
#include "mlir/Support/FileUtilities.h"
Include dependency graph for ESI.cpp:

Go to the source code of this file.

Functions

void registerESIPasses ()
 
bool circtESITypeIsAChannelType (MlirType type)
 
MlirType circtESIChannelTypeGet (MlirType inner, uint32_t signaling)
 
MlirType circtESIChannelGetInner (MlirType channelType)
 
uint32_t circtESIChannelGetSignaling (MlirType channelType)
 
bool circtESITypeIsAnAnyType (MlirType type)
 
MlirType circtESIAnyTypeGet (MlirContext ctxt)
 
bool circtESITypeIsAListType (MlirType type)
 
MlirType circtESIListTypeGet (MlirType inner)
 
MlirType circtESIListTypeGetElementType (MlirType list)
 
void circtESIAppendMlirFile (MlirModule cMod, MlirStringRef filename)
 
MlirOperation circtESILookup (MlirModule mod, MlirStringRef symbol)
 
void circtESIRegisterGlobalServiceGenerator (MlirStringRef impl_type, CirctESIServiceGeneratorFunc genFunc, void *userData)
 
bool circtESITypeIsABundleType (MlirType type)
 
MlirType circtESIBundleTypeGet (MlirContext cctxt, size_t numChannels, const CirctESIBundleTypeBundleChannel *channels, bool resettable)
 
bool circtESIBundleTypeGetResettable (MlirType bundle)
 
size_t circtESIBundleTypeGetNumChannels (MlirType bundle)
 
CirctESIBundleTypeBundleChannel circtESIBundleTypeGetChannel (MlirType bundle, size_t idx)
 
bool circtESIAttributeIsAnAppIDAttr (MlirAttribute attr)
 
MlirAttribute circtESIAppIDAttrGet (MlirContext ctxt, MlirStringRef name, uint64_t index)
 
MlirAttribute circtESIAppIDAttrGetNoIdx (MlirContext ctxt, MlirStringRef name)
 
MlirStringRef circtESIAppIDAttrGetName (MlirAttribute attr)
 
bool circtESIAppIDAttrGetIndex (MlirAttribute attr, uint64_t *indexOut)
 
bool circtESIAttributeIsAnAppIDPathAttr (MlirAttribute attr)
 
MlirAttribute circtESIAppIDAttrPathGet (MlirContext ctxt, MlirAttribute root, intptr_t numElements, MlirAttribute const *cElements)
 
MlirAttribute circtESIAppIDAttrPathGetRoot (MlirAttribute attr)
 
uint64_t circtESIAppIDAttrPathGetNumComponents (MlirAttribute attr)
 
MlirAttribute circtESIAppIDAttrPathGetComponent (MlirAttribute attr, uint64_t index)
 
MLIR_CAPI_EXPORTED CirctESIAppIDIndex circtESIAppIDIndexGet (MlirOperation root)
 Create an index of appids through which to do appid lookups efficiently. More...
 
MLIR_CAPI_EXPORTED void circtESIAppIDIndexFree (CirctESIAppIDIndex index)
 Free an AppIDIndex. More...
 
MLIR_CAPI_EXPORTED MlirAttribute circtESIAppIDIndexGetChildAppIDsOf (CirctESIAppIDIndex idx, MlirOperation op)
 
MLIR_CAPI_EXPORTED MlirAttribute circtESIAppIDIndexGetAppIDPath (CirctESIAppIDIndex idx, MlirOperation fromMod, MlirAttribute appid, MlirLocation loc)
 

Function Documentation

◆ circtESIAnyTypeGet()

MlirType circtESIAnyTypeGet ( MlirContext  ctxt)

Definition at line 51 of file ESI.cpp.

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

◆ circtESIAppendMlirFile()

void circtESIAppendMlirFile ( MlirModule  cMod,
MlirStringRef  filename 
)

Definition at line 68 of file ESI.cpp.

References assert(), and unwrap().

◆ circtESIAppIDAttrGet()

MlirAttribute circtESIAppIDAttrGet ( MlirContext  ctxt,
MlirStringRef  name,
uint64_t  index 
)

Definition at line 139 of file ESI.cpp.

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

◆ circtESIAppIDAttrGetIndex()

bool circtESIAppIDAttrGetIndex ( MlirAttribute  attr,
uint64_t *  indexOut 
)

Definition at line 151 of file ESI.cpp.

References unwrap().

◆ circtESIAppIDAttrGetName()

MlirStringRef circtESIAppIDAttrGetName ( MlirAttribute  attr)

Definition at line 148 of file ESI.cpp.

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

◆ circtESIAppIDAttrGetNoIdx()

MlirAttribute circtESIAppIDAttrGetNoIdx ( MlirContext  ctxt,
MlirStringRef  name 
)

Definition at line 144 of file ESI.cpp.

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

◆ circtESIAppIDAttrPathGet()

MlirAttribute circtESIAppIDAttrPathGet ( MlirContext  ctxt,
MlirAttribute  root,
intptr_t  numElements,
MlirAttribute const *  cElements 
)

◆ circtESIAppIDAttrPathGetComponent()

MlirAttribute circtESIAppIDAttrPathGetComponent ( MlirAttribute  attr,
uint64_t  index 
)

Definition at line 178 of file ESI.cpp.

References unwrap(), and wrap().

◆ circtESIAppIDAttrPathGetNumComponents()

uint64_t circtESIAppIDAttrPathGetNumComponents ( MlirAttribute  attr)

Definition at line 175 of file ESI.cpp.

References unwrap().

◆ circtESIAppIDAttrPathGetRoot()

MlirAttribute circtESIAppIDAttrPathGetRoot ( MlirAttribute  attr)

Definition at line 172 of file ESI.cpp.

References unwrap(), and wrap().

◆ circtESIAppIDIndexFree()

MLIR_CAPI_EXPORTED void circtESIAppIDIndexFree ( CirctESIAppIDIndex  index)

Free an AppIDIndex.

Definition at line 195 of file ESI.cpp.

References unwrap().

Referenced by PyAppIDIndex::~PyAppIDIndex().

◆ circtESIAppIDIndexGet()

MLIR_CAPI_EXPORTED CirctESIAppIDIndex circtESIAppIDIndexGet ( MlirOperation  root)

Create an index of appids through which to do appid lookups efficiently.

Definition at line 187 of file ESI.cpp.

References unwrap(), and wrap().

Referenced by PyAppIDIndex::PyAppIDIndex().

◆ circtESIAppIDIndexGetAppIDPath()

MLIR_CAPI_EXPORTED MlirAttribute circtESIAppIDIndexGetAppIDPath ( CirctESIAppIDIndex  idx,
MlirOperation  fromMod,
MlirAttribute  appid,
MlirLocation  loc 
)

Definition at line 206 of file ESI.cpp.

References unwrap(), and wrap().

Referenced by PyAppIDIndex::getAppIDPathAttr().

◆ circtESIAppIDIndexGetChildAppIDsOf()

MLIR_CAPI_EXPORTED MlirAttribute circtESIAppIDIndexGetChildAppIDsOf ( CirctESIAppIDIndex  idx,
MlirOperation  op 
)

Definition at line 200 of file ESI.cpp.

References unwrap(), and wrap().

Referenced by PyAppIDIndex::getChildAppIDsOf().

◆ circtESIAttributeIsAnAppIDAttr()

bool circtESIAttributeIsAnAppIDAttr ( MlirAttribute  attr)

Definition at line 135 of file ESI.cpp.

References unwrap().

◆ circtESIAttributeIsAnAppIDPathAttr()

bool circtESIAttributeIsAnAppIDPathAttr ( MlirAttribute  attr)

Definition at line 159 of file ESI.cpp.

References unwrap().

◆ circtESIBundleTypeGet()

MlirType circtESIBundleTypeGet ( MlirContext  cctxt,
size_t  numChannels,
const CirctESIBundleTypeBundleChannel channels,
bool  resettable 
)

◆ circtESIBundleTypeGetChannel()

CirctESIBundleTypeBundleChannel circtESIBundleTypeGetChannel ( MlirType  bundle,
size_t  idx 
)

◆ circtESIBundleTypeGetNumChannels()

size_t circtESIBundleTypeGetNumChannels ( MlirType  bundle)

Definition at line 120 of file ESI.cpp.

References unwrap().

◆ circtESIBundleTypeGetResettable()

bool circtESIBundleTypeGetResettable ( MlirType  bundle)

Definition at line 117 of file ESI.cpp.

References unwrap().

◆ circtESIChannelGetInner()

MlirType circtESIChannelGetInner ( MlirType  channelType)

Definition at line 41 of file ESI.cpp.

References unwrap(), and wrap().

◆ circtESIChannelGetSignaling()

uint32_t circtESIChannelGetSignaling ( MlirType  channelType)

Definition at line 44 of file ESI.cpp.

References unwrap().

◆ circtESIChannelTypeGet()

MlirType circtESIChannelTypeGet ( MlirType  inner,
uint32_t  signaling 
)

Definition at line 33 of file ESI.cpp.

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

◆ circtESIListTypeGet()

MlirType circtESIListTypeGet ( MlirType  inner)

Definition at line 59 of file ESI.cpp.

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

◆ circtESIListTypeGetElementType()

MlirType circtESIListTypeGetElementType ( MlirType  list)

Definition at line 64 of file ESI.cpp.

References unwrap(), and wrap().

◆ circtESILookup()

MlirOperation circtESILookup ( MlirModule  mod,
MlirStringRef  symbol 
)

Definition at line 81 of file ESI.cpp.

References unwrap(), and wrap().

◆ circtESIRegisterGlobalServiceGenerator()

void circtESIRegisterGlobalServiceGenerator ( MlirStringRef  impl_type,
CirctESIServiceGeneratorFunc  genFunc,
void *  userData 
)

◆ circtESITypeIsABundleType()

bool circtESITypeIsABundleType ( MlirType  type)

Definition at line 100 of file ESI.cpp.

References unwrap().

◆ circtESITypeIsAChannelType()

bool circtESITypeIsAChannelType ( MlirType  type)

Definition at line 29 of file ESI.cpp.

References unwrap().

◆ circtESITypeIsAListType()

bool circtESITypeIsAListType ( MlirType  type)

Definition at line 55 of file ESI.cpp.

References unwrap().

◆ circtESITypeIsAnAnyType()

bool circtESITypeIsAnAnyType ( MlirType  type)

Definition at line 48 of file ESI.cpp.

References unwrap().

◆ registerESIPasses()

void registerESIPasses ( void  )

Definition at line 27 of file ESI.cpp.

References circt::esi::registerESIPasses().