CIRCT  20.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, uint64_t dataDelay)
 
MlirType circtESIChannelGetInner (MlirType channelType)
 
uint32_t circtESIChannelGetSignaling (MlirType channelType)
 
uint64_t circtESIChannelGetDataDelay (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 56 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 73 of file ESI.cpp.

References assert(), and unwrap().

◆ circtESIAppIDAttrGet()

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

Definition at line 144 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 156 of file ESI.cpp.

References unwrap().

◆ circtESIAppIDAttrGetName()

MlirStringRef circtESIAppIDAttrGetName ( MlirAttribute  attr)

Definition at line 153 of file ESI.cpp.

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

◆ circtESIAppIDAttrGetNoIdx()

MlirAttribute circtESIAppIDAttrGetNoIdx ( MlirContext  ctxt,
MlirStringRef  name 
)

Definition at line 149 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 183 of file ESI.cpp.

References unwrap(), and wrap().

◆ circtESIAppIDAttrPathGetNumComponents()

uint64_t circtESIAppIDAttrPathGetNumComponents ( MlirAttribute  attr)

Definition at line 180 of file ESI.cpp.

References unwrap().

◆ circtESIAppIDAttrPathGetRoot()

MlirAttribute circtESIAppIDAttrPathGetRoot ( MlirAttribute  attr)

Definition at line 177 of file ESI.cpp.

References unwrap(), and wrap().

◆ circtESIAppIDIndexFree()

MLIR_CAPI_EXPORTED void circtESIAppIDIndexFree ( CirctESIAppIDIndex  index)

Free an AppIDIndex.

Definition at line 200 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 192 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 211 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 205 of file ESI.cpp.

References unwrap(), and wrap().

Referenced by PyAppIDIndex::getChildAppIDsOf().

◆ circtESIAttributeIsAnAppIDAttr()

bool circtESIAttributeIsAnAppIDAttr ( MlirAttribute  attr)

Definition at line 140 of file ESI.cpp.

References unwrap().

◆ circtESIAttributeIsAnAppIDPathAttr()

bool circtESIAttributeIsAnAppIDPathAttr ( MlirAttribute  attr)

Definition at line 164 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 125 of file ESI.cpp.

References unwrap().

◆ circtESIBundleTypeGetResettable()

bool circtESIBundleTypeGetResettable ( MlirType  bundle)

Definition at line 122 of file ESI.cpp.

References unwrap().

◆ circtESIChannelGetDataDelay()

uint64_t circtESIChannelGetDataDelay ( MlirType  channelType)

Definition at line 49 of file ESI.cpp.

References unwrap().

◆ circtESIChannelGetInner()

MlirType circtESIChannelGetInner ( MlirType  channelType)

Definition at line 43 of file ESI.cpp.

References unwrap(), and wrap().

◆ circtESIChannelGetSignaling()

uint32_t circtESIChannelGetSignaling ( MlirType  channelType)

Definition at line 46 of file ESI.cpp.

References unwrap().

◆ circtESIChannelTypeGet()

MlirType circtESIChannelTypeGet ( MlirType  inner,
uint32_t  signaling,
uint64_t  dataDelay 
)

Definition at line 33 of file ESI.cpp.

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

◆ circtESIListTypeGet()

MlirType circtESIListTypeGet ( MlirType  inner)

Definition at line 64 of file ESI.cpp.

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

◆ circtESIListTypeGetElementType()

MlirType circtESIListTypeGetElementType ( MlirType  list)

Definition at line 69 of file ESI.cpp.

References unwrap(), and wrap().

◆ circtESILookup()

MlirOperation circtESILookup ( MlirModule  mod,
MlirStringRef  symbol 
)

Definition at line 86 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 105 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 60 of file ESI.cpp.

References unwrap().

◆ circtESITypeIsAnAnyType()

bool circtESITypeIsAnAnyType ( MlirType  type)

Definition at line 53 of file ESI.cpp.

References unwrap().

◆ registerESIPasses()

void registerESIPasses ( void  )

Definition at line 27 of file ESI.cpp.

References circt::esi::registerESIPasses().