summaryrefslogtreecommitdiffstats
path: root/src/map/if/ifTime.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/map/if/ifTime.c')
-rw-r--r--src/map/if/ifTime.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/map/if/ifTime.c b/src/map/if/ifTime.c
index 9647fd76..3193c8b0 100644
--- a/src/map/if/ifTime.c
+++ b/src/map/if/ifTime.c
@@ -92,6 +92,7 @@ float If_CutDelay( If_Man_t * p, If_Obj_t * pObj, If_Cut_t * pCut )
{
static int pPinPerm[IF_MAX_LUTSIZE];
static float pPinDelays[IF_MAX_LUTSIZE];
+ char * pPerm = If_CutPerm( pCut );
If_Obj_t * pLeaf;
float Delay, DelayCur;
float * pLutDelays;
@@ -127,7 +128,7 @@ float If_CutDelay( If_Man_t * p, If_Obj_t * pObj, If_Cut_t * pCut )
assert( !p->pPars->fLiftLeaves );
If_CutForEachLeaf( p, pCut, pLeaf, i )
{
- Pin2PinDelay = pCut->pPerm ? (pCut->pPerm[i] == IF_BIG_CHAR ? -IF_BIG_CHAR : pCut->pPerm[i]) : 1;
+ Pin2PinDelay = pPerm ? (pPerm[i] == IF_BIG_CHAR ? -IF_BIG_CHAR : pPerm[i]) : 1;
DelayCur = If_ObjCutBest(pLeaf)->Delay + (float)Pin2PinDelay;
Delay = IF_MAX( Delay, DelayCur );
}
@@ -218,7 +219,7 @@ void If_CutPropagateRequired( If_Man_t * p, If_Obj_t * pObj, If_Cut_t * pCut, fl
assert( Delay == (int)pCut->Delay );
}
else
- pPerm = pCut->pPerm;
+ pPerm = If_CutPerm(pCut);
If_CutForEachLeaf( p, pCut, pLeaf, i )
{
Pin2PinDelay = pPerm ? (pPerm[i] == IF_BIG_CHAR ? -IF_BIG_CHAR : pPerm[i]) : 1;