Skip to content

Commit 4c25599

Browse files
committed
Exploring multiplier boundaries.
1 parent 613fa4f commit 4c25599

File tree

1 file changed

+44
-0
lines changed

1 file changed

+44
-0
lines changed

src/base/wlc/wlcBlast.c

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1336,6 +1336,49 @@ void Wlc_BlastBooth( Gia_Man_t * pNew, int * pArgA, int * pArgB, int nArgA, int
13361336
Vec_IntFree( vArgB );
13371337
}
13381338

1339+
void Wlc_NtkDumpMulties( Wlc_Ntk_t * p, Gia_Man_t * pNew )
1340+
{
1341+
Wlc_Obj_t * pObj; int i;
1342+
Gia_ManCreateRefs( pNew );
1343+
Wlc_NtkForEachObj( p, pObj, i ) {
1344+
if ( pObj->Type != WLC_OBJ_ARI_MULTI )
1345+
continue;
1346+
int fSigned = Wlc_ObjIsSignedFanin01(p, pObj);
1347+
int nRange = Wlc_ObjRange( pObj );
1348+
int nRange0 = Wlc_ObjRange( Wlc_ObjFanin0(p, pObj) );
1349+
int nRange1 = Wlc_ObjRange( Wlc_ObjFanin1(p, pObj) );
1350+
int * pFans = Vec_IntEntryP( &p->vBits, Wlc_ObjCopy(p, i) );
1351+
int * pFans0 = Vec_IntEntryP( &p->vBits, Wlc_ObjCopy(p, Wlc_ObjFaninId0(pObj)) );
1352+
int * pFans1 = Vec_IntEntryP( &p->vBits, Wlc_ObjCopy(p, Wlc_ObjFaninId1(pObj)) );
1353+
1354+
printf( "\n%d\n", fSigned );
1355+
printf( "%2d :", nRange0 );
1356+
for ( int k = 0; k < nRange0; k++ )
1357+
if ( pFans0[k] == -1 )
1358+
printf( " -" );
1359+
else
1360+
printf( " %c%d(%d)", Abc_LitIsCompl(pFans0[k])?'-':'+', Abc_Lit2Var(pFans0[k]), Gia_ObjRefNumId(pNew, Abc_Lit2Var(pFans0[k])) );
1361+
printf( "\n" );
1362+
1363+
printf( "%2d :", nRange1 );
1364+
for ( int k = 0; k < nRange1; k++ )
1365+
if ( pFans1[k] == -1 )
1366+
printf( " -" );
1367+
else
1368+
printf( " %c%d(%d)", Abc_LitIsCompl(pFans1[k])?'-':'+', Abc_Lit2Var(pFans1[k]), Gia_ObjRefNumId(pNew, Abc_Lit2Var(pFans1[k])) );
1369+
printf( "\n" );
1370+
1371+
printf( "%2d :", nRange );
1372+
for ( int k = 0; k < nRange; k++ )
1373+
if ( pFans[k] == -1 )
1374+
printf( " -" );
1375+
else
1376+
printf( " %c%d(%d)", Abc_LitIsCompl(pFans[k])?'-':'+', Abc_Lit2Var(pFans[k]), Gia_ObjRefNumId(pNew, Abc_Lit2Var(pFans[k])) );
1377+
printf( "\n" );
1378+
}
1379+
}
1380+
1381+
13391382
/**Function*************************************************************
13401383
13411384
Synopsis []
@@ -2696,6 +2739,7 @@ Gia_Man_t * Wlc_NtkBitBlast( Wlc_Ntk_t * p, Wlc_BstPar_t * pParIn )
26962739
// Abc_Frame_t * pAbc = Abc_FrameGetGlobalFrame();
26972740
// pAbc->vMiniLutObjs = Gia_ManDeriveBoxMapping( pNew );
26982741
// }
2742+
//Wlc_NtkDumpMulties( p, pNew );
26992743
return pNew;
27002744
}
27012745

0 commit comments

Comments
 (0)