From ea1a2cfdaba5729eb9624bbc54b869784860f9f0 Mon Sep 17 00:00:00 2001 From: Alan Mishchenko Date: Fri, 1 Nov 2013 13:11:11 -0400 Subject: Corner-case bug in synthesis commands. --- src/aig/gia/giaBalance.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/aig/gia/giaBalance.c b/src/aig/gia/giaBalance.c index cae652e9..293449bf 100644 --- a/src/aig/gia/giaBalance.c +++ b/src/aig/gia/giaBalance.c @@ -990,6 +990,8 @@ Gia_Man_t * Gia_ManAigSyn2( Gia_Man_t * p, int fVerbose, int fVeryVerbose ) Jf_Par_t Pars, * pPars = &Pars; Jf_ManSetDefaultPars( pPars ); if ( fVerbose ) Gia_ManPrintStats( p, NULL ); + if ( Gia_ManAndNum(p) == 0 ) + return Gia_ManDup(p); // perform balancing pNew = Gia_ManAreaBalance( p, 0, ABC_INFINITY, fVeryVerbose, 0 ); if ( fVerbose ) Gia_ManPrintStats( pNew, NULL ); @@ -1009,6 +1011,8 @@ Gia_Man_t * Gia_ManAigSyn3( Gia_Man_t * p, int fVerbose, int fVeryVerbose ) Jf_Par_t Pars, * pPars = &Pars; Jf_ManSetDefaultPars( pPars ); if ( fVerbose ) Gia_ManPrintStats( p, NULL ); + if ( Gia_ManAndNum(p) == 0 ) + return Gia_ManDup(p); // perform balancing pNew = Gia_ManAreaBalance( p, 0, ABC_INFINITY, fVeryVerbose, 0 ); if ( fVerbose ) Gia_ManPrintStats( pNew, NULL ); @@ -1038,6 +1042,8 @@ Gia_Man_t * Gia_ManAigSyn4( Gia_Man_t * p, int fVerbose, int fVeryVerbose ) Jf_Par_t Pars, * pPars = &Pars; Jf_ManSetDefaultPars( pPars ); if ( fVerbose ) Gia_ManPrintStats( p, NULL ); + if ( Gia_ManAndNum(p) == 0 ) + return Gia_ManDup(p); // perform balancing pNew = Gia_ManAreaBalance( p, 0, ABC_INFINITY, fVeryVerbose, 0 ); if ( fVerbose ) Gia_ManPrintStats( pNew, NULL ); -- cgit v1.2.3