From 0d1a1c462459fd2be96caa027ad619376b66d658 Mon Sep 17 00:00:00 2001 From: Alan Mishchenko Date: Wed, 11 Jun 2014 22:21:55 -0700 Subject: Adding switch to &st to convert to larger gates. --- src/base/abci/abc.c | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/src/base/abci/abc.c b/src/base/abci/abc.c index db710590..dbd1fda4 100644 --- a/src/base/abci/abc.c +++ b/src/base/abci/abc.c @@ -25625,10 +25625,11 @@ usage: int Abc_CommandAbc9Hash( Abc_Frame_t * pAbc, int argc, char ** argv ) { Gia_Man_t * pTemp; - int c, fCollapse = 0; - int fAddStrash = 0; + int c, fAddStrash = 0; + int fCollapse = 0; + int fAddMuxes = 0; Extra_UtilGetoptReset(); - while ( ( c = Extra_UtilGetopt( argc, argv, "ach" ) ) != EOF ) + while ( ( c = Extra_UtilGetopt( argc, argv, "acmh" ) ) != EOF ) { switch ( c ) { @@ -25638,6 +25639,9 @@ int Abc_CommandAbc9Hash( Abc_Frame_t * pAbc, int argc, char ** argv ) case 'c': fCollapse ^= 1; break; + case 'm': + fAddMuxes ^= 1; + break; case 'h': goto usage; default: @@ -25649,7 +25653,9 @@ int Abc_CommandAbc9Hash( Abc_Frame_t * pAbc, int argc, char ** argv ) Abc_Print( -1, "Abc_CommandAbc9Hash(): There is no AIG.\n" ); return 1; } - if ( fCollapse && pAbc->pGia->pAigExtra ) + if ( fAddMuxes ) + pTemp = Gia_ManDupMuxes( pAbc->pGia ); + else if ( fCollapse && pAbc->pGia->pAigExtra ) { Gia_Man_t * pNew = Gia_ManDupUnnormalize( pAbc->pGia ); pNew->pManTime = pAbc->pGia->pManTime; @@ -25663,10 +25669,11 @@ int Abc_CommandAbc9Hash( Abc_Frame_t * pAbc, int argc, char ** argv ) return 0; usage: - Abc_Print( -2, "usage: &st [-ach]\n" ); + Abc_Print( -2, "usage: &st [-acmh]\n" ); Abc_Print( -2, "\t performs structural hashing\n" ); Abc_Print( -2, "\t-a : toggle additional hashing [default = %s]\n", fAddStrash? "yes": "no" ); Abc_Print( -2, "\t-c : toggle collapsing hierarchical AIG [default = %s]\n", fCollapse? "yes": "no" ); + Abc_Print( -2, "\t-m : toggle converting to larger gates [default = %s]\n", fAddMuxes? "yes": "no" ); Abc_Print( -2, "\t-h : print the command usage\n"); return 1; } -- cgit v1.2.3