summaryrefslogtreecommitdiffstats
path: root/src/map/if/if.h
diff options
context:
space:
mode:
authorAlan Mishchenko <alanmi@berkeley.edu>2011-10-02 16:39:51 +0700
committerAlan Mishchenko <alanmi@berkeley.edu>2011-10-02 16:39:51 +0700
commit0f9dacb7bec32bc19afb068b4bcf53a781ab2a0e (patch)
treeee537413b0ce709fdc8d221107186f1f5967ec75 /src/map/if/if.h
parente6e6a3cf9ecfccf71cba45273ea866e7e2526f0a (diff)
downloadabc-0f9dacb7bec32bc19afb068b4bcf53a781ab2a0e.tar.gz
abc-0f9dacb7bec32bc19afb068b4bcf53a781ab2a0e.tar.bz2
abc-0f9dacb7bec32bc19afb068b4bcf53a781ab2a0e.zip
Changes to the matching procedure.
Diffstat (limited to 'src/map/if/if.h')
-rw-r--r--src/map/if/if.h17
1 files changed, 12 insertions, 5 deletions
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 );