summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlan Mishchenko <alanmi@berkeley.edu>2013-09-29 11:57:25 -0700
committerAlan Mishchenko <alanmi@berkeley.edu>2013-09-29 11:57:25 -0700
commit1f16b97c89dc85ff088831c077199993251d83ff (patch)
tree3c22a6ad0215c251389ce0b19a7fa7590840dc93
parent738619980a251676ef7f6e9198cc1df15df2f6df (diff)
downloadabc-1f16b97c89dc85ff088831c077199993251d83ff.tar.gz
abc-1f16b97c89dc85ff088831c077199993251d83ff.tar.bz2
abc-1f16b97c89dc85ff088831c077199993251d83ff.zip
Changing default values.
-rw-r--r--abc.rc1
-rw-r--r--src/aig/gia/giaBalance.c5
-rw-r--r--src/misc/vec/vecHash.h13
-rw-r--r--src/opt/dau/dauGia.c2
4 files changed, 18 insertions, 3 deletions
diff --git a/abc.rc b/abc.rc
index 74dcbc49..3e652a97 100644
--- a/abc.rc
+++ b/abc.rc
@@ -123,6 +123,7 @@ alias blif2aig "undc; strash; zero"
alias v2p "&vta_gla; &ps; &gla_derive; &put; w 1.aig; pdr -v"
alias g2p "&ps; &gla_derive; &put; w 2.aig; pdr -v"
alias &fx_ "&put; sweep; sop; fx; st; &get"
+alias &sw_ "&put; sweep; st; &get"
# resubstitution scripts for the IWLS paper
alias src_rw "st; rw -l; rwz -l; rwz -l"
diff --git a/src/aig/gia/giaBalance.c b/src/aig/gia/giaBalance.c
index 081ad9d7..b9ab2733 100644
--- a/src/aig/gia/giaBalance.c
+++ b/src/aig/gia/giaBalance.c
@@ -491,7 +491,7 @@ void Dam_ManCreatePairs( Dam_Man_t * p, int fVerbose )
Dam_ManCollectSets( p );
vSuper = p->pGia->vSuper;
vDivs = Vec_IntAlloc( Gia_ManObjNum(p->pGia) );
- vHash = Hash_IntManStart( Gia_ManObjNum(p->pGia) );
+ vHash = Hash_IntManStart( Gia_ManObjNum(p->pGia)/2 );
Dam_ManCreateMultiRefs( p, &vRefsAnd, &vRefsXor );
Gia_ManForEachAnd( p->pGia, pObj, i )
{
@@ -537,8 +537,9 @@ void Dam_ManCreatePairs( Dam_Man_t * p, int fVerbose )
}
Vec_IntFree( vRefsAnd );
Vec_IntFree( vRefsXor );
+// Hash_IntManProfile( vHash );
// remove entries that appear only once
- p->vHash = Hash_IntManStart( 2 * nDivsUsed );
+ p->vHash = Hash_IntManStart( 3 * nDivsUsed /2 );
p->vCounts = Vec_FltAlloc( 2 * nDivsUsed ); Vec_FltPush( p->vCounts, ABC_INFINITY );
p->vQue = Vec_QueAlloc( Vec_FltCap(p->vCounts) );
Vec_QueSetCosts( p->vQue, Vec_FltArrayP(p->vCounts) );
diff --git a/src/misc/vec/vecHash.h b/src/misc/vec/vecHash.h
index e695f154..cdccb308 100644
--- a/src/misc/vec/vecHash.h
+++ b/src/misc/vec/vecHash.h
@@ -102,6 +102,19 @@ static inline int Hash_IntManEntryNum( Hash_IntMan_t * p )
{
return Vec_IntSize(p->vObjs)/4 - 1;
}
+static inline void Hash_IntManProfile( Hash_IntMan_t * p )
+{
+ Hash_IntObj_t * pObj;
+ int i, Count, Entry;
+ Vec_IntForEachEntry( p->vTable, Entry, i )
+ {
+ Count = 0;
+ for ( pObj = Hash_IntObj( p, Entry ); pObj; pObj = Hash_IntObj( p, pObj->iNext ) )
+ Count++;
+ printf( "%d ", Count );
+ }
+ printf( "\n" );
+}
/**Function*************************************************************
diff --git a/src/opt/dau/dauGia.c b/src/opt/dau/dauGia.c
index 7fc7c92e..b795336d 100644
--- a/src/opt/dau/dauGia.c
+++ b/src/opt/dau/dauGia.c
@@ -217,7 +217,7 @@ int Dsm_ManDeriveGia( void * p, word uTruth, Vec_Int_t * vLeaves, Vec_Int_t * vC
int nSizeNonDec;
m_Calls++;
// static int Counter = 0; Counter++;
- nSizeNonDec = Dau_DsdDecompose( &uTruth, Vec_IntSize(vLeaves), 1, 1, pDsd );
+ nSizeNonDec = Dau_DsdDecompose( &uTruth, Vec_IntSize(vLeaves), 0, 1, pDsd );
if ( nSizeNonDec )
m_NonDsd++;
// printf( "%s\n", pDsd );