Commit fba43b50 by Alan Mishchenko

Improvements to the new technology mapper.

parent 48db1c3a
...@@ -40,7 +40,7 @@ struct Jf_Cut_t_ ...@@ -40,7 +40,7 @@ struct Jf_Cut_t_
int Time; int Time;
int iFunc; int iFunc;
int Cost; int Cost;
int pCut[JF_LEAF_MAX+2]; int pCut[JF_LEAF_MAX+1];
}; };
typedef struct Jf_Man_t_ Jf_Man_t; typedef struct Jf_Man_t_ Jf_Man_t;
...@@ -765,6 +765,7 @@ void Jf_ObjComputeCuts( Jf_Man_t * p, Gia_Obj_t * pObj ) ...@@ -765,6 +765,7 @@ void Jf_ObjComputeCuts( Jf_Man_t * p, Gia_Obj_t * pObj )
p->CutCount[1]++; p->CutCount[1]++;
if ( !(Config = Jf_CutMerge(pCut0, pCut1, pSto[c]->pCut, LutSize)) ) if ( !(Config = Jf_CutMerge(pCut0, pCut1, pSto[c]->pCut, LutSize)) )
continue; continue;
pSto[c]->iFunc = pSto[c]->Cost = 0;
if ( p->pPars->fCutMin ) if ( p->pPars->fCutMin )
{ {
int iDsdLit0 = Abc_LitNotCond( Jf_CutFunc(pCut0), Gia_ObjFaninC0(pObj) ); int iDsdLit0 = Abc_LitNotCond( Jf_CutFunc(pCut0), Gia_ObjFaninC0(pObj) );
...@@ -773,7 +774,7 @@ void Jf_ObjComputeCuts( Jf_Man_t * p, Gia_Obj_t * pObj ) ...@@ -773,7 +774,7 @@ void Jf_ObjComputeCuts( Jf_Man_t * p, Gia_Obj_t * pObj )
// pSto[c]->iFunc = Sdm_ManComputeFunc( p->pDsd, iDsdLit0, iDsdLit1, NULL, Config, 0 ); // pSto[c]->iFunc = Sdm_ManComputeFunc( p->pDsd, iDsdLit0, iDsdLit1, NULL, Config, 0 );
if ( pSto[c]->iFunc == -1 ) if ( pSto[c]->iFunc == -1 )
continue; continue;
pSto[c]->Cost = 0;//Sdm_ManReadCnfSize( p->pDsd, Abc_Lit2Var(pSto[c]->iFunc) ); //pSto[c]->Cost = Sdm_ManReadCnfSize( p->pDsd, Abc_Lit2Var(pSto[c]->iFunc) );
} }
// Jf_CutCheck( pSto[c]->pCut ); // Jf_CutCheck( pSto[c]->pCut );
p->CutCount[2]++; p->CutCount[2]++;
......
...@@ -28,7 +28,7 @@ ABC_NAMESPACE_IMPL_START ...@@ -28,7 +28,7 @@ ABC_NAMESPACE_IMPL_START
/// DECLARATIONS /// /// DECLARATIONS ///
//////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////
static float s_ExtraDel[2][3] = { {1.0, 1.0, (float)0.1}, {1.0, 1.0, (float)0.1} }; //static float s_ExtraDel[2][3] = { {1.0, 1.0, (float)0.1}, {1.0, 1.0, (float)0.1} };
static void If_CutSortInputPins( If_Man_t * p, If_Cut_t * pCut, int * pPinPerm, float * pPinDelays ); static void If_CutSortInputPins( If_Man_t * p, If_Cut_t * pCut, int * pPinPerm, float * pPinDelays );
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment