summaryrefslogtreecommitdiffstats
path: root/src/map/if/ifMap.c
diff options
context:
space:
mode:
authorAlan Mishchenko <alanmi@berkeley.edu>2020-10-29 17:21:37 -0700
committerAlan Mishchenko <alanmi@berkeley.edu>2020-10-29 17:21:37 -0700
commit73f8b598ac0809f646007c84504ac6afb2a922e8 (patch)
tree870b335d7179a50df725c1fc64bfa8c417c9e9a0 /src/map/if/ifMap.c
parentb2aa245eaacb47837d9a9d63b231903888adfe13 (diff)
downloadabc-73f8b598ac0809f646007c84504ac6afb2a922e8.tar.gz
abc-73f8b598ac0809f646007c84504ac6afb2a922e8.tar.bz2
abc-73f8b598ac0809f646007c84504ac6afb2a922e8.zip
Rare bug fix in mapping with choices.
Diffstat (limited to 'src/map/if/ifMap.c')
-rw-r--r--src/map/if/ifMap.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/map/if/ifMap.c b/src/map/if/ifMap.c
index bd8ebed7..759ae9be 100644
--- a/src/map/if/ifMap.c
+++ b/src/map/if/ifMap.c
@@ -516,7 +516,8 @@ void If_ObjPerformMappingChoice( If_Man_t * p, If_Obj_t * pObj, int Mode, int fP
// remove elementary cuts
for ( pTemp = pObj; pTemp; pTemp = pTemp->pEquiv )
- pTemp->pCutSet->nCuts--;
+ if ( pTemp != pObj || pTemp->pCutSet->nCuts > 1 )
+ pTemp->pCutSet->nCuts--;
// update the cutset of the node
pCutSet = pObj->pCutSet;