|
CIRCT 22.0.0git
|
#include "mlir-c/IR.h"#include "mlir-c/Pass.h"

Go to the source code of this file.
Classes | |
| struct | CirctMSFTPrimitiveDB |
| struct | CirctMSFTPlacementDB |
| struct | CirctMSFTWalkOrder |
Typedefs | |
| typedef int32_t | CirctMSFTPrimitiveType |
| typedef void(* | CirctMSFTPlacementCallback) (MlirAttribute loc, MlirOperation locOp, void *userData) |
Enumerations | |
| enum | CirctMSFTDirection { NONE = 0 , ASC = 1 , DESC = 2 } |
Functions | |
| MLIR_DECLARE_CAPI_DIALECT_REGISTRATION (MSFT, msft) | |
| MLIR_CAPI_EXPORTED void | mlirMSFTRegisterPasses (void) |
| MLIR_CAPI_EXPORTED void | circtMSFTReplaceAllUsesWith (MlirValue value, MlirValue newValue) |
| MLIR_CAPI_EXPORTED bool | circtMSFTAttributeIsAPhysLocationAttribute (MlirAttribute) |
| MLIR_CAPI_EXPORTED MlirAttribute | circtMSFTPhysLocationAttrGet (MlirContext, CirctMSFTPrimitiveType, uint64_t x, uint64_t y, uint64_t num) |
| MLIR_CAPI_EXPORTED CirctMSFTPrimitiveType | circtMSFTPhysLocationAttrGetPrimitiveType (MlirAttribute) |
| MLIR_CAPI_EXPORTED uint64_t | circtMSFTPhysLocationAttrGetX (MlirAttribute) |
| MLIR_CAPI_EXPORTED uint64_t | circtMSFTPhysLocationAttrGetY (MlirAttribute) |
| MLIR_CAPI_EXPORTED uint64_t | circtMSFTPhysLocationAttrGetNum (MlirAttribute) |
| MLIR_CAPI_EXPORTED MlirOperation | circtMSFTGetInstance (MlirOperation root, MlirAttribute path) |
| MLIR_CAPI_EXPORTED bool | circtMSFTAttributeIsAPhysicalBoundsAttr (MlirAttribute) |
| MLIR_CAPI_EXPORTED MlirAttribute | circtMSFTPhysicalBoundsAttrGet (MlirContext, uint64_t, uint64_t, uint64_t, uint64_t) |
| MLIR_CAPI_EXPORTED bool | circtMSFTAttributeIsALocationVectorAttribute (MlirAttribute) |
| MLIR_CAPI_EXPORTED MlirAttribute | circtMSFTLocationVectorAttrGet (MlirContext, MlirType type, intptr_t numElements, MlirAttribute const *elements) |
| MLIR_CAPI_EXPORTED MlirType | circtMSFTLocationVectorAttrGetType (MlirAttribute) |
| MLIR_CAPI_EXPORTED intptr_t | circtMSFTLocationVectorAttrGetNumElements (MlirAttribute) |
| MLIR_CAPI_EXPORTED MlirAttribute | circtMSFTLocationVectorAttrGetElement (MlirAttribute attr, intptr_t pos) |
| MLIR_CAPI_EXPORTED CirctMSFTPrimitiveDB | circtMSFTCreatePrimitiveDB (MlirContext) |
| MLIR_CAPI_EXPORTED void | circtMSFTDeletePrimitiveDB (CirctMSFTPrimitiveDB self) |
| MLIR_CAPI_EXPORTED MlirLogicalResult | circtMSFTPrimitiveDBAddPrimitive (CirctMSFTPrimitiveDB, MlirAttribute locAndPrim) |
| MLIR_CAPI_EXPORTED bool | circtMSFTPrimitiveDBIsValidLocation (CirctMSFTPrimitiveDB, MlirAttribute locAndPrim) |
| MLIR_CAPI_EXPORTED CirctMSFTPlacementDB | circtMSFTCreatePlacementDB (MlirModule top, CirctMSFTPrimitiveDB seed) |
| MLIR_CAPI_EXPORTED void | circtMSFTDeletePlacementDB (CirctMSFTPlacementDB self) |
| MLIR_CAPI_EXPORTED MlirOperation | circtMSFTPlacementDBPlace (CirctMSFTPlacementDB, MlirOperation inst, MlirAttribute loc, MlirStringRef subpath, MlirLocation srcLoc) |
| MLIR_CAPI_EXPORTED void | circtMSFTPlacementDBRemovePlacement (CirctMSFTPlacementDB, MlirOperation locOp) |
| MLIR_CAPI_EXPORTED MlirLogicalResult | circtMSFTPlacementDBMovePlacement (CirctMSFTPlacementDB, MlirOperation locOp, MlirAttribute newLoc) |
| MLIR_CAPI_EXPORTED MlirOperation | circtMSFTPlacementDBGetInstanceAt (CirctMSFTPlacementDB, MlirAttribute loc) |
| MLIR_CAPI_EXPORTED MlirAttribute | circtMSFTPlacementDBGetNearestFreeInColumn (CirctMSFTPlacementDB, CirctMSFTPrimitiveType prim, uint64_t column, uint64_t nearestToY) |
| MLIR_CAPI_EXPORTED void | circtMSFTPlacementDBWalkPlacements (CirctMSFTPlacementDB, CirctMSFTPlacementCallback, int64_t bounds[4], CirctMSFTPrimitiveType primTypeFilter, CirctMSFTWalkOrder walkOrder, void *userData) |
| Walk all the placements within 'bounds' ([xmin, xmax, ymin, ymax], inclusive on all sides), with -1 meaning unbounded. | |
| typedef void(* CirctMSFTPlacementCallback) (MlirAttribute loc, MlirOperation locOp, void *userData) |
| typedef int32_t CirctMSFTPrimitiveType |
| enum CirctMSFTDirection |
| MLIR_CAPI_EXPORTED bool circtMSFTAttributeIsALocationVectorAttribute | ( | MlirAttribute | attr | ) |
| MLIR_CAPI_EXPORTED bool circtMSFTAttributeIsAPhysicalBoundsAttr | ( | MlirAttribute | attr | ) |
| MLIR_CAPI_EXPORTED bool circtMSFTAttributeIsAPhysLocationAttribute | ( | MlirAttribute | attr | ) |
| MLIR_CAPI_EXPORTED CirctMSFTPlacementDB circtMSFTCreatePlacementDB | ( | MlirModule | top, |
| CirctMSFTPrimitiveDB | seed | ||
| ) |
Definition at line 70 of file MSFT.cpp.
References unwrap(), and wrap().
Referenced by PlacementDB::PlacementDB().
| MLIR_CAPI_EXPORTED CirctMSFTPrimitiveDB circtMSFTCreatePrimitiveDB | ( | MlirContext | ctxt | ) |
Definition at line 47 of file MSFT.cpp.
References unwrap(), and wrap().
Referenced by PrimitiveDB::PrimitiveDB().
| MLIR_CAPI_EXPORTED void circtMSFTDeletePlacementDB | ( | CirctMSFTPlacementDB | self | ) |
Definition at line 76 of file MSFT.cpp.
References unwrap().
Referenced by PlacementDB::~PlacementDB().
| MLIR_CAPI_EXPORTED void circtMSFTDeletePrimitiveDB | ( | CirctMSFTPrimitiveDB | self | ) |
Definition at line 50 of file MSFT.cpp.
References unwrap().
Referenced by PrimitiveDB::~PrimitiveDB().
| MLIR_CAPI_EXPORTED MlirOperation circtMSFTGetInstance | ( | MlirOperation | root, |
| MlirAttribute | path | ||
| ) |
| MLIR_CAPI_EXPORTED MlirAttribute circtMSFTLocationVectorAttrGet | ( | MlirContext | ctxt, |
| MlirType | type, | ||
| intptr_t | numElements, | ||
| MlirAttribute const * | elements | ||
| ) |
Definition at line 216 of file MSFT.cpp.
References numElements, unwrap(), and wrap().
| MLIR_CAPI_EXPORTED MlirAttribute circtMSFTLocationVectorAttrGetElement | ( | MlirAttribute | attr, |
| intptr_t | pos | ||
| ) |
Definition at line 234 of file MSFT.cpp.
References unwrap(), and wrap().
Referenced by PyLocationVecIterator::getItem().
| MLIR_CAPI_EXPORTED intptr_t circtMSFTLocationVectorAttrGetNumElements | ( | MlirAttribute | attr | ) |
Definition at line 231 of file MSFT.cpp.
References unwrap().
Referenced by PyLocationVecIterator::dunderNext().
| MLIR_CAPI_EXPORTED MlirType circtMSFTLocationVectorAttrGetType | ( | MlirAttribute | attr | ) |
| MLIR_CAPI_EXPORTED MlirAttribute circtMSFTPhysicalBoundsAttrGet | ( | MlirContext | cContext, |
| uint64_t | xMin, | ||
| uint64_t | xMax, | ||
| uint64_t | yMin, | ||
| uint64_t | yMax | ||
| ) |
| MLIR_CAPI_EXPORTED MlirAttribute circtMSFTPhysLocationAttrGet | ( | MlirContext | cCtxt, |
| CirctMSFTPrimitiveType | devType, | ||
| uint64_t | x, | ||
| uint64_t | y, | ||
| uint64_t | num | ||
| ) |
| MLIR_CAPI_EXPORTED uint64_t circtMSFTPhysLocationAttrGetNum | ( | MlirAttribute | attr | ) |
| MLIR_CAPI_EXPORTED CirctMSFTPrimitiveType circtMSFTPhysLocationAttrGetPrimitiveType | ( | MlirAttribute | attr | ) |
| MLIR_CAPI_EXPORTED uint64_t circtMSFTPhysLocationAttrGetX | ( | MlirAttribute | attr | ) |
| MLIR_CAPI_EXPORTED uint64_t circtMSFTPhysLocationAttrGetY | ( | MlirAttribute | attr | ) |
| MLIR_CAPI_EXPORTED MlirOperation circtMSFTPlacementDBGetInstanceAt | ( | CirctMSFTPlacementDB | db, |
| MlirAttribute | loc | ||
| ) |
Definition at line 117 of file MSFT.cpp.
References unwrap(), and wrap().
Referenced by PlacementDB::getInstanceAt().
| MLIR_CAPI_EXPORTED MlirAttribute circtMSFTPlacementDBGetNearestFreeInColumn | ( | CirctMSFTPlacementDB | db, |
| CirctMSFTPrimitiveType | prim, | ||
| uint64_t | column, | ||
| uint64_t | nearestToY | ||
| ) |
Definition at line 121 of file MSFT.cpp.
References unwrap(), and wrap().
Referenced by PlacementDB::getNearestFreeInColumn().
| MLIR_CAPI_EXPORTED MlirLogicalResult circtMSFTPlacementDBMovePlacement | ( | CirctMSFTPlacementDB | db, |
| MlirOperation | locOp, | ||
| MlirAttribute | newLoc | ||
| ) |
Definition at line 104 of file MSFT.cpp.
References unwrap(), and wrap().
Referenced by PlacementDB::movePlacement().
| MLIR_CAPI_EXPORTED MlirOperation circtMSFTPlacementDBPlace | ( | CirctMSFTPlacementDB | db, |
| MlirOperation | inst, | ||
| MlirAttribute | loc, | ||
| MlirStringRef | subpath, | ||
| MlirLocation | srcLoc | ||
| ) |
Definition at line 80 of file MSFT.cpp.
References unwrap(), and wrap().
Referenced by PlacementDB::place().
| MLIR_CAPI_EXPORTED void circtMSFTPlacementDBRemovePlacement | ( | CirctMSFTPlacementDB | db, |
| MlirOperation | locOp | ||
| ) |
Definition at line 94 of file MSFT.cpp.
References assert(), and unwrap().
Referenced by PlacementDB::removePlacement().
| MLIR_CAPI_EXPORTED void circtMSFTPlacementDBWalkPlacements | ( | CirctMSFTPlacementDB | cdb, |
| CirctMSFTPlacementCallback | ccb, | ||
| int64_t | bounds[4], | ||
| CirctMSFTPrimitiveType | primTypeFilter, | ||
| CirctMSFTWalkOrder | walkOrder, | ||
| void * | userData | ||
| ) |
Walk all the placements within 'bounds' ([xmin, xmax, ymin, ymax], inclusive on all sides), with -1 meaning unbounded.
Definition at line 131 of file MSFT.cpp.
References CirctMSFTWalkOrder::columns, NONE, CirctMSFTWalkOrder::rows, unwrap(), circt::msft::PlacementDB::walkPlacements(), and wrap().
Referenced by PlacementDB::walkPlacements().
| MLIR_CAPI_EXPORTED MlirLogicalResult circtMSFTPrimitiveDBAddPrimitive | ( | CirctMSFTPrimitiveDB | self, |
| MlirAttribute | locAndPrim | ||
| ) |
Definition at line 53 of file MSFT.cpp.
References unwrap(), and wrap().
Referenced by PrimitiveDB::addPrimitive().
| MLIR_CAPI_EXPORTED bool circtMSFTPrimitiveDBIsValidLocation | ( | CirctMSFTPrimitiveDB | self, |
| MlirAttribute | locAndPrim | ||
| ) |
Definition at line 58 of file MSFT.cpp.
References unwrap().
Referenced by PrimitiveDB::isValidLocation().
| MLIR_CAPI_EXPORTED void circtMSFTReplaceAllUsesWith | ( | MlirValue | value, |
| MlirValue | newValue | ||
| ) |
| MLIR_DECLARE_CAPI_DIALECT_REGISTRATION | ( | MSFT | , |
| msft | |||
| ) |
| MLIR_CAPI_EXPORTED void mlirMSFTRegisterPasses | ( | void | ) |
Definition at line 32 of file MSFT.cpp.
References registerPasses().