diff --git a/src/aig/gia/giaDeep.c b/src/aig/gia/giaDeep.c index 86a777c9c..bdd979eb2 100644 --- a/src/aig/gia/giaDeep.c +++ b/src/aig/gia/giaDeep.c @@ -164,10 +164,12 @@ Gia_Man_t * Gia_ManDeepSyn( Gia_Man_t * pGia, int nIters, int nNoImpr, int TimeO } Gia_ManStop( pInit ); - if ( vGias ) { - extern Gia_Man_t * Gia_ManCreateChoicesArray( Vec_Ptr_t * vGias, int fVerbose ); - Gia_ManStopP( &pBest ); - pBest = Gia_ManCreateChoicesArray( vGias, fVerbose ); + if ( vGias) { + if ( Vec_PtrSize(vGias) > 1 ) { + extern Gia_Man_t * Gia_ManCreateChoicesArray( Vec_Ptr_t * vGias, int fVerbose ); + Gia_ManStopP( &pBest ); + pBest = Gia_ManCreateChoicesArray( vGias, fVerbose ); + } // cleanup Gia_Man_t * pTemp; Vec_PtrForEachEntry( Gia_Man_t *, vGias, pTemp, i ) diff --git a/src/aig/gia/giaStoch.c b/src/aig/gia/giaStoch.c index 04eeaedc2..5484d0851 100644 --- a/src/aig/gia/giaStoch.c +++ b/src/aig/gia/giaStoch.c @@ -1033,13 +1033,14 @@ Vec_Wec_t * Gia_ManStochOutputs( Gia_Man_t * p, Vec_Wec_t * vAnds ) ***********************************************************************/ Gia_Man_t * Gia_ManCreateChoicesArray( Vec_Ptr_t * vGias, int fVerbose ) { - abctime clkStart = Abc_Clock(); int i; + abctime clkStart = Abc_Clock(); // swap around the first and the last - Gia_Man_t * pTemp = (Gia_Man_t *)Vec_PtrPop( vGias ); - Vec_PtrPush( vGias, Vec_PtrEntry(vGias,0) ); - Vec_PtrWriteEntry( vGias, 0, pTemp ); + //Gia_Man_t * pTemp = (Gia_Man_t *)Vec_PtrPop( vGias ); + //Vec_PtrPush( vGias, Vec_PtrEntry(vGias,0) ); + //Vec_PtrWriteEntry( vGias, 0, pTemp ); if ( fVerbose ) { printf( "Choicing will be performed with %d AIGs:\n", Vec_PtrSize(vGias) ); + Gia_Man_t * pTemp; int i; Vec_PtrForEachEntry( Gia_Man_t *, vGias, pTemp, i ) Gia_ManPrintStats( pTemp, NULL ); }