summaryrefslogtreecommitdiffstats
path: root/src/aig/saig/saig.h
diff options
context:
space:
mode:
authorAlan Mishchenko <alanmi@berkeley.edu>2008-09-19 08:01:00 -0700
committerAlan Mishchenko <alanmi@berkeley.edu>2008-09-19 08:01:00 -0700
commit3429e6309d0fc9a2d35d81f6483258c6af2fab50 (patch)
tree6ea42f73528c9f456d5b0dea28173806cd45742d /src/aig/saig/saig.h
parent655a50101e18176f1163ccfc67cf69d86623d1f2 (diff)
downloadabc-3429e6309d0fc9a2d35d81f6483258c6af2fab50.tar.gz
abc-3429e6309d0fc9a2d35d81f6483258c6af2fab50.tar.bz2
abc-3429e6309d0fc9a2d35d81f6483258c6af2fab50.zip
Version abc80919
Diffstat (limited to 'src/aig/saig/saig.h')
-rw-r--r--src/aig/saig/saig.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/aig/saig/saig.h b/src/aig/saig/saig.h
index da194f49..81f0fcf5 100644
--- a/src/aig/saig/saig.h
+++ b/src/aig/saig/saig.h
@@ -56,6 +56,8 @@ static inline int Saig_ObjIsPi( Aig_Man_t * p, Aig_Obj_t * pObj ) {
static inline int Saig_ObjIsPo( Aig_Man_t * p, Aig_Obj_t * pObj ) { return Aig_ObjIsPo(pObj) && Aig_ObjPioNum(pObj) < Saig_ManPoNum(p); }
static inline int Saig_ObjIsLo( Aig_Man_t * p, Aig_Obj_t * pObj ) { return Aig_ObjIsPi(pObj) && Aig_ObjPioNum(pObj) >= Saig_ManPiNum(p); }
static inline int Saig_ObjIsLi( Aig_Man_t * p, Aig_Obj_t * pObj ) { return Aig_ObjIsPo(pObj) && Aig_ObjPioNum(pObj) >= Saig_ManPoNum(p); }
+static inline Aig_Obj_t * Saig_ObjLoToLi( Aig_Man_t * p, Aig_Obj_t * pObj ) { assert(Saig_ObjIsLo(p, pObj)); return (Aig_Obj_t *)Vec_PtrEntry(p->vPos, Saig_ManPoNum(p)+Aig_ObjPioNum(pObj)-Saig_ManPiNum(p)); }
+static inline Aig_Obj_t * Saig_ObjLiToLo( Aig_Man_t * p, Aig_Obj_t * pObj ) { assert(Saig_ObjIsLi(p, pObj)); return (Aig_Obj_t *)Vec_PtrEntry(p->vPis, Saig_ManPiNum(p)+Aig_ObjPioNum(pObj)-Saig_ManPoNum(p)); }
// iterator over the primary inputs/outputs
#define Saig_ManForEachPi( p, pObj, i ) \
@@ -80,6 +82,8 @@ static inline int Saig_ObjIsLi( Aig_Man_t * p, Aig_Obj_t * pObj ) {
extern int Saig_ManBmcSimple( Aig_Man_t * pAig, int nFrames, int nSizeMax, int nBTLimit, int fRewrite, int fVerbose, int * piFrame );
/*=== saigCone.c ==========================================================*/
extern void Saig_ManPrintCones( Aig_Man_t * p );
+/*=== saigDup.c ==========================================================*/
+extern Aig_Man_t * Said_ManDupOrpos( Aig_Man_t * p );
/*=== saigHaig.c ==========================================================*/
extern Aig_Man_t * Saig_ManHaigRecord( Aig_Man_t * p, int nIters, int nSteps, int fRetimingOnly, int fAddBugs, int fUseCnf, int fVerbose );
/*=== saigIoa.c ==========================================================*/