mirror of https://github.com/YosysHQ/abc.git
Fixing a non-reproducibility issue in "lutmin".
This commit is contained in:
parent
b1c73c160c
commit
6534475fa1
|
|
@ -1083,8 +1083,10 @@ Abc_Obj_t * Abc_NtkBddDecompose( Abc_Ntk_t * pNtkNew, Abc_Obj_t * pNode, int nLu
|
||||||
}
|
}
|
||||||
// cofactor w.r.t. the bound set variables
|
// cofactor w.r.t. the bound set variables
|
||||||
vCofs = Abc_NtkBddCofactors( dd, (DdNode *)pNode->pData, nLutSize );
|
vCofs = Abc_NtkBddCofactors( dd, (DdNode *)pNode->pData, nLutSize );
|
||||||
vUniq = Vec_PtrDup( vCofs );
|
// collect unique cofactors in the order they appear
|
||||||
Vec_PtrUniqify( vUniq, (int (*)(const void *, const void *))Vec_PtrSortCompare );
|
vUniq = Vec_PtrAlloc( Vec_PtrSize(vCofs) );
|
||||||
|
Vec_PtrForEachEntry( DdNode *, vCofs, bCof, i )
|
||||||
|
Vec_PtrPushUnique( vUniq, bCof );
|
||||||
// only perform decomposition which it is support reducing with two less vars
|
// only perform decomposition which it is support reducing with two less vars
|
||||||
if( Vec_PtrSize(vUniq) > (1 << (nLutSize-2)) )
|
if( Vec_PtrSize(vUniq) > (1 << (nLutSize-2)) )
|
||||||
{
|
{
|
||||||
|
|
@ -1257,4 +1259,3 @@ void Abc_NtkBddDecExplore( Abc_Obj_t * pNode ) {}
|
||||||
|
|
||||||
|
|
||||||
ABC_NAMESPACE_IMPL_END
|
ABC_NAMESPACE_IMPL_END
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue