summaryrefslogtreecommitdiffstats
path: root/src/misc/extra/extraUtilDsd.c
diff options
context:
space:
mode:
authorAlan Mishchenko <alanmi@berkeley.edu>2013-09-11 23:49:05 -0700
committerAlan Mishchenko <alanmi@berkeley.edu>2013-09-11 23:49:05 -0700
commit61abba9571c646eba14d917bd8af68f25c580b7f (patch)
treee205ae3902f7defb079e994abb9e919e6347f6b7 /src/misc/extra/extraUtilDsd.c
parent211ac730c60d1827882c3fa3bf2fe648e3d6380d (diff)
downloadabc-61abba9571c646eba14d917bd8af68f25c580b7f.tar.gz
abc-61abba9571c646eba14d917bd8af68f25c580b7f.tar.bz2
abc-61abba9571c646eba14d917bd8af68f25c580b7f.zip
Improvements to the new technology mapper.
Diffstat (limited to 'src/misc/extra/extraUtilDsd.c')
-rw-r--r--src/misc/extra/extraUtilDsd.c13
1 files changed, 4 insertions, 9 deletions
diff --git a/src/misc/extra/extraUtilDsd.c b/src/misc/extra/extraUtilDsd.c
index 7b023d8c..1af58940 100644
--- a/src/misc/extra/extraUtilDsd.c
+++ b/src/misc/extra/extraUtilDsd.c
@@ -692,7 +692,7 @@ void Sdm_ManPrintDsdStats( Sdm_Man_t * p, int fVerbose )
}
}
printf( "Unused classes = %d (%.2f %%). ", Absent, 100.0 * Absent / DSD_CLASS_NUM );
- printf( "Non-DSD cuts = %d (%.2f %%). ", p->nNonDsd, 100.0 * p->nNonDsd / p->nAllDsd );
+ printf( "Non-DSD cuts = %d (%.2f %%). ", p->nNonDsd, 100.0 * p->nNonDsd / Abc_MaxInt(1, p->nAllDsd) );
printf( "\n" );
}
@@ -919,6 +919,7 @@ int Sdm_ManCheckDsd6( Sdm_Man_t * p, word t )
***********************************************************************/
int Sdm_ManComputeFunc( Sdm_Man_t * p, int iDsdLit0, int iDsdLit1, int * pCut, int uMask, int fXor )
{
+// int fVerbose = 0;
int i, Config, iClass, fCompl, Res;
int PermMask = uMask & 0x3FFFF;
int ComplMask = uMask >> 18;
@@ -928,7 +929,6 @@ int Sdm_ManComputeFunc( Sdm_Man_t * p, int iDsdLit0, int iDsdLit1, int * pCut, i
assert( uMask > 1 );
assert( iDsdLit0 < DSD_CLASS_NUM * 2 );
assert( iDsdLit1 < DSD_CLASS_NUM * 2 );
-// Sdm_ManPrintPerm( PermMask ); printf( "\n" );
Truth0 = p->pDsd6[Abc_Lit2Var(iDsdLit0)].uTruth;
Truth1p = Vec_WrdEntry( p->vPerm6, Abc_Lit2Var(iDsdLit1) * 720 + Vec_IntEntry(p->vMap2Perm, PermMask ) );
if ( ComplMask )
@@ -939,9 +939,10 @@ int Sdm_ManComputeFunc( Sdm_Man_t * p, int iDsdLit0, int iDsdLit1, int * pCut, i
t1 = Abc_LitIsCompl(iDsdLit1) ? ~Truth1p : Truth1p;
t = fXor ? t0 ^ t1 : t0 & t1;
/*
-if ( 0 )
+if ( fVerbose )
{
Sdm_ManPrintPerm( PermMask ); printf( "\n" );
+Extra_PrintBinary( stdout, &ComplMask, 6 ); printf( "\n" );
Kit_DsdPrintFromTruth( (unsigned *)&Truth0, 6 ); printf( "\n" );
Kit_DsdPrintFromTruth( (unsigned *)&Truth1p, 6 ); printf( "\n" );
Kit_DsdPrintFromTruth( (unsigned *)&t, 6 ); printf( "\n" );
@@ -951,12 +952,6 @@ Kit_DsdPrintFromTruth( (unsigned *)&t, 6 ); printf( "\n" );
Config = Sdm_ManCheckDsd6( p, t );
if ( Config == -1 )
{
-/*
-Sdm_ManPrintPerm( PermMask ); printf( "\n" );
-Kit_DsdPrintFromTruth( (unsigned *)&Truth0, 6 ); printf( "\n" );
-Kit_DsdPrintFromTruth( (unsigned *)&Truth1p, 6 ); printf( "\n" );
-Kit_DsdPrintFromTruth( (unsigned *)&t, 6 ); printf( "\n" );
-*/
p->nNonDsd++;
return -1;
}