diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2013-08-02 23:23:45 -0700 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2013-08-02 23:23:45 -0700 |
commit | 56a233be9121ad746889d0d8556d8f60d1092e3d (patch) | |
tree | 77a12979c8553d58800969c6162654c7f8b362be /src/map/scl/scl.c | |
parent | f1615dccd5a69fa0a6fc4f6b55291fd436341dde (diff) | |
download | abc-56a233be9121ad746889d0d8556d8f60d1092e3d.tar.gz abc-56a233be9121ad746889d0d8556d8f60d1092e3d.tar.bz2 abc-56a233be9121ad746889d0d8556d8f60d1092e3d.zip |
Adding switch 'buffer -p' to enable buffing of the primary inputs.
Diffstat (limited to 'src/map/scl/scl.c')
-rw-r--r-- | src/map/scl/scl.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/src/map/scl/scl.c b/src/map/scl/scl.c index 49d07a04..7bab7abc 100644 --- a/src/map/scl/scl.c +++ b/src/map/scl/scl.c @@ -558,15 +558,16 @@ int Scl_CommandBuffer( Abc_Frame_t * pAbc, int argc, char ** argv ) { Abc_Ntk_t * pNtk = Abc_FrameReadNtk(pAbc); Abc_Ntk_t * pNtkRes; - int FanMin, FanMax, fUseInvs; + int FanMin, FanMax, fUseInvs, fBufPis; int c, fVerbose; int fOldAlgo = 0; FanMin = 6; FanMax = 14; fUseInvs = 0; + fBufPis = 0; fVerbose = 0; Extra_UtilGetoptReset(); - while ( ( c = Extra_UtilGetopt( argc, argv, "NMaivh" ) ) != EOF ) + while ( ( c = Extra_UtilGetopt( argc, argv, "NMaipvh" ) ) != EOF ) { switch ( c ) { @@ -598,6 +599,9 @@ int Scl_CommandBuffer( Abc_Frame_t * pAbc, int argc, char ** argv ) case 'i': fUseInvs ^= 1; break; + case 'p': + fBufPis ^= 1; + break; case 'v': fVerbose ^= 1; break; @@ -623,7 +627,7 @@ int Scl_CommandBuffer( Abc_Frame_t * pAbc, int argc, char ** argv ) if ( fOldAlgo ) pNtkRes = Abc_SclPerformBuffering( pNtk, FanMax, fUseInvs, fVerbose ); else - pNtkRes = Abc_SclBufPerform( pNtk, FanMin, FanMax, fVerbose ); + pNtkRes = Abc_SclBufPerform( pNtk, FanMin, FanMax, fBufPis, fVerbose ); if ( pNtkRes == NULL ) { Abc_Print( -1, "The command has failed.\n" ); @@ -634,12 +638,13 @@ int Scl_CommandBuffer( Abc_Frame_t * pAbc, int argc, char ** argv ) return 0; usage: - fprintf( pAbc->Err, "usage: buffer [-NM num] [-aivh]\n" ); + fprintf( pAbc->Err, "usage: buffer [-NM num] [-aipvh]\n" ); fprintf( pAbc->Err, "\t performs buffering of the mapped network\n" ); fprintf( pAbc->Err, "\t-N <num> : the min fanout considered by the algorithm [default = %d]\n", FanMin ); fprintf( pAbc->Err, "\t-M <num> : the max allowed fanout count of node/buffer [default = %d]\n", FanMax ); fprintf( pAbc->Err, "\t-a : toggle using old algorithm [default = %s]\n", fOldAlgo? "yes": "no" ); fprintf( pAbc->Err, "\t-i : toggle using interters instead of buffers [default = %s]\n", fUseInvs? "yes": "no" ); + fprintf( pAbc->Err, "\t-p : toggle buffering primary inputs [default = %s]\n", fBufPis? "yes": "no" ); fprintf( pAbc->Err, "\t-v : toggle printing verbose information [default = %s]\n", fVerbose? "yes": "no" ); fprintf( pAbc->Err, "\t-h : print the command usage\n"); return 1; |