From 0f9dacb7bec32bc19afb068b4bcf53a781ab2a0e Mon Sep 17 00:00:00 2001 From: Alan Mishchenko Date: Sun, 2 Oct 2011 16:39:51 +0700 Subject: Changes to the matching procedure. --- src/map/if/if.h | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) (limited to 'src/map/if/if.h') diff --git a/src/map/if/if.h b/src/map/if/if.h index 295491c5..a42c1d79 100644 --- a/src/map/if/if.h +++ b/src/map/if/if.h @@ -121,7 +121,7 @@ struct If_Par_t_ float * pTimesReq; // required times int (* pFuncCost) (If_Cut_t *); // procedure to compute the user's cost of a cut int (* pFuncUser) (If_Man_t *, If_Obj_t *, If_Cut_t *); // procedure called for each cut when cut computation is finished - int (* pFuncCell) (unsigned *, int, int, char *); // procedure called for cut functions + int (* pFuncCell) (If_Man_t *, unsigned *, int, int, char *); // procedure called for cut functions void * pReoMan; // reordering manager }; @@ -191,6 +191,13 @@ struct If_Man_t_ // timing manager Tim_Man_t * pManTim; Vec_Int_t * vCoAttrs; // CO attributes 0=optimize; 1=keep; 2=relax + // hash table for functions + int nTableSize; // hash table size + int nTableEntries; // hash table entries + void ** pHashTable; // hash table bins + Mem_Fixed_t * pMemEntries; // memory manager for hash table entries + + // statistics // int timeTruth; }; @@ -416,10 +423,10 @@ extern float If_CutPowerRef( If_Man_t * p, If_Cut_t * pCut, If_Obj_t * extern float If_CutPowerDerefed( If_Man_t * p, If_Cut_t * pCut, If_Obj_t * pRoot ); extern float If_CutPowerRefed( If_Man_t * p, If_Cut_t * pCut, If_Obj_t * pRoot ); /*=== ifDec.c =============================================================*/ -extern int If_CutPerformCheck07( unsigned * pTruth, int nVars, int nLeaves, char * pStr ); -extern int If_CutPerformCheck08( unsigned * pTruth, int nVars, int nLeaves, char * pStr ); -extern int If_CutPerformCheck10( unsigned * pTruth, int nVars, int nLeaves, char * pStr ); -extern int If_CutPerformCheck16( unsigned * pTruth, int nVars, int nLeaves, char * pStr ); +extern int If_CutPerformCheck07( If_Man_t * p, unsigned * pTruth, int nVars, int nLeaves, char * pStr ); +extern int If_CutPerformCheck08( If_Man_t * p, unsigned * pTruth, int nVars, int nLeaves, char * pStr ); +extern int If_CutPerformCheck10( If_Man_t * p, unsigned * pTruth, int nVars, int nLeaves, char * pStr ); +extern int If_CutPerformCheck16( If_Man_t * p, unsigned * pTruth, int nVars, int nLeaves, char * pStr ); extern float If_CutDelayLutStruct( If_Man_t * p, If_Cut_t * pCut, char * pStr, float WireDelay ); /*=== ifLib.c =============================================================*/ extern If_Lib_t * If_LutLibRead( char * FileName ); -- cgit v1.2.3