diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2015-02-08 22:00:55 -0800 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2015-02-08 22:00:55 -0800 |
commit | 0f9001c956749682e002cb229264dbd6c4882fc2 (patch) | |
tree | 2b200b4ac6241ad6ff70393a5d4ddb5fc51fe51f /src/aig | |
parent | db6afbea29b6f187eafb113652c18bfb92e2c940 (diff) | |
download | abc-0f9001c956749682e002cb229264dbd6c4882fc2.tar.gz abc-0f9001c956749682e002cb229264dbd6c4882fc2.tar.bz2 abc-0f9001c956749682e002cb229264dbd6c4882fc2.zip |
Adding switch '-p' to control pin-permutation in &nf.
Diffstat (limited to 'src/aig')
-rw-r--r-- | src/aig/gia/gia.h | 1 | ||||
-rw-r--r-- | src/aig/gia/giaNf.c | 4 |
2 files changed, 3 insertions, 2 deletions
diff --git a/src/aig/gia/gia.h b/src/aig/gia/gia.h index d89888e0..bc7238d8 100644 --- a/src/aig/gia/gia.h +++ b/src/aig/gia/gia.h @@ -275,6 +275,7 @@ struct Jf_Par_t_ int nVerbLimit; int DelayTarget; int fAreaOnly; + int fPinPerm; int fOptEdge; int fUseMux7; int fPower; diff --git a/src/aig/gia/giaNf.c b/src/aig/gia/giaNf.c index 3dad6fb2..7c82e70d 100644 --- a/src/aig/gia/giaNf.c +++ b/src/aig/gia/giaNf.c @@ -182,7 +182,6 @@ static inline int Nf_CutConfC( int Conf, int i ) ***********************************************************************/ void Nf_StoCreateGateAdd( Nf_Man_t * pMan, word uTruth, int * pFans, int nFans, int CellId ) { - int fUsePinPermutation = 0; // set to 1 to enable pin-permutation (which is good for delay when pin-delays differ) Vec_Int_t * vArray; Pf_Mat_t Mat = Pf_Int2Mat(0); int i, GateId, Entry, fCompl = (int)(uTruth & 1); @@ -198,7 +197,7 @@ void Nf_StoCreateGateAdd( Nf_Man_t * pMan, word uTruth, int * pFans, int nFans, Mat.Perm |= (unsigned)(Abc_Lit2Var(pFans[i]) << (3*i)); Mat.Phase |= (unsigned)(Abc_LitIsCompl(pFans[i]) << i); } - if ( fUsePinPermutation ) + if ( pMan->pPars->fPinPerm ) // use pin-permutation (slower but good for delay when pin-delays differ) { Vec_IntPush( vArray, CellId ); Vec_IntPush( vArray, Pf_Mat2Int(Mat) ); @@ -2079,6 +2078,7 @@ void Nf_ManSetDefaultPars( Jf_Par_t * pPars ) pPars->nVerbLimit = 5; pPars->DelayTarget = -1; pPars->fAreaOnly = 0; + pPars->fPinPerm = 0; pPars->fOptEdge = 1; pPars->fCoarsen = 0; pPars->fCutMin = 1; |