diff options
Diffstat (limited to 'src/misc')
-rw-r--r-- | src/misc/extra/extraUtilTruth.c | 2 | ||||
-rw-r--r-- | src/misc/nm/nmApi.c | 4 | ||||
-rw-r--r-- | src/misc/nm/nmTable.c | 2 | ||||
-rw-r--r-- | src/misc/vec/vecPtr.h | 8 |
4 files changed, 12 insertions, 4 deletions
diff --git a/src/misc/extra/extraUtilTruth.c b/src/misc/extra/extraUtilTruth.c index 83153863..6b10813c 100644 --- a/src/misc/extra/extraUtilTruth.c +++ b/src/misc/extra/extraUtilTruth.c @@ -662,7 +662,7 @@ void Extra_TruthMux( unsigned * pOut, unsigned * pCof0, unsigned * pCof1, int nV for ( i = 0; i < Step; i++ ) { pOut[i] = pCof0[i]; - pOut[Step+i] = pCof1[i]; + pOut[Step+i] = pCof1[Step+i]; } pOut += 2*Step; } diff --git a/src/misc/nm/nmApi.c b/src/misc/nm/nmApi.c index 3a9ac074..e44d1ef9 100644 --- a/src/misc/nm/nmApi.c +++ b/src/misc/nm/nmApi.c @@ -46,8 +46,8 @@ Nm_Man_t * Nm_ManCreate( int nSize ) p = ALLOC( Nm_Man_t, 1 ); memset( p, 0, sizeof(Nm_Man_t) ); // set the parameters - p->nSizeFactor = 3; // determined how much larger the table should be compared to data in it - p->nGrowthFactor = 3; // determined how much the table grows after resizing + p->nSizeFactor = 4; // determined how much larger the table should be compared to data in it + p->nGrowthFactor = 4; // determined how much the table grows after resizing // allocate and clean the bins p->nBins = Cudd_PrimeNm(p->nSizeFactor*nSize); p->pBinsI2N = ALLOC( Nm_Entry_t *, p->nBins ); diff --git a/src/misc/nm/nmTable.c b/src/misc/nm/nmTable.c index 65f16e04..4243244d 100644 --- a/src/misc/nm/nmTable.c +++ b/src/misc/nm/nmTable.c @@ -44,7 +44,7 @@ static unsigned Nm_HashString( char * pName, int TableSize ) }; unsigned i, Key = 0; for ( i = 0; pName[i] != '\0'; i++ ) - Key ^= s_Primes[i%10]*pName[i]*pName[i]; + Key ^= s_Primes[i%10]*pName[i]*pName[i]*pName[i]; return Key % TableSize; } diff --git a/src/misc/vec/vecPtr.h b/src/misc/vec/vecPtr.h index f2413703..07ac0f17 100644 --- a/src/misc/vec/vecPtr.h +++ b/src/misc/vec/vecPtr.h @@ -525,10 +525,18 @@ static inline int Vec_PtrFind( Vec_Ptr_t * p, void * Entry ) static inline void Vec_PtrRemove( Vec_Ptr_t * p, void * Entry ) { int i; + // delete assuming that it is closer to the end + for ( i = p->nSize - 1; i >= 0; i-- ) + if ( p->pArray[i] == Entry ) + break; + assert( i >= 0 ); +/* + // delete assuming that it is closer to the beginning for ( i = 0; i < p->nSize; i++ ) if ( p->pArray[i] == Entry ) break; assert( i < p->nSize ); +*/ for ( i++; i < p->nSize; i++ ) p->pArray[i-1] = p->pArray[i]; p->nSize--; |