summaryrefslogtreecommitdiffstats
path: root/src/aig/gia/giaResub.c
diff options
context:
space:
mode:
authorAlan Mishchenko <alanmi@berkeley.edu>2021-08-22 13:05:28 -0700
committerAlan Mishchenko <alanmi@berkeley.edu>2021-08-22 13:05:28 -0700
commit625ccde611da6eecf3bfdefc7632cd7a801767df (patch)
tree3b1eef8ac43a3e753780c9113dc0c00f081db8f0 /src/aig/gia/giaResub.c
parent3b4a4481a13444f7e427d6b04b5083921ea15a95 (diff)
downloadabc-625ccde611da6eecf3bfdefc7632cd7a801767df.tar.gz
abc-625ccde611da6eecf3bfdefc7632cd7a801767df.tar.bz2
abc-625ccde611da6eecf3bfdefc7632cd7a801767df.zip
Support of pair-wise miter and other changes.
Diffstat (limited to 'src/aig/gia/giaResub.c')
-rw-r--r--src/aig/gia/giaResub.c41
1 files changed, 41 insertions, 0 deletions
diff --git a/src/aig/gia/giaResub.c b/src/aig/gia/giaResub.c
index a1343290..06e002af 100644
--- a/src/aig/gia/giaResub.c
+++ b/src/aig/gia/giaResub.c
@@ -1581,6 +1581,47 @@ void Gia_ManResubTest3_()
SeeAlso []
***********************************************************************/
+void Gia_ManResubPair( Vec_Wrd_t * vOn, Vec_Wrd_t * vOff, int nWords, int nIns )
+{
+ Gia_ResbMan_t * p = Gia_ResbAlloc( nWords*2 );
+ Vec_Ptr_t * vDivs = Vec_PtrAllocSimInfo( nIns+2, nWords*2 );
+ word * pSim; int i;
+ Vec_PtrForEachEntry( word *, vDivs, pSim, i )
+ {
+ if ( i == 0 )
+ {
+ memset( pSim, 0x00, sizeof(word)*nWords );
+ memset( pSim+nWords, 0xFF, sizeof(word)*nWords );
+ }
+ else if ( i == 1 )
+ {
+ memset( pSim, 0xFF, sizeof(word)*nWords );
+ memset( pSim+nWords, 0x00, sizeof(word)*nWords );
+ }
+ else
+ {
+ memmove( pSim, Vec_WrdEntryP(vOn, (i-2)*nWords), sizeof(word)*nWords );
+ memmove( pSim+nWords, Vec_WrdEntryP(vOff, (i-2)*nWords), sizeof(word)*nWords );
+ }
+ }
+ Gia_ManResubPerform( p, vDivs, nWords*2, 100, 0, 50, 1, 1, 0 );
+ Gia_ManResubPrint( p->vGates, Vec_PtrSize(vDivs) );
+ printf( "\n" );
+ //Vec_PtrFree( vDivs );
+ Gia_ResbFree( p );
+}
+
+/**Function*************************************************************
+
+ Synopsis [Top level.]
+
+ Description []
+
+ SideEffects []
+
+ SeeAlso []
+
+***********************************************************************/
void Gia_ManCheckResub( Vec_Ptr_t * vDivs, int nWords )
{
//int i, nVars = 6, pVarSet[10] = { 2, 189, 2127, 2125, 177, 178 };