From a8c65f134343c6795ec30f97f2903635288070c2 Mon Sep 17 00:00:00 2001 From: wjrforcyber Date: Tue, 17 Dec 2024 14:05:58 +0800 Subject: [PATCH] Fix(&put): &put bug with choices Related: #349 --- src/base/abci/abc.c | 2 +- src/base/abci/abcDar.c | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/base/abci/abc.c b/src/base/abci/abc.c index 5441eb973..6615ed33d 100644 --- a/src/base/abci/abc.c +++ b/src/base/abci/abc.c @@ -32395,7 +32395,7 @@ int Abc_CommandAbc9Put( Abc_Frame_t * pAbc, int argc, char ** argv ) else { Abc_Ntk_t * pNtkNoCh; - Abc_Print( -1, "Transforming AIG with %d choice nodes.\n", Gia_ManEquivCountClasses(pAbc->pGia) ); + Abc_Print( 0, "Transforming AIG with %d choice nodes.\n", Gia_ManEquivCountClasses(pAbc->pGia) ); // create network without choices pMan = Gia_ManToAig( pAbc->pGia, 0 ); pNtkNoCh = Abc_NtkFromAigPhase( pMan ); diff --git a/src/base/abci/abcDar.c b/src/base/abci/abcDar.c index a209143f3..d5ea77c78 100644 --- a/src/base/abci/abcDar.c +++ b/src/base/abci/abcDar.c @@ -1221,6 +1221,8 @@ Abc_Ntk_t * Abc_NtkFromDarChoices( Abc_Ntk_t * pNtkOld, Aig_Man_t * pMan ) Aig_ManForEachNode( pMan, pObj, i ) { pObj->pData = Abc_AigAnd( (Abc_Aig_t *)pNtkNew->pManFunc, (Abc_Obj_t *)Aig_ObjChild0Copy(pObj), (Abc_Obj_t *)Aig_ObjChild1Copy(pObj) ); + } + Aig_ManForEachNode( pMan, pObj, i ) { if ( (pTemp = Aig_ObjEquiv(pMan, pObj)) ) { assert( pTemp->pData != NULL );