summaryrefslogtreecommitdiffstats
path: root/src/aig/gia/giaSimBase.c
diff options
context:
space:
mode:
authorAlan Mishchenko <alanmi@berkeley.edu>2020-03-25 12:17:12 -0700
committerAlan Mishchenko <alanmi@berkeley.edu>2020-03-25 12:17:12 -0700
commita277d450bf7c624392d41739788f115f1d655556 (patch)
treed24c5a50f62bbc12e0d93b1e78d5be9dfe65c80e /src/aig/gia/giaSimBase.c
parentc7bc6b63298f532270b6c696a6f36545429dfb52 (diff)
downloadabc-a277d450bf7c624392d41739788f115f1d655556.tar.gz
abc-a277d450bf7c624392d41739788f115f1d655556.tar.bz2
abc-a277d450bf7c624392d41739788f115f1d655556.zip
Experiments with simulation-based engines.
Diffstat (limited to 'src/aig/gia/giaSimBase.c')
-rw-r--r--src/aig/gia/giaSimBase.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/aig/gia/giaSimBase.c b/src/aig/gia/giaSimBase.c
index afa13691..9f07da15 100644
--- a/src/aig/gia/giaSimBase.c
+++ b/src/aig/gia/giaSimBase.c
@@ -936,9 +936,12 @@ Vec_Wrd_t * Gia_ManSimRelDeriveFuncs2( Gia_Man_t * p, Vec_Wrd_t * vRel, int nOut
else
{
printf( "The relation was successfully determized with don't-cares for %d patterns.\n", 64 * nWords );
- printf( "Don't-cares in each output:" );
for ( k = 0; k < nOuts; k++ )
- printf( " %d = %d", k, nDCs[k] );
+ {
+ int nOffs = Abc_TtCountOnesVec( Vec_WrdEntryP(vFuncs, (2*k+0)*nWords), nWords );
+ int nOns = Abc_TtCountOnesVec( Vec_WrdEntryP(vFuncs, (2*k+1)*nWords), nWords );
+ printf( "%4d : Off = %6d On = %6d Dc = %6d (%6.2f %%)", k, nOffs, nOns, nDCs[k], 100.0*nDCs[k]/(64*nWords) );
+ }
printf( "\n" );
}
Gia_ManSimRelCheckFuncs( p, vRel, nOuts, vFuncs );
@@ -1512,7 +1515,7 @@ void Gia_RsbUpdateRemove( Gia_RsbMan_t * p, int Index )
int Gia_RsbRemovalCost( Gia_RsbMan_t * p, int Index )
{
Vec_Int_t * vTemp[2][2];
- unsigned Mask = Abc_InfoMask( Index );
+ //unsigned Mask = Abc_InfoMask( Index );
int m, m2, Cost = 0, nLeaves = 1 << Vec_IntSize(p->vObjs);
assert( Vec_WecSize(p->vSets[0]) == (1 << Vec_IntSize(p->vObjs)) );
assert( Vec_WecSize(p->vSets[1]) == (1 << Vec_IntSize(p->vObjs)) );