summaryrefslogtreecommitdiffstats
path: root/src/base
diff options
context:
space:
mode:
authorAlan Mishchenko <alanmi@berkeley.edu>2013-05-24 22:35:22 -0700
committerAlan Mishchenko <alanmi@berkeley.edu>2013-05-24 22:35:22 -0700
commitd5234332fb29b7b50220df6a09d913d6832a425c (patch)
treee53657c8789830bee75166c61df9eee3f97d06d3 /src/base
parent283abd4795bd5c45d7dc51abd2e097a1794bad5d (diff)
downloadabc-d5234332fb29b7b50220df6a09d913d6832a425c.tar.gz
abc-d5234332fb29b7b50220df6a09d913d6832a425c.tar.bz2
abc-d5234332fb29b7b50220df6a09d913d6832a425c.zip
New MFS package.
Diffstat (limited to 'src/base')
-rw-r--r--src/base/abci/abcMfs.c9
-rw-r--r--src/base/io/io.c8
2 files changed, 11 insertions, 6 deletions
diff --git a/src/base/abci/abcMfs.c b/src/base/abci/abcMfs.c
index ddc91467..5259ea03 100644
--- a/src/base/abci/abcMfs.c
+++ b/src/base/abci/abcMfs.c
@@ -134,6 +134,11 @@ void Abc_NtkInsertMfs( Abc_Ntk_t * pNtk, Sfm_Ntk_t * p )
if ( pNode->iTemp > 0 && !Sfm_NodeReadFixed(p, pNode->iTemp) )
{
vArray = Sfm_NodeReadFanins( p, pNode->iTemp );
+ if ( Vec_IntSize(vArray) == 0 )
+ {
+ Abc_NtkDeleteObj( pNode );
+ continue;
+ }
Vec_IntForEachEntry( vArray, Fanin, k )
Abc_ObjAddFanin( pNode, Abc_NtkObj(pNtk, Vec_IntEntry(vMap, Fanin)) );
pNode->pData = Abc_SopCreateFromTruth( (Mem_Flex_t *)pNtk->pManFunc, Vec_IntSize(vArray), (unsigned *)Sfm_NodeReadTruth(p, pNode->iTemp) );
@@ -170,11 +175,11 @@ int Abc_NtkPerformMfs( Abc_Ntk_t * pNtk, Sfm_Par_t * pPars )
nNodes = Sfm_NtkPerform( p, pPars );
// call the fast extract procedure
if ( nNodes == 0 )
- Abc_Print( 1, "The networks is not changed by \"mfs\".\n" );
+ Abc_Print( 1, "The network is not changed by \"mfs\".\n" );
else
{
Abc_NtkInsertMfs( pNtk, p );
- Abc_Print( 1, "The networks has %d nodes changed by \"mfs\".\n", nNodes );
+ Abc_Print( 1, "The network has %d nodes changed by \"mfs\".\n", nNodes );
}
Sfm_NtkFree( p );
return 1;
diff --git a/src/base/io/io.c b/src/base/io/io.c
index 9dee37a7..b472dac5 100644
--- a/src/base/io/io.c
+++ b/src/base/io/io.c
@@ -2663,22 +2663,22 @@ int IoCommandWriteTruth( Abc_Frame_t * pAbc, int argc, char **argv )
}
if ( pAbc->pNtkCur == NULL )
{
- printf( "Current networks is not available.\n" );
+ printf( "Current network is not available.\n" );
return 0;
}
if ( !Abc_NtkIsLogic(pNtk) )
{
- printf( "Current networks should not an AIG. Run \"logic\".\n" );
+ printf( "Current network should not an AIG. Run \"logic\".\n" );
return 0;
}
if ( Abc_NtkPoNum(pNtk) != 1 )
{
- printf( "Current networks should have exactly one primary output.\n" );
+ printf( "Current network should have exactly one primary output.\n" );
return 0;
}
if ( Abc_NtkNodeNum(pNtk) != 1 )
{
- printf( "Current networks should have exactly one node.\n" );
+ printf( "Current network should have exactly one node.\n" );
return 0;
}
pNode = Abc_ObjFanin0( Abc_NtkPo(pNtk, 0) );