summaryrefslogtreecommitdiffstats
path: root/src/base
diff options
context:
space:
mode:
authorAlan Mishchenko <alanmi@berkeley.edu>2013-08-06 22:51:39 -0700
committerAlan Mishchenko <alanmi@berkeley.edu>2013-08-06 22:51:39 -0700
commit8576e4b4400da0a652b120dfcf7ba8e966e576aa (patch)
tree1519765bfbdccc42d565e27c6cab1fd28d2475d9 /src/base
parent7a6f335ea6c4be27479b94ac68fca57e813acd7c (diff)
downloadabc-8576e4b4400da0a652b120dfcf7ba8e966e576aa.tar.gz
abc-8576e4b4400da0a652b120dfcf7ba8e966e576aa.tar.bz2
abc-8576e4b4400da0a652b120dfcf7ba8e966e576aa.zip
Improvements to buffering and sizing.
Diffstat (limited to 'src/base')
-rw-r--r--src/base/abc/abc.h1
-rw-r--r--src/base/abc/abcNtk.c7
2 files changed, 8 insertions, 0 deletions
diff --git a/src/base/abc/abc.h b/src/base/abc/abc.h
index a9178f38..d5f55b64 100644
--- a/src/base/abc/abc.h
+++ b/src/base/abc/abc.h
@@ -205,6 +205,7 @@ struct Abc_Ntk_t_
void * pData; // misc
Abc_Ntk_t * pCopy; // copy of this network
Vec_Int_t * vPhases; // fanins phases in the mapped netlist
+ char * pWLoadUsed; // wire load model used
float * pLutTimes; // arrivals/requireds/slacks using LUT-delay model
Vec_Ptr_t * vOnehots; // names of one-hot-encoded registers
Vec_Int_t * vObjPerm; // permutation saved
diff --git a/src/base/abc/abcNtk.c b/src/base/abc/abcNtk.c
index 1c85efc8..39a3c9af 100644
--- a/src/base/abc/abcNtk.c
+++ b/src/base/abc/abcNtk.c
@@ -325,6 +325,8 @@ void Abc_NtkFinalize( Abc_Ntk_t * pNtk, Abc_Ntk_t * pNtkNew )
Abc_NtkTimeInitialize( pNtkNew, pNtk );
if ( pNtk->vPhases )
Abc_NtkTransferPhases( pNtkNew, pNtk );
+ if ( pNtk->pWLoadUsed )
+ pNtkNew->pWLoadUsed = Abc_UtilStrsav( pNtk->pWLoadUsed );
}
/**Function*************************************************************
@@ -482,6 +484,8 @@ Abc_Ntk_t * Abc_NtkDup( Abc_Ntk_t * pNtk )
Abc_NtkTimeInitialize( pNtkNew, pNtk );
if ( pNtk->vPhases )
Abc_NtkTransferPhases( pNtkNew, pNtk );
+ if ( pNtk->pWLoadUsed )
+ pNtkNew->pWLoadUsed = Abc_UtilStrsav( pNtk->pWLoadUsed );
// check correctness
if ( !Abc_NtkCheck( pNtkNew ) )
fprintf( stdout, "Abc_NtkDup(): Network check has failed.\n" );
@@ -520,6 +524,8 @@ Abc_Ntk_t * Abc_NtkDupDfs( Abc_Ntk_t * pNtk )
Abc_NtkTimeInitialize( pNtkNew, pNtk );
if ( pNtk->vPhases )
Abc_NtkTransferPhases( pNtkNew, pNtk );
+ if ( pNtk->pWLoadUsed )
+ pNtkNew->pWLoadUsed = Abc_UtilStrsav( pNtk->pWLoadUsed );
// check correctness
if ( !Abc_NtkCheck( pNtkNew ) )
fprintf( stdout, "Abc_NtkDup(): Network check has failed.\n" );
@@ -1346,6 +1352,7 @@ void Abc_NtkDelete( Abc_Ntk_t * pNtk )
Vec_AttFree( (Vec_Att_t *)pAttrMan, 1 );
}
Vec_PtrFree( pNtk->vAttrs );
+ ABC_FREE( pNtk->pWLoadUsed );
ABC_FREE( pNtk->pName );
ABC_FREE( pNtk->pSpec );
ABC_FREE( pNtk->pLutTimes );