From 812821554c0809b2a61d2c2882dbbbd8e8b1a784 Mon Sep 17 00:00:00 2001 From: Alan Mishchenko Date: Sun, 14 Apr 2019 20:45:24 -0700 Subject: Adding miter construction with one bit-level output for each pair of word-level outputs. --- src/aig/gia/gia.h | 1 + src/aig/gia/giaHash.c | 7 +++++++ 2 files changed, 8 insertions(+) (limited to 'src/aig') 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 /// -- cgit v1.2.3