diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2014-05-12 13:52:28 +0800 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2014-05-12 13:52:28 +0800 |
commit | b902b6843c5099f115fcf68f6567969c7233475e (patch) | |
tree | 6cf243c00bba2656bd54bfb1161a0cb5eaccdd39 /src/base | |
parent | 954ab62ce68fdd225ac82301c4e037826013bd17 (diff) | |
download | abc-b902b6843c5099f115fcf68f6567969c7233475e.tar.gz abc-b902b6843c5099f115fcf68f6567969c7233475e.tar.bz2 abc-b902b6843c5099f115fcf68f6567969c7233475e.zip |
Adding duplicator of the design manager.
Diffstat (limited to 'src/base')
-rw-r--r-- | src/base/abc/abcLib.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/base/abc/abcLib.c b/src/base/abc/abcLib.c index 788b0fe0..6623b872 100644 --- a/src/base/abc/abcLib.c +++ b/src/base/abc/abcLib.c @@ -134,12 +134,20 @@ Abc_Des_t * Abc_DesDup( Abc_Des_t * p ) { Abc_Des_t * pNew; Abc_Ntk_t * pTemp; - int i; + Abc_Obj_t * pObj; + int i, k; pNew = Abc_DesCreate( p->pName ); Vec_PtrForEachEntry( Abc_Ntk_t *, p->vModules, pTemp, i ) Abc_DesAddModel( pNew, Abc_NtkDup(pTemp) ); Vec_PtrForEachEntry( Abc_Ntk_t *, p->vTops, pTemp, i ) Vec_PtrPush( pNew->vTops, pTemp->pCopy ); + Vec_PtrForEachEntry( Abc_Ntk_t *, p->vModules, pTemp, i ) + pTemp->pCopy->pAltView = pTemp->pAltView ? pTemp->pAltView->pCopy : NULL; + // update box models + Vec_PtrForEachEntry( Abc_Ntk_t *, p->vModules, pTemp, i ) + Abc_NtkForEachBox( pTemp, pObj, k ) + if ( Abc_ObjIsWhitebox(pObj) || Abc_ObjIsBlackbox(pObj) ) + pObj->pCopy->pData = Abc_ObjModel(pObj)->pCopy; return pNew; } |