Skip to content

Commit ddb6265

Browse files
committed
Gia_ManDupPermFlop to behave as Gia_ManDupPerm
Fixes sequential synthesis (e.g. &scl) for multiple domains
1 parent afebb18 commit ddb6265

File tree

1 file changed

+7
-5
lines changed

1 file changed

+7
-5
lines changed

src/aig/gia/giaDup.c

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -855,27 +855,29 @@ Gia_Man_t * Gia_ManDupPerm( Gia_Man_t * p, Vec_Int_t * vPiPerm )
855855
}
856856
Gia_Man_t * Gia_ManDupPermFlop( Gia_Man_t * p, Vec_Int_t * vFfPerm )
857857
{
858-
Vec_Int_t * vPermInv;
858+
//Vec_Int_t * vPermInv;
859859
Gia_Man_t * pNew;
860860
Gia_Obj_t * pObj;
861861
int i;
862862
assert( Vec_IntSize(vFfPerm) == Gia_ManRegNum(p) );
863-
vPermInv = Vec_IntInvert( vFfPerm, -1 );
863+
//vPermInv = Vec_IntInvert( vFfPerm, -1 );
864864
pNew = Gia_ManStart( Gia_ManObjNum(p) );
865865
pNew->pName = Abc_UtilStrsav( p->pName );
866866
pNew->pSpec = Abc_UtilStrsav( p->pSpec );
867867
Gia_ManConst0(p)->Value = 0;
868868
Gia_ManForEachPi( p, pObj, i )
869869
pObj->Value = Gia_ManAppendCi(pNew);
870870
Gia_ManForEachRo( p, pObj, i )
871-
Gia_ManRo(p, Vec_IntEntry(vPermInv, i))->Value = Gia_ManAppendCi(pNew);
871+
//Gia_ManRo(p, Vec_IntEntry(vPermInv, i))->Value = Gia_ManAppendCi(pNew);
872+
Gia_ManRo(p, Vec_IntEntry(vFfPerm, i))->Value = Gia_ManAppendCi( pNew );
872873
Gia_ManForEachAnd( p, pObj, i )
873874
pObj->Value = Gia_ManAppendAnd( pNew, Gia_ObjFanin0Copy(pObj), Gia_ObjFanin1Copy(pObj) );
874875
Gia_ManForEachPo( p, pObj, i )
875876
pObj->Value = Gia_ManAppendCo( pNew, Gia_ObjFanin0Copy(pObj) );
876877
Gia_ManForEachRi( p, pObj, i )
877-
pObj->Value = Gia_ManAppendCo( pNew, Gia_ObjFanin0Copy( Gia_ManRi(p, Vec_IntEntry(vPermInv, i)) ) );
878-
Vec_IntFree( vPermInv );
878+
//pObj->Value = Gia_ManAppendCo( pNew, Gia_ObjFanin0Copy( Gia_ManRi(p, Vec_IntEntry(vPermInv, i)) ) );
879+
pObj->Value = Gia_ManAppendCo( pNew, Gia_ObjFanin0Copy( Gia_ManRi(p, Vec_IntEntry(vFfPerm, i)) ) );
880+
//Vec_IntFree( vPermInv );
879881
Gia_ManSetRegNum( pNew, Gia_ManRegNum(p) );
880882
return pNew;
881883
}

0 commit comments

Comments
 (0)