summaryrefslogtreecommitdiffstats
path: root/src/aig/gia
diff options
context:
space:
mode:
Diffstat (limited to 'src/aig/gia')
-rw-r--r--src/aig/gia/gia.h1
-rw-r--r--src/aig/gia/giaHash.c7
2 files changed, 8 insertions, 0 deletions
diff --git a/src/aig/gia/gia.h b/src/aig/gia/gia.h
index 2fce93b8..1160819e 100644
--- a/src/aig/gia/gia.h
+++ b/src/aig/gia/gia.h
@@ -1426,6 +1426,7 @@ extern int Gia_ManHashLookupInt( Gia_Man_t * p, int iLit0, int i
extern int Gia_ManHashLookup( Gia_Man_t * p, Gia_Obj_t * p0, Gia_Obj_t * p1 );
extern int Gia_ManHashAndMulti( Gia_Man_t * p, Vec_Int_t * vLits );
extern int Gia_ManHashAndMulti2( Gia_Man_t * p, Vec_Int_t * vLits );
+extern int Gia_ManHashDualMiter( Gia_Man_t * p, Vec_Int_t * vOuts );
/*=== giaIf.c ===========================================================*/
extern void Gia_ManPrintMappingStats( Gia_Man_t * p, char * pDumpFile );
extern void Gia_ManPrintPackingStats( Gia_Man_t * p );
diff --git a/src/aig/gia/giaHash.c b/src/aig/gia/giaHash.c
index d9873d76..7da223ca 100644
--- a/src/aig/gia/giaHash.c
+++ b/src/aig/gia/giaHash.c
@@ -806,6 +806,13 @@ int Gia_ManHashAndMulti2( Gia_Man_t * p, Vec_Int_t * vLits )
iRes = Gia_ManHashAnd( p, iRes, iLit );
return iRes;
}
+int Gia_ManHashDualMiter( Gia_Man_t * p, Vec_Int_t * vOuts )
+{
+ int i, iLit0, iLit1, iRes = 1;
+ Vec_IntForEachEntryDouble( vOuts, iLit0, iLit1, i )
+ iRes = Gia_ManHashOr( p, iRes, Gia_ManHashXor(p, iLit0, iLit1) );
+ return iRes;
+}
////////////////////////////////////////////////////////////////////////
/// END OF FILE ///