Disabling choices when they are computed incorrectly.

This commit is contained in:
Alan Mishchenko 2021-11-30 15:23:20 -08:00
parent f26ea1eaea
commit dfa34cc2e4
2 changed files with 9 additions and 2 deletions

View File

@ -177,7 +177,10 @@ int Abc_NtkDoCheck( Abc_Ntk_t * pNtk )
// check the nodes
if ( Abc_NtkIsStrash(pNtk) )
Abc_AigCheck( (Abc_Aig_t *)pNtk->pManFunc );
{
if ( !Abc_AigCheck( (Abc_Aig_t *)pNtk->pManFunc ) )
return 0;
}
else
{
Abc_NtkForEachNode( pNtk, pNode, i )

View File

@ -1204,7 +1204,11 @@ Abc_Ntk_t * Abc_NtkFromDarChoices( Abc_Ntk_t * pNtkOld, Aig_Man_t * pMan )
Aig_ManForEachCo( pMan, pObj, i )
Abc_ObjAddFanin( Abc_NtkCo(pNtkNew, i), (Abc_Obj_t *)Aig_ObjChild0Copy(pObj) );
if ( !Abc_NtkCheck( pNtkNew ) )
Abc_Print( 1, "Abc_NtkFromDar(): Network check has failed.\n" );
{
Abc_Print( 1, "Abc_NtkFromDar(): Network check has failed. Returning original network.\n" );
Abc_NtkDelete( pNtkNew );
pNtkNew = Abc_NtkDup( pNtkOld );
}
// verify topological order
if ( 0 )