diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2013-07-15 15:22:05 -0700 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2013-07-15 15:22:05 -0700 |
commit | f8f37d261bfb513a804078bba396f7b040024ff7 (patch) | |
tree | d76d9d2ca3df6d81f30b75bdf4483520de7897b5 /src/base/abci/abc.c | |
parent | a06234e87a32b9a33c1b95abb95aa4601f2b7920 (diff) | |
download | abc-f8f37d261bfb513a804078bba396f7b040024ff7.tar.gz abc-f8f37d261bfb513a804078bba396f7b040024ff7.tar.bz2 abc-f8f37d261bfb513a804078bba396f7b040024ff7.zip |
New technology mapper.
Diffstat (limited to 'src/base/abci/abc.c')
-rw-r--r-- | src/base/abci/abc.c | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/base/abci/abc.c b/src/base/abci/abc.c index d942e41b..73e96054 100644 --- a/src/base/abci/abc.c +++ b/src/base/abci/abc.c @@ -29522,7 +29522,7 @@ int Abc_CommandAbc9If2( Abc_Frame_t * pAbc, int argc, char ** argv ) // set defaults Mpm_ManSetParsDefault( pPars ); Extra_UtilGetoptReset(); - while ( ( c = Extra_UtilGetopt( argc, argv, "KDtmzrcuvwh" ) ) != EOF ) + while ( ( c = Extra_UtilGetopt( argc, argv, "KCDtmzrcuvwh" ) ) != EOF ) { switch ( c ) { @@ -29542,6 +29542,17 @@ int Abc_CommandAbc9If2( Abc_Frame_t * pAbc, int argc, char ** argv ) assert( pPars->pLib == NULL ); pPars->pLib = Mpm_LibLutSetSimple( nLutSize ); break; + case 'C': + if ( globalUtilOptind >= argc ) + { + Abc_Print( -1, "Command line switch \"-C\" should be followed by a positive integer.\n" ); + goto usage; + } + pPars->nNumCuts = atoi(argv[globalUtilOptind]); + globalUtilOptind++; + if ( pPars->nNumCuts < 0 ) + goto usage; + break; case 'D': if ( globalUtilOptind >= argc ) { @@ -29605,9 +29616,10 @@ usage: sprintf(Buffer, "best possible" ); else sprintf(Buffer, "%d", pPars->DelayTarget ); - Abc_Print( -2, "usage: &if2 [-KD num] [-tmzrcuvwh]\n" ); + Abc_Print( -2, "usage: &if2 [-KCD num] [-tmzrcuvwh]\n" ); Abc_Print( -2, "\t performs technology mapping of the network\n" ); Abc_Print( -2, "\t-K num : sets the LUT size for the mapping [default = %d]\n", nLutSize ); + Abc_Print( -2, "\t-C num : the max number of priority cuts (0 < num < 2^12) [default = %d]\n", pPars->nNumCuts ); Abc_Print( -2, "\t-D num : sets the delay constraint for the mapping [default = %s]\n", Buffer ); Abc_Print( -2, "\t-t : enables using AND/XOR/MUX nodes instead of simple AIG [default = %s]\n", pPars->fUseGates? "yes": "no" ); Abc_Print( -2, "\t-m : enables cut minimization by removing vacuous variables [default = %s]\n", pPars->fCutMin? "yes": "no" ); |