summaryrefslogtreecommitdiffstats
path: root/src/map/if/ifMap.c
diff options
context:
space:
mode:
authorAlan Mishchenko <alanmi@berkeley.edu>2012-04-12 20:19:47 -0700
committerAlan Mishchenko <alanmi@berkeley.edu>2012-04-12 20:19:47 -0700
commit85f6d2526e82f9b7c13dd3af348c3ef5c3909358 (patch)
treef058fab9f2140fa4cad2db38514fb2851751a9bd /src/map/if/ifMap.c
parentb1a57b2ae93ae522dac2d823f8468ea33bc282ef (diff)
downloadabc-85f6d2526e82f9b7c13dd3af348c3ef5c3909358.tar.gz
abc-85f6d2526e82f9b7c13dd3af348c3ef5c3909358.tar.bz2
abc-85f6d2526e82f9b7c13dd3af348c3ef5c3909358.zip
Bug fix in SOP balancing with structural choices.
Diffstat (limited to 'src/map/if/ifMap.c')
-rw-r--r--src/map/if/ifMap.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/map/if/ifMap.c b/src/map/if/ifMap.c
index e2c2ff0a..570fb4ae 100644
--- a/src/map/if/ifMap.c
+++ b/src/map/if/ifMap.c
@@ -339,6 +339,8 @@ void If_ObjPerformMappingChoice( If_Man_t * p, If_Obj_t * pObj, int Mode, int fP
// set the phase attribute
assert( pCut->fCompl == 0 );
pCut->fCompl ^= (pObj->fPhase ^ pTemp->fPhase); // why ^= ?
+ if ( p->pPars->fDelayOpt && pCut->fCompl )
+ continue;
// compute area of the cut (this area may depend on the application specific cost)
pCut->Area = (Mode == 2)? If_CutAreaDerefed( p, pCut ) : If_CutAreaFlow( p, pCut );
if ( p->pPars->fEdge )