diff options
Diffstat (limited to 'src/opt/lpk')
-rw-r--r-- | src/opt/lpk/lpkAbcDec.c | 1 | ||||
-rw-r--r-- | src/opt/lpk/lpkAbcDsd.c | 6 | ||||
-rw-r--r-- | src/opt/lpk/lpkCore.c | 8 | ||||
-rw-r--r-- | src/opt/lpk/lpkCut.c | 31 | ||||
-rw-r--r-- | src/opt/lpk/lpkMap.c | 2 | ||||
-rw-r--r-- | src/opt/lpk/lpkMulti.c | 25 |
6 files changed, 45 insertions, 28 deletions
diff --git a/src/opt/lpk/lpkAbcDec.c b/src/opt/lpk/lpkAbcDec.c index aa2d4bc0..c06f0bf1 100644 --- a/src/opt/lpk/lpkAbcDec.c +++ b/src/opt/lpk/lpkAbcDec.c @@ -143,7 +143,6 @@ Abc_Obj_t * Lpk_Implement( Lpk_Man_t * pMan, Abc_Ntk_t * pNtk, Vec_Ptr_t * vLeav ***********************************************************************/ int Lpk_Decompose_rec( Lpk_Man_t * pMan, Lpk_Fun_t * p ) { - static Lpk_Res_t Res0, * pRes0 = &Res0; Lpk_Res_t * pResMux, * pResDsd; Lpk_Fun_t * p2; int clk; diff --git a/src/opt/lpk/lpkAbcDsd.c b/src/opt/lpk/lpkAbcDsd.c index f4095914..46d9179a 100644 --- a/src/opt/lpk/lpkAbcDsd.c +++ b/src/opt/lpk/lpkAbcDsd.c @@ -43,7 +43,11 @@ ***********************************************************************/ int Lpk_FunComputeMinSuppSizeVar( Lpk_Fun_t * p, unsigned ** ppTruths, int nTruths, unsigned ** ppCofs, unsigned uNonDecSupp ) { - int i, Var, VarBest, nSuppSize0, nSuppSize1, nSuppTotalMin, nSuppTotalCur, nSuppMaxMin, nSuppMaxCur; + int i, Var, VarBest, nSuppSize0, nSuppSize1; + int nSuppTotalMin = -1; // Suppress "might be used uninitialized" + int nSuppTotalCur; + int nSuppMaxMin = -1; // Suppress "might be used uninitialized" + int nSuppMaxCur; assert( nTruths > 0 ); VarBest = -1; Lpk_SuppForEachVar( p->uSupp, Var ) diff --git a/src/opt/lpk/lpkCore.c b/src/opt/lpk/lpkCore.c index 4eb64aa2..78356d81 100644 --- a/src/opt/lpk/lpkCore.c +++ b/src/opt/lpk/lpkCore.c @@ -100,7 +100,7 @@ int Lpk_NodeHasChanged( Lpk_Man_t * p, int iNode ) Vec_PtrForEachEntry( vNodes, pTemp, i ) { // check if the node has changed - pTemp = Abc_NtkObj( p->pNtk, (int)pTemp ); + pTemp = Abc_NtkObj( p->pNtk, (int)(PORT_PTRUINT_T)pTemp ); if ( pTemp == NULL ) return 1; // check if the number of fanouts has changed @@ -233,7 +233,7 @@ p->timeMap += clock() - clk; ***********************************************************************/ int Lpk_ResynthesizeNode( Lpk_Man_t * p ) { - static int Count = 0; +// static int Count = 0; Kit_DsdNtk_t * pDsdNtk; Lpk_Cut_t * pCut; unsigned * pTruth; @@ -361,7 +361,7 @@ void Lpk_ComputeSupports( Lpk_Man_t * p, Lpk_Cut_t * pCut, unsigned * pTruth ) ***********************************************************************/ int Lpk_ResynthesizeNodeNew( Lpk_Man_t * p ) { - static int Count = 0; +// static int Count = 0; Abc_Obj_t * pObjNew, * pLeaf; Lpk_Cut_t * pCut; unsigned * pTruth; @@ -497,7 +497,7 @@ p->timeEval += clock() - clk; ***********************************************************************/ int Lpk_Resynthesize( Abc_Ntk_t * pNtk, Lpk_Par_t * pPars ) { - ProgressBar * pProgress; + ProgressBar * pProgress = NULL; // Suppress "might be used uninitialized" Lpk_Man_t * p; Abc_Obj_t * pObj; double Delta; diff --git a/src/opt/lpk/lpkCut.c b/src/opt/lpk/lpkCut.c index facd330b..a2f46b09 100644 --- a/src/opt/lpk/lpkCut.c +++ b/src/opt/lpk/lpkCut.c @@ -46,7 +46,7 @@ CloudNode * Lpk_CutTruthBdd_rec( CloudManager * dd, Hop_Man_t * pMan, Hop_Obj_t assert( !Hop_IsComplement(pObj) ); if ( pObj->pData ) { - assert( ((unsigned)pObj->pData) & 0xffff0000 ); + assert( ((unsigned)(PORT_PTRUINT_T)pObj->pData) & 0xffff0000 ); return pObj->pData; } // get the plan for a new truth table @@ -84,8 +84,8 @@ CloudNode * Lpk_CutTruthBdd( Lpk_Man_t * p, Lpk_Cut_t * pCut ) Hop_Man_t * pManHop = p->pNtk->pManFunc; Hop_Obj_t * pObjHop; Abc_Obj_t * pObj, * pFanin; - CloudNode * pTruth; - int i, k, iCount = 0; + CloudNode * pTruth = NULL; // Suppress "might be used uninitialized" + int i, k; // return NULL; // Lpk_NodePrintCut( p, pCut ); @@ -103,7 +103,7 @@ CloudNode * Lpk_CutTruthBdd( Lpk_Man_t * p, Lpk_Cut_t * pCut ) // set the initial truth tables at the fanins Abc_ObjForEachFanin( pObj, pFanin, k ) { - assert( ((unsigned)pFanin->pCopy) & 0xffff0000 ); + assert( ((unsigned)(PORT_PTRUINT_T)pFanin->pCopy) & 0xffff0000 ); Hop_ManPi( pManHop, k )->pData = pFanin->pCopy; } // compute the truth table of internal nodes @@ -138,7 +138,7 @@ unsigned * Lpk_CutTruth_rec( Hop_Man_t * pMan, Hop_Obj_t * pObj, int nVars, Vec_ assert( !Hop_IsComplement(pObj) ); if ( pObj->pData ) { - assert( ((unsigned)pObj->pData) & 0xffff0000 ); + assert( ((unsigned)(PORT_PTRUINT_T)pObj->pData) & 0xffff0000 ); return pObj->pData; } // get the plan for a new truth table @@ -173,8 +173,9 @@ unsigned * Lpk_CutTruth( Lpk_Man_t * p, Lpk_Cut_t * pCut, int fInv ) { Hop_Man_t * pManHop = p->pNtk->pManFunc; Hop_Obj_t * pObjHop; - Abc_Obj_t * pObj, * pFanin; - unsigned * pTruth; + Abc_Obj_t * pObj = NULL; // Suppress "might be used uninitialized" + Abc_Obj_t * pFanin; + unsigned * pTruth = NULL; // Suppress "might be used uninitialized" int i, k, iCount = 0; // Lpk_NodePrintCut( p, pCut ); assert( pCut->nNodes > 0 ); @@ -193,7 +194,7 @@ unsigned * Lpk_CutTruth( Lpk_Man_t * p, Lpk_Cut_t * pCut, int fInv ) // set the initial truth tables at the fanins Abc_ObjForEachFanin( pObj, pFanin, k ) { - assert( ((unsigned)pFanin->pCopy) & 0xffff0000 ); + assert( ((unsigned)(PORT_PTRUINT_T)pFanin->pCopy) & 0xffff0000 ); Hop_ManPi( pManHop, k )->pData = pFanin->pCopy; } // compute the truth table of internal nodes @@ -208,7 +209,7 @@ unsigned * Lpk_CutTruth( Lpk_Man_t * p, Lpk_Cut_t * pCut, int fInv ) if ( fInv == 0 ) { pTruth = Vec_PtrEntry( p->vTtNodes, iCount++ ); - Kit_TruthCopy( pTruth, (unsigned *)pObj->pCopy, pCut->nLeaves ); + Kit_TruthCopy( pTruth, (unsigned *)(PORT_PTRUINT_T)pObj->pCopy, pCut->nLeaves ); } assert( iCount <= Vec_PtrSize(p->vTtNodes) ); return pTruth; @@ -243,14 +244,14 @@ void Lpk_NodeRecordImpact( Lpk_Man_t * p ) if ( pNode->fMarkC ) continue; pNode->fMarkC = 1; - Vec_PtrPush( vNodes, (void *)pNode->Id ); - Vec_PtrPush( vNodes, (void *)Abc_ObjFanoutNum(pNode) ); + Vec_PtrPush( vNodes, (void *)(PORT_PTRUINT_T)pNode->Id ); + Vec_PtrPush( vNodes, (void *)(PORT_PTRUINT_T)Abc_ObjFanoutNum(pNode) ); } } // clear the marks Vec_PtrForEachEntry( vNodes, pNode, i ) { - pNode = Abc_NtkObj( p->pNtk, (int)pNode ); + pNode = Abc_NtkObj( p->pNtk, (int)(PORT_PTRUINT_T)pNode ); pNode->fMarkC = 0; i++; } @@ -280,7 +281,7 @@ int Lpk_NodeCutsCheckDsd( Lpk_Man_t * p, Lpk_Cut_t * pCut ) { assert( pObj->fMarkA == 0 ); pObj->fMarkA = 1; - pObj->pCopy = (void *)i; + pObj->pCopy = (void *)(PORT_PTRUINT_T)i; } // ref leaves pointed from the internal nodes nCands = 0; @@ -289,7 +290,7 @@ int Lpk_NodeCutsCheckDsd( Lpk_Man_t * p, Lpk_Cut_t * pCut ) fLeavesOnly = 1; Abc_ObjForEachFanin( pObj, pFanin, k ) if ( pFanin->fMarkA ) - p->pRefs[(int)pFanin->pCopy]++; + p->pRefs[(int)(PORT_PTRUINT_T)pFanin->pCopy]++; else fLeavesOnly = 0; if ( fLeavesOnly ) @@ -303,7 +304,7 @@ int Lpk_NodeCutsCheckDsd( Lpk_Man_t * p, Lpk_Cut_t * pCut ) Abc_ObjForEachFanin( pObj, pFanin, k ) { assert( pFanin->fMarkA == 1 ); - if ( p->pRefs[(int)pFanin->pCopy] > 1 ) + if ( p->pRefs[(int)(PORT_PTRUINT_T)pFanin->pCopy] > 1 ) break; } if ( k == Abc_ObjFaninNum(pObj) ) diff --git a/src/opt/lpk/lpkMap.c b/src/opt/lpk/lpkMap.c index 698aeea1..f959f8f9 100644 --- a/src/opt/lpk/lpkMap.c +++ b/src/opt/lpk/lpkMap.c @@ -41,7 +41,7 @@ ***********************************************************************/ If_Obj_t * Lpk_MapPrimeInternal( If_Man_t * pIfMan, Kit_Graph_t * pGraph ) { - Kit_Node_t * pNode; + Kit_Node_t * pNode = NULL; // Suppress "might be used uninitialized" If_Obj_t * pAnd0, * pAnd1; int i; // check for constant function diff --git a/src/opt/lpk/lpkMulti.c b/src/opt/lpk/lpkMulti.c index 82cf3578..3d2093e7 100644 --- a/src/opt/lpk/lpkMulti.c +++ b/src/opt/lpk/lpkMulti.c @@ -343,14 +343,31 @@ If_Obj_t * Lpk_MapTreeMulti_rec( Lpk_Man_t * p, Kit_DsdNtk_t ** ppNtks, int * pi ***********************************************************************/ If_Obj_t * Lpk_MapTreeMulti( Lpk_Man_t * p, unsigned * pTruth, int nVars, If_Obj_t ** ppLeaves ) { - static Counter = 0; + static int Counter = 0; If_Obj_t * pResult; Kit_DsdNtk_t * ppNtks[8] = {0}, * pTemp; Kit_DsdObj_t * pRoot; int piCofVar[4], pPrios[16], pFreqs[16] = {0}, piLits[16]; int i, k, nCBars, nSize, nMemSize; unsigned * ppCofs[4][8], uSupport; - char pTable[16][16] = {0}; + char pTable[16][16] = { + {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, + {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, + {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, + {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, + {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, + {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, + {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, + {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, + {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, + {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, + {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, + {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, + {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, + {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, + {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, + {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0} + }; int fVerbose = p->pPars->fVeryVerbose; Counter++; @@ -422,10 +439,6 @@ If_Obj_t * Lpk_MapTreeMulti( Lpk_Man_t * p, unsigned * pTruth, int nVars, If_Obj if ( fVerbose ) printf( "After restructuring with priority:\n" ); - if ( Counter == 1 ) - { - int x = 0; - } // transform all networks according to the variable order for ( i = 0; i < nSize; i++ ) { |