Commit d1e82047 by Alan Mishchenko

Added supporting dual-output seq miters in &iso.

parent 78855cc9
...@@ -1071,16 +1071,24 @@ Gia_Man_t * Gia_ManIsoReduce( Gia_Man_t * pInit, Vec_Ptr_t ** pvPosEquivs, int f ...@@ -1071,16 +1071,24 @@ Gia_Man_t * Gia_ManIsoReduce( Gia_Man_t * pInit, Vec_Ptr_t ** pvPosEquivs, int f
Vec_Int_t * vRemain, * vLevel, * vLevel2; Vec_Int_t * vRemain, * vLevel, * vLevel2;
Vec_Str_t * vStr, * vStr2; Vec_Str_t * vStr, * vStr2;
int i, k, s, sStart, Entry, Counter, clk = clock(); int i, k, s, sStart, Entry, Counter, clk = clock();
if ( pvPosEquivs )
*pvPosEquivs = NULL;
if ( fDualOut ) if ( fDualOut )
{ {
assert( (Gia_ManPoNum(pInit) & 1) == 0 ); assert( (Gia_ManPoNum(pInit) & 1) == 0 );
if ( Gia_ManPoNum(pInit) == 2 )
return Gia_ManDup(pInit);
p = Gia_ManTransformMiter( pInit ); p = Gia_ManTransformMiter( pInit );
p = Gia_ManSeqStructSweep( pPart = p, 1, 1, 0 ); p = Gia_ManSeqStructSweep( pPart = p, 1, 1, 0 );
Gia_ManStop( pPart ); Gia_ManStop( pPart );
} }
else else
{
if ( Gia_ManPoNum(pInit) == 1 )
return Gia_ManDup(pInit);
p = pInit; p = pInit;
}
// create preliminary equivalences // create preliminary equivalences
vEquivs = Gia_IsoDeriveEquivPos( p, 1, fVeryVerbose ); vEquivs = Gia_IsoDeriveEquivPos( p, 1, fVeryVerbose );
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment