diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2012-08-25 19:00:26 -0700 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2012-08-25 19:00:26 -0700 |
commit | dfd6ab08234ac0cd5eec5396b87f3e57449d5253 (patch) | |
tree | 7334f8156ba998e9d7b7882bfd33bec6b7a466ec /src/map/scl/sclInt.h | |
parent | fba0552f874e6053238a9aefdced65eb2f14d26a (diff) | |
download | abc-dfd6ab08234ac0cd5eec5396b87f3e57449d5253.tar.gz abc-dfd6ab08234ac0cd5eec5396b87f3e57449d5253.tar.bz2 abc-dfd6ab08234ac0cd5eec5396b87f3e57449d5253.zip |
New package to read/write a subset of Liberty for STA.
Diffstat (limited to 'src/map/scl/sclInt.h')
-rw-r--r-- | src/map/scl/sclInt.h | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/map/scl/sclInt.h b/src/map/scl/sclInt.h index b11ebc9e..192317f7 100644 --- a/src/map/scl/sclInt.h +++ b/src/map/scl/sclInt.h @@ -159,7 +159,9 @@ struct SC_Lib_ Vec_Ptr_t * vWireLoads; // NamedSet<SC_WireLoad> Vec_Ptr_t * vWireLoadSels; // NamedSet<SC_WireLoadSel> Vec_Ptr_t * vTempls; // NamedSet<SC_TableTempl> - Vec_Ptr_t * vCells; // NamedSet<SC_Cell> + Vec_Ptr_t * vCells; // NamedSet<SC_Cell> + int * pBins; // hashing gateName -> gateId + int nBins; }; //////////////////////////////////////////////////////////////////////// @@ -170,6 +172,9 @@ struct SC_Lib_ /// MACRO DEFINITIONS /// //////////////////////////////////////////////////////////////////////// +static inline SC_Cell * SC_LibCell( SC_Lib * p, int i ) { return (SC_Cell *)Vec_PtrEntry(p->vCells, i); } +static inline SC_Pin * SC_CellPin( SC_Cell * p, int i ) { return (SC_Pin *)Vec_PtrEntry(p->vPins, i); } + //////////////////////////////////////////////////////////////////////// /// FUNCTION DEFINITIONS /// //////////////////////////////////////////////////////////////////////// @@ -351,11 +356,18 @@ static inline void Abc_SclLibFree( SC_Lib * p ) ABC_FREE( p->lib_name ); ABC_FREE( p->default_wire_load ); ABC_FREE( p->default_wire_load_sel ); + ABC_FREE( p->pBins ); ABC_FREE( p ); } -/*=== scl.c =============================================================*/ +/*=== sclFile.c =============================================================*/ +extern SC_Lib * Abc_SclRead( char * pFileName ); +extern void Abc_SclWrite( char * pFileName, SC_Lib * p ); +extern void Abc_SclWriteText( char * pFileName, SC_Lib * p ); + +extern int Abc_SclCellFind( SC_Lib * p, char * pName ); + ABC_NAMESPACE_HEADER_END |