diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2013-11-26 23:19:22 -0800 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2013-11-26 23:19:22 -0800 |
commit | ee50e84e57f70c5b7cc9d66edeef05a8de4b3f9f (patch) | |
tree | 7401e0d75e96dbe67d5ee549379e99f9bf76b2b7 /src/base | |
parent | a9eb8677fee8c32b9292b30c92cadb3882123800 (diff) | |
download | abc-ee50e84e57f70c5b7cc9d66edeef05a8de4b3f9f.tar.gz abc-ee50e84e57f70c5b7cc9d66edeef05a8de4b3f9f.tar.bz2 abc-ee50e84e57f70c5b7cc9d66edeef05a8de4b3f9f.zip |
Structural mapper into structures.
Diffstat (limited to 'src/base')
-rw-r--r-- | src/base/abci/abc.c | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/src/base/abci/abc.c b/src/base/abci/abc.c index 9aec050b..7683d313 100644 --- a/src/base/abci/abc.c +++ b/src/base/abci/abc.c @@ -29833,7 +29833,7 @@ int Abc_CommandAbc9If( Abc_Frame_t * pAbc, int argc, char ** argv ) } pPars->pLutLib = (If_LibLut_t *)pAbc->pLibLut; Extra_UtilGetoptReset(); - while ( ( c = Extra_UtilGetopt( argc, argv, "KCFAGRDEWSqalepmrsdbgyojikfuztvh" ) ) != EOF ) + while ( ( c = Extra_UtilGetopt( argc, argv, "KCFAGRDEWSTqalepmrsdbgyojikfuztvh" ) ) != EOF ) { switch ( c ) { @@ -29952,6 +29952,17 @@ int Abc_CommandAbc9If( Abc_Frame_t * pAbc, int argc, char ** argv ) goto usage; } break; + case 'T': + if ( globalUtilOptind >= argc ) + { + Abc_Print( -1, "Command line switch \"-T\" should be followed by a positive integer 0,1,or 2.\n" ); + goto usage; + } + pPars->nStructType = atoi(argv[globalUtilOptind]); + globalUtilOptind++; + if ( pPars->nStructType < 0 || pPars->nStructType > 2 ) + goto usage; + break; case 'q': pPars->fPreprocess ^= 1; break; @@ -30212,7 +30223,7 @@ usage: sprintf(LutSize, "library" ); else sprintf(LutSize, "%d", pPars->nLutSize ); - Abc_Print( -2, "usage: &if [-KCFAGR num] [-DEW float] [-S str] [-qarlepmsdbgyojikfucztvh]\n" ); + Abc_Print( -2, "usage: &if [-KCFAGRT num] [-DEW float] [-S str] [-qarlepmsdbgyojikfucztvh]\n" ); Abc_Print( -2, "\t performs FPGA technology mapping of the network\n" ); Abc_Print( -2, "\t-K num : the number of LUT inputs (2 < num < %d) [default = %s]\n", IF_MAX_LUTSIZE+1, LutSize ); Abc_Print( -2, "\t-C num : the max number of priority cuts (0 < num < 2^12) [default = %d]\n", pPars->nCutsMax ); @@ -30224,6 +30235,7 @@ usage: Abc_Print( -2, "\t-E float : sets epsilon used for tie-breaking [default = %f]\n", pPars->Epsilon ); Abc_Print( -2, "\t-W float : sets wire delay between adjects LUTs [default = %f]\n", pPars->WireDelay ); Abc_Print( -2, "\t-S str : string representing the LUT structure [default = %s]\n", pPars->pLutStruct ? pPars->pLutStruct : "not used" ); + Abc_Print( -2, "\t-T num : the type of LUT structures [default = any]\n", pPars->nStructType ); Abc_Print( -2, "\t-q : toggles preprocessing using several starting points [default = %s]\n", pPars->fPreprocess? "yes": "no" ); Abc_Print( -2, "\t-a : toggles area-oriented mapping [default = %s]\n", pPars->fArea? "yes": "no" ); Abc_Print( -2, "\t-r : enables expansion/reduction of the best cuts [default = %s]\n", pPars->fExpRed? "yes": "no" ); @@ -30263,7 +30275,7 @@ usage: int Abc_CommandAbc9Iff( Abc_Frame_t * pAbc, int argc, char ** argv ) { extern void Gia_ManIffTest( Gia_Man_t * pGia, If_LibLut_t * pLib, int fVerbose ); - int c, fVerbose = 1; + int c, fVerbose = 0; Extra_UtilGetoptReset(); while ( ( c = Extra_UtilGetopt( argc, argv, "vh" ) ) != EOF ) { |