summaryrefslogtreecommitdiffstats
path: root/src/map/if/ifCut.c
diff options
context:
space:
mode:
authorAlan Mishchenko <alanmi@berkeley.edu>2012-11-19 23:42:05 -0800
committerAlan Mishchenko <alanmi@berkeley.edu>2012-11-19 23:42:05 -0800
commitffbe3bc5767c597b3ca612a12e671749f23ca34f (patch)
tree5422b46e65aef95dea810fd82965a7301ba3397b /src/map/if/ifCut.c
parentd671adbb86b241a71e15bcd67831b267d0de6abf (diff)
downloadabc-ffbe3bc5767c597b3ca612a12e671749f23ca34f.tar.gz
abc-ffbe3bc5767c597b3ca612a12e671749f23ca34f.tar.bz2
abc-ffbe3bc5767c597b3ca612a12e671749f23ca34f.zip
DSD manager.
Diffstat (limited to 'src/map/if/ifCut.c')
-rw-r--r--src/map/if/ifCut.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/map/if/ifCut.c b/src/map/if/ifCut.c
index 8e89977f..ca985910 100644
--- a/src/map/if/ifCut.c
+++ b/src/map/if/ifCut.c
@@ -418,11 +418,13 @@ int If_CutMerge( If_Man_t * p, If_Cut_t * pC0, If_Cut_t * pC1, If_Cut_t * pC )
p->nShared = nLimit;
pC->nLeaves = nLimit;
pC->uSign = pC0->uSign | pC1->uSign;
+ p->uSharedMask = Abc_InfoMask( nLimit );
return 1;
}
// compare two cuts with different numbers
i = k = c = s = 0;
+ p->uSharedMask = 0;
while ( 1 )
{
if ( c == nLimit ) return 0;
@@ -440,6 +442,7 @@ int If_CutMerge( If_Man_t * p, If_Cut_t * pC0, If_Cut_t * pC1, If_Cut_t * pC )
}
else
{
+ p->uSharedMask |= (1 << c);
p->pPerm[0][i] = p->pPerm[1][k] = p->pPerm[2][s++] = c;
pC->pLeaves[c++] = pC0->pLeaves[i++]; k++;
if ( i == nSizeC0 ) goto FlushCut1;