summaryrefslogtreecommitdiffstats
path: root/src/map/mapper
diff options
context:
space:
mode:
Diffstat (limited to 'src/map/mapper')
-rw-r--r--src/map/mapper/mapperTree.c11
-rw-r--r--src/map/mapper/mapperTruth.c10
2 files changed, 19 insertions, 2 deletions
diff --git a/src/map/mapper/mapperTree.c b/src/map/mapper/mapperTree.c
index 61e12748..04576045 100644
--- a/src/map/mapper/mapperTree.c
+++ b/src/map/mapper/mapperTree.c
@@ -467,6 +467,17 @@ int Map_LibraryDeriveGateInfo( Map_SuperLib_t * pLib, st_table * tExcludeGate )
pGate->nPhases = Map_CanonComputeSlow( pLib->uTruths, pLib->nVarsMax, nRealVars, pGate->uTruth, pGate->uPhases, uCanon );
// add the supergate into the table by its N-canonical table
Map_SuperTableInsertC( pLib->tTableC, uCanon, pGate );
+/*
+ {
+ int uCanon1, uCanon2;
+ uCanon1 = uCanon[0];
+ pGate->uTruth[0] = ~pGate->uTruth[0];
+ pGate->uTruth[1] = ~pGate->uTruth[1];
+ Map_CanonComputeSlow( pLib->uTruths, pLib->nVarsMax, nRealVars, pGate->uTruth, pGate->uPhases, uCanon );
+ uCanon2 = uCanon[0];
+Rwt_Man5ExploreCount( uCanon1 < uCanon2 ? uCanon1 : uCanon2 );
+ }
+*/
}
// sort the gates in each line
Map_SuperTableSortSupergatesByDelay( pLib->tTableC, pLib->nSupersAll );
diff --git a/src/map/mapper/mapperTruth.c b/src/map/mapper/mapperTruth.c
index f79dac01..97e64920 100644
--- a/src/map/mapper/mapperTruth.c
+++ b/src/map/mapper/mapperTruth.c
@@ -91,6 +91,7 @@ void Map_MappingTruths( Map_Man_t * pMan )
void Map_TruthsCut( Map_Man_t * p, Map_Cut_t * pCut )
{
unsigned uTruth[2], uCanon[2];
+// unsigned uCanon1, uCanon2;
unsigned char uPhases[16];
// generally speaking, 1-input cut can be matched into a wire!
@@ -98,8 +99,6 @@ void Map_TruthsCut( Map_Man_t * p, Map_Cut_t * pCut )
return;
Map_TruthsCutOne( p, pCut, uTruth );
-//assert( pCut->nLeaves < 5 );
-//Rwt_ManExploreCount( uTruth[0] & 0xFFFF );
// compute the canonical form for the positive phase
Map_CanonComputeSlow( p->uTruths, p->nVarsMax, pCut->nLeaves, uTruth, uPhases, uCanon );
@@ -107,6 +106,8 @@ void Map_TruthsCut( Map_Man_t * p, Map_Cut_t * pCut )
pCut->M[1].uPhase = uPhases[0];
p->nCanons++;
+//uCanon1 = uCanon[0] & 0xFFFF;
+
// compute the canonical form for the negative phase
uTruth[0] = ~uTruth[0];
uTruth[1] = ~uTruth[1];
@@ -115,6 +116,11 @@ void Map_TruthsCut( Map_Man_t * p, Map_Cut_t * pCut )
pCut->M[0].uPhase = uPhases[0];
p->nCanons++;
+//uCanon2 = uCanon[0] & 0xFFFF;
+
+//assert( p->nVarsMax == 4 );
+//Rwt_Man4ExploreCount( uCanon1 < uCanon2 ? uCanon1 : uCanon2 );
+
// restore the truth table
uTruth[0] = ~uTruth[0];
uTruth[1] = ~uTruth[1];