summaryrefslogtreecommitdiffstats
path: root/src/base
diff options
context:
space:
mode:
authorAlan Mishchenko <alanmi@berkeley.edu>2012-05-20 17:27:53 +0700
committerAlan Mishchenko <alanmi@berkeley.edu>2012-05-20 17:27:53 +0700
commitc6af9094c092170b14d735097cdf805b90105287 (patch)
tree7cad398e7cc88aa2e07fd8a0856a3e25b1333c0f /src/base
parent38214f01c20227cfca6617c4b2ac55e090ec47fa (diff)
downloadabc-c6af9094c092170b14d735097cdf805b90105287.tar.gz
abc-c6af9094c092170b14d735097cdf805b90105287.tar.bz2
abc-c6af9094c092170b14d735097cdf805b90105287.zip
Changing 'if' to allow for delay optimization on sequential paths only.
Diffstat (limited to 'src/base')
-rw-r--r--src/base/abci/abc.c5
-rw-r--r--src/base/abci/abcRec.c3
-rw-r--r--src/base/abci/abcRenode.c3
3 files changed, 7 insertions, 4 deletions
diff --git a/src/base/abci/abc.c b/src/base/abci/abc.c
index 1b64803c..955ba66b 100644
--- a/src/base/abci/abc.c
+++ b/src/base/abci/abc.c
@@ -13499,7 +13499,8 @@ int Abc_CommandIf( Abc_Frame_t * pAbc, int argc, char ** argv )
pPars->pLutStruct = NULL;
// internal parameters
pPars->fTruth = 0;
- pPars->nLatches = pNtk? Abc_NtkLatchNum(pNtk) : 0;
+ pPars->nLatchesCi = pNtk? Abc_NtkLatchNum(pNtk) : 0;
+ pPars->nLatchesCo = pNtk? Abc_NtkLatchNum(pNtk) : 0;
pPars->fLiftLeaves = 0;
pPars->pLutLib = (If_Lib_t *)Abc_FrameReadLibLut();
pPars->pTimesArr = NULL;
@@ -13695,7 +13696,7 @@ int Abc_CommandIf( Abc_Frame_t * pAbc, int argc, char ** argv )
}
*/
- if ( pPars->fSeqMap && pPars->nLatches == 0 )
+ if ( pPars->fSeqMap && (pPars->nLatchesCi == 0 || pPars->nLatchesCo == 0) )
{
Abc_Print( -1, "The network has no latches. Use combinational mapping instead of sequential.\n" );
return 1;
diff --git a/src/base/abci/abcRec.c b/src/base/abci/abcRec.c
index 297478ea..4e5b7d6e 100644
--- a/src/base/abci/abcRec.c
+++ b/src/base/abci/abcRec.c
@@ -1725,7 +1725,8 @@ void Abc_NtkRecAdd( Abc_Ntk_t * pNtk, int fUseSOPB)
pPars->fUsePerm = 0;
pPars->fDelayOpt = 0;
}
- pPars->nLatches = 0;
+ pPars->nLatchesCi = 0;
+ pPars->nLatchesCo = 0;
pPars->pLutLib = NULL; // Abc_FrameReadLibLut();
pPars->pTimesArr = NULL;
pPars->pTimesArr = NULL;
diff --git a/src/base/abci/abcRenode.c b/src/base/abci/abcRenode.c
index 35cebd9d..a3891fda 100644
--- a/src/base/abci/abcRenode.c
+++ b/src/base/abci/abcRenode.c
@@ -89,7 +89,8 @@ Abc_Ntk_t * Abc_NtkRenode( Abc_Ntk_t * pNtk, int nFaninMax, int nCubeMax, int nF
// internal parameters
pPars->fTruth = 1;
pPars->fUsePerm = 1;
- pPars->nLatches = 0;
+ pPars->nLatchesCi = 0;
+ pPars->nLatchesCo = 0;
pPars->pLutLib = NULL; // Abc_FrameReadLibLut();
pPars->pTimesArr = NULL;
pPars->pTimesArr = NULL;