summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMathias Soeken <mathias.soeken@gmail.com>2016-08-01 08:29:37 +0200
committerMathias Soeken <mathias.soeken@gmail.com>2016-08-01 08:29:37 +0200
commita7b244c5a978715f328db78aa4b8fac39c0bead2 (patch)
treeb292729f4cd2d066c27f312b3435575e18eb5329
parenta4f8e601b9265318737e8e9ee7eda0dfb804705c (diff)
parentfd8eb8c8551add7b17bd18a77fa46e8c0f38e833 (diff)
downloadabc-a7b244c5a978715f328db78aa4b8fac39c0bead2.tar.gz
abc-a7b244c5a978715f328db78aa4b8fac39c0bead2.tar.bz2
abc-a7b244c5a978715f328db78aa4b8fac39c0bead2.zip
Merged alanmi/abc into default
-rw-r--r--src/base/abci/abcExact.c2
-rw-r--r--src/map/if/ifMap.c6
2 files changed, 4 insertions, 4 deletions
diff --git a/src/base/abci/abcExact.c b/src/base/abci/abcExact.c
index d36e7104..99b44bce 100644
--- a/src/base/abci/abcExact.c
+++ b/src/base/abci/abcExact.c
@@ -1342,7 +1342,7 @@ int Abc_ExactInputNum()
// this procedure takes TT and input arrival times (pArrTimeProfile) and return the smallest output arrival time;
// it also returns the pin-to-pin delays (pPerm) between each cut leaf and the cut output and the cut area cost (Cost)
// the area cost should not exceed 2048, if the cut is implementable; otherwise, it should be ABC_INFINITY
-int Abc_ExactDelayCost( word * pTruth, int nVars, int * pArrTimeProfile, char * pPerm, int * Cost )
+int Abc_ExactDelayCost( word * pTruth, int nVars, int * pArrTimeProfile, char * pPerm, int * Cost, int AigLevel )
{
int l;
Ses_Man_t * pSes;
diff --git a/src/map/if/ifMap.c b/src/map/if/ifMap.c
index 7e102312..76d3c757 100644
--- a/src/map/if/ifMap.c
+++ b/src/map/if/ifMap.c
@@ -29,7 +29,7 @@ ABC_NAMESPACE_IMPL_START
extern char * Dau_DsdMerge( char * pDsd0i, int * pPerm0, char * pDsd1i, int * pPerm1, int fCompl0, int fCompl1, int nVars );
extern int If_CutDelayRecCost3( If_Man_t* p, If_Cut_t* pCut, If_Obj_t * pObj );
-extern int Abc_ExactDelayCost( word * pTruth, int nVars, int * pArrTimeProfile, char * pPerm, int * Cost );
+extern int Abc_ExactDelayCost( word * pTruth, int nVars, int * pArrTimeProfile, char * pPerm, int * Cost, int AigLevel );
////////////////////////////////////////////////////////////////////////
/// FUNCTION DEFINITIONS ///
@@ -152,7 +152,7 @@ void If_ObjPerformMappingAnd( If_Man_t * p, If_Obj_t * pObj, int Mode, int fPrep
{
int Cost = 0;
pCut->fUser = 1;
- pCut->Delay = (float)Abc_ExactDelayCost( If_CutTruthW(p, pCut), If_CutLeaveNum(pCut), If_CutArrTimeProfile(p, pCut), If_CutPerm(pCut), &Cost );
+ pCut->Delay = (float)Abc_ExactDelayCost( If_CutTruthW(p, pCut), If_CutLeaveNum(pCut), If_CutArrTimeProfile(p, pCut), If_CutPerm(pCut), &Cost, (int)pObj->Level );
if ( Cost == ABC_INFINITY )
{
for ( v = 0; v < If_CutLeaveNum(pCut); v++ )
@@ -376,7 +376,7 @@ void If_ObjPerformMappingAnd( If_Man_t * p, If_Obj_t * pObj, int Mode, int fPrep
{
int Cost = 0;
pCut->fUser = 1;
- pCut->Delay = (float)Abc_ExactDelayCost( If_CutTruthW(p, pCut), If_CutLeaveNum(pCut), If_CutArrTimeProfile(p, pCut), If_CutPerm(pCut), &Cost );
+ pCut->Delay = (float)Abc_ExactDelayCost( If_CutTruthW(p, pCut), If_CutLeaveNum(pCut), If_CutArrTimeProfile(p, pCut), If_CutPerm(pCut), &Cost, (int)pObj->Level );
if ( Cost == ABC_INFINITY )
{
for ( v = 0; v < If_CutLeaveNum(pCut); v++ )