summaryrefslogtreecommitdiffstats
path: root/src/aig
diff options
context:
space:
mode:
authorAlan Mishchenko <alanmi@berkeley.edu>2014-06-12 11:08:54 -0700
committerAlan Mishchenko <alanmi@berkeley.edu>2014-06-12 11:08:54 -0700
commit082e5dc1b0d42f575c88dfc7550394a715222b53 (patch)
tree31a806507015d7320663223338d1fea707aed463 /src/aig
parent0d1a1c462459fd2be96caa027ad619376b66d658 (diff)
downloadabc-082e5dc1b0d42f575c88dfc7550394a715222b53.tar.gz
abc-082e5dc1b0d42f575c88dfc7550394a715222b53.tar.bz2
abc-082e5dc1b0d42f575c88dfc7550394a715222b53.zip
Integrating recent changes.
Diffstat (limited to 'src/aig')
-rw-r--r--src/aig/gia/gia.h4
-rw-r--r--src/aig/gia/giaBalance.c20
-rw-r--r--src/aig/gia/giaLf.c3
3 files changed, 18 insertions, 9 deletions
diff --git a/src/aig/gia/gia.h b/src/aig/gia/gia.h
index 65eca4ff..5a840e20 100644
--- a/src/aig/gia/gia.h
+++ b/src/aig/gia/gia.h
@@ -250,6 +250,7 @@ struct Jf_Par_t_
int nCutNum;
int nProcNum;
int nRounds;
+ int nRelaxRatio;
int nVerbLimit;
int DelayTarget;
int fAreaOnly;
@@ -1131,6 +1132,9 @@ extern Gia_Man_t * Jf_ManDeriveCnf( Gia_Man_t * p, int fCnfObjIds );
extern Gia_Man_t * Gia_ManIsoCanonicize( Gia_Man_t * p, int fVerbose );
extern Gia_Man_t * Gia_ManIsoReduce( Gia_Man_t * p, Vec_Ptr_t ** pvPosEquivs, Vec_Ptr_t ** pvPiPerms, int fEstimate, int fDualOut, int fVerbose, int fVeryVerbose );
extern Gia_Man_t * Gia_ManIsoReduce2( Gia_Man_t * p, Vec_Ptr_t ** pvPosEquivs, Vec_Ptr_t ** pvPiPerms, int fEstimate, int fBetterQual, int fDualOut, int fVerbose, int fVeryVerbose );
+/*=== giaLf.c ===========================================================*/
+extern void Lf_ManSetDefaultPars( Jf_Par_t * pPars );
+extern Gia_Man_t * Lf_ManPerformMapping( Gia_Man_t * pGia, Jf_Par_t * pPars );
/*=== giaLogic.c ===========================================================*/
extern void Gia_ManTestDistance( Gia_Man_t * p );
extern void Gia_ManSolveProblem( Gia_Man_t * pGia, Emb_Par_t * pPars );
diff --git a/src/aig/gia/giaBalance.c b/src/aig/gia/giaBalance.c
index 0f3a9406..77b85b48 100644
--- a/src/aig/gia/giaBalance.c
+++ b/src/aig/gia/giaBalance.c
@@ -1021,7 +1021,9 @@ Gia_Man_t * Gia_ManAigSyn2( Gia_Man_t * p, int fVerbose, int fVeryVerbose )
{
Gia_Man_t * pNew, * pTemp;
Jf_Par_t Pars, * pPars = &Pars;
- Jf_ManSetDefaultPars( pPars );
+ Lf_ManSetDefaultPars( pPars );
+// pPars->fVerbose = 1;
+ pPars->nRelaxRatio = 40;
if ( fVerbose ) Gia_ManPrintStats( p, NULL );
if ( Gia_ManAndNum(p) == 0 )
return Gia_ManDup(p);
@@ -1030,7 +1032,7 @@ Gia_Man_t * Gia_ManAigSyn2( Gia_Man_t * p, int fVerbose, int fVeryVerbose )
if ( fVerbose ) Gia_ManPrintStats( pNew, NULL );
Gia_ManAigTransferPiLevels( pNew, p );
// perform mapping
- pNew = Jf_ManPerformMapping( pTemp = pNew, pPars );
+ pNew = Lf_ManPerformMapping( pTemp = pNew, pPars );
if ( fVerbose ) Gia_ManPrintStats( pNew, NULL );
// Gia_ManStop( pTemp );
// perform balancing
@@ -1044,7 +1046,8 @@ Gia_Man_t * Gia_ManAigSyn3( Gia_Man_t * p, int fVerbose, int fVeryVerbose )
{
Gia_Man_t * pNew, * pTemp;
Jf_Par_t Pars, * pPars = &Pars;
- Jf_ManSetDefaultPars( pPars );
+ Lf_ManSetDefaultPars( pPars );
+ pPars->nRelaxRatio = 40;
if ( fVerbose ) Gia_ManPrintStats( p, NULL );
if ( Gia_ManAndNum(p) == 0 )
return Gia_ManDup(p);
@@ -1054,7 +1057,7 @@ Gia_Man_t * Gia_ManAigSyn3( Gia_Man_t * p, int fVerbose, int fVeryVerbose )
Gia_ManAigTransferPiLevels( pNew, p );
// perform mapping
pPars->nLutSize = 6;
- pNew = Jf_ManPerformMapping( pTemp = pNew, pPars );
+ pNew = Lf_ManPerformMapping( pTemp = pNew, pPars );
if ( fVerbose ) Gia_ManPrintStats( pNew, NULL );
// Gia_ManStop( pTemp );
// perform balancing
@@ -1064,7 +1067,7 @@ Gia_Man_t * Gia_ManAigSyn3( Gia_Man_t * p, int fVerbose, int fVeryVerbose )
Gia_ManStop( pTemp );
// perform mapping
pPars->nLutSize = 4;
- pNew = Jf_ManPerformMapping( pTemp = pNew, pPars );
+ pNew = Lf_ManPerformMapping( pTemp = pNew, pPars );
if ( fVerbose ) Gia_ManPrintStats( pNew, NULL );
// Gia_ManStop( pTemp );
// perform balancing
@@ -1078,7 +1081,8 @@ Gia_Man_t * Gia_ManAigSyn4( Gia_Man_t * p, int fVerbose, int fVeryVerbose )
{
Gia_Man_t * pNew, * pTemp;
Jf_Par_t Pars, * pPars = &Pars;
- Jf_ManSetDefaultPars( pPars );
+ Lf_ManSetDefaultPars( pPars );
+ pPars->nRelaxRatio = 40;
if ( fVerbose ) Gia_ManPrintStats( p, NULL );
if ( Gia_ManAndNum(p) == 0 )
return Gia_ManDup(p);
@@ -1089,7 +1093,7 @@ Gia_Man_t * Gia_ManAigSyn4( Gia_Man_t * p, int fVerbose, int fVeryVerbose )
Gia_ManAigTransferPiLevels( pNew, p );
// perform mapping
pPars->nLutSize = 7;
- pNew = Jf_ManPerformMapping( pTemp = pNew, pPars );
+ pNew = Lf_ManPerformMapping( pTemp = pNew, pPars );
if ( fVerbose ) Gia_ManPrintStats( pNew, NULL );
// Gia_ManStop( pTemp );
// perform extraction
@@ -1104,7 +1108,7 @@ Gia_Man_t * Gia_ManAigSyn4( Gia_Man_t * p, int fVerbose, int fVeryVerbose )
Gia_ManStop( pTemp );
// perform mapping
pPars->nLutSize = 5;
- pNew = Jf_ManPerformMapping( pTemp = pNew, pPars );
+ pNew = Lf_ManPerformMapping( pTemp = pNew, pPars );
if ( fVerbose ) Gia_ManPrintStats( pNew, NULL );
// Gia_ManStop( pTemp );
// perform extraction
diff --git a/src/aig/gia/giaLf.c b/src/aig/gia/giaLf.c
index 99f585d2..96a633f4 100644
--- a/src/aig/gia/giaLf.c
+++ b/src/aig/gia/giaLf.c
@@ -46,10 +46,11 @@ ABC_NAMESPACE_IMPL_START
***********************************************************************/
void Lf_ManSetDefaultPars( Jf_Par_t * pPars )
{
+ Jf_ManSetDefaultPars( pPars );
}
Gia_Man_t * Lf_ManPerformMapping( Gia_Man_t * pGia, Jf_Par_t * pPars )
{
- return NULL;
+ return Jf_ManPerformMapping( pGia, pPars );
}
////////////////////////////////////////////////////////////////////////