diff options
Diffstat (limited to 'src/map/if/ifUtil.c')
-rw-r--r-- | src/map/if/ifUtil.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/map/if/ifUtil.c b/src/map/if/ifUtil.c index 4b136f55..797d853d 100644 --- a/src/map/if/ifUtil.c +++ b/src/map/if/ifUtil.c @@ -269,7 +269,11 @@ float If_ManScanMappingSeq_rec( If_Man_t * p, If_Obj_t * pObj, Vec_Ptr_t * vMapp If_Cut_t * pCutBest; float aArea; int i, Shift; - if ( pObj->nRefs++ || If_ObjIsCi(pObj) || If_ObjIsConst1(pObj) ) + // treat latches transparently + if ( If_ObjIsLatch(pObj) ) + return If_ManScanMappingSeq_rec( p, If_ObjFanin0(pObj), vMapped ); + // consider trivial cases + if ( pObj->nRefs++ || If_ObjIsPi(pObj) || If_ObjIsConst1(pObj) ) return 0.0; // store the node in the structure by level assert( If_ObjIsAnd(pObj) ); |