ABC: A System for Sequential Synthesis and Verification
 
Loading...
Searching...
No Matches
ivyResyn.c
Go to the documentation of this file.
1
20
21#include "ivy.h"
22
24
25
29
33
45Ivy_Man_t * Ivy_ManResyn0( Ivy_Man_t * pMan, int fUpdateLevel, int fVerbose )
46{
47 abctime clk;
48 Ivy_Man_t * pTemp;
49
50if ( fVerbose ) { printf( "Original:\n" ); }
51if ( fVerbose ) Ivy_ManPrintStats( pMan );
52
53clk = Abc_Clock();
54 pMan = Ivy_ManBalance( pMan, fUpdateLevel );
55if ( fVerbose ) { printf( "\n" ); }
56if ( fVerbose ) { ABC_PRT( "Balance", Abc_Clock() - clk ); }
57if ( fVerbose ) Ivy_ManPrintStats( pMan );
58
59// Ivy_ManRewriteAlg( pMan, fUpdateLevel, 0 );
60clk = Abc_Clock();
61 Ivy_ManRewritePre( pMan, fUpdateLevel, 0, 0 );
62if ( fVerbose ) { printf( "\n" ); }
63if ( fVerbose ) { ABC_PRT( "Rewrite", Abc_Clock() - clk ); }
64if ( fVerbose ) Ivy_ManPrintStats( pMan );
65
66clk = Abc_Clock();
67 pMan = Ivy_ManBalance( pTemp = pMan, fUpdateLevel );
68 Ivy_ManStop( pTemp );
69if ( fVerbose ) { printf( "\n" ); }
70if ( fVerbose ) { ABC_PRT( "Balance", Abc_Clock() - clk ); }
71if ( fVerbose ) Ivy_ManPrintStats( pMan );
72 return pMan;
73}
74
86Ivy_Man_t * Ivy_ManResyn( Ivy_Man_t * pMan, int fUpdateLevel, int fVerbose )
87{
88 abctime clk;
89 Ivy_Man_t * pTemp;
90
91if ( fVerbose ) { printf( "Original:\n" ); }
92if ( fVerbose ) Ivy_ManPrintStats( pMan );
93
94clk = Abc_Clock();
95 pMan = Ivy_ManBalance( pMan, fUpdateLevel );
96if ( fVerbose ) { printf( "\n" ); }
97if ( fVerbose ) { ABC_PRT( "Balance", Abc_Clock() - clk ); }
98if ( fVerbose ) Ivy_ManPrintStats( pMan );
99
100// Ivy_ManRewriteAlg( pMan, fUpdateLevel, 0 );
101clk = Abc_Clock();
102 Ivy_ManRewritePre( pMan, fUpdateLevel, 0, 0 );
103if ( fVerbose ) { printf( "\n" ); }
104if ( fVerbose ) { ABC_PRT( "Rewrite", Abc_Clock() - clk ); }
105if ( fVerbose ) Ivy_ManPrintStats( pMan );
106
107clk = Abc_Clock();
108 pMan = Ivy_ManBalance( pTemp = pMan, fUpdateLevel );
109 Ivy_ManStop( pTemp );
110if ( fVerbose ) { printf( "\n" ); }
111if ( fVerbose ) { ABC_PRT( "Balance", Abc_Clock() - clk ); }
112if ( fVerbose ) Ivy_ManPrintStats( pMan );
113
114// Ivy_ManRewriteAlg( pMan, fUpdateLevel, 1 );
115clk = Abc_Clock();
116 Ivy_ManRewritePre( pMan, fUpdateLevel, 1, 0 );
117if ( fVerbose ) { printf( "\n" ); }
118if ( fVerbose ) { ABC_PRT( "Rewrite", Abc_Clock() - clk ); }
119if ( fVerbose ) Ivy_ManPrintStats( pMan );
120
121clk = Abc_Clock();
122 pMan = Ivy_ManBalance( pTemp = pMan, fUpdateLevel );
123 Ivy_ManStop( pTemp );
124if ( fVerbose ) { printf( "\n" ); }
125if ( fVerbose ) { ABC_PRT( "Balance", Abc_Clock() - clk ); }
126if ( fVerbose ) Ivy_ManPrintStats( pMan );
127
128// Ivy_ManRewriteAlg( pMan, fUpdateLevel, 1 );
129clk = Abc_Clock();
130 Ivy_ManRewritePre( pMan, fUpdateLevel, 1, 0 );
131if ( fVerbose ) { printf( "\n" ); }
132if ( fVerbose ) { ABC_PRT( "Rewrite", Abc_Clock() - clk ); }
133if ( fVerbose ) Ivy_ManPrintStats( pMan );
134
135clk = Abc_Clock();
136 pMan = Ivy_ManBalance( pTemp = pMan, fUpdateLevel );
137 Ivy_ManStop( pTemp );
138if ( fVerbose ) { printf( "\n" ); }
139if ( fVerbose ) { ABC_PRT( "Balance", Abc_Clock() - clk ); }
140if ( fVerbose ) Ivy_ManPrintStats( pMan );
141 return pMan;
142}
143
155Ivy_Man_t * Ivy_ManRwsat( Ivy_Man_t * pMan, int fVerbose )
156{
157 abctime clk;
158 Ivy_Man_t * pTemp;
159
160if ( fVerbose ) { printf( "Original:\n" ); }
161if ( fVerbose ) Ivy_ManPrintStats( pMan );
162
163clk = Abc_Clock();
164 Ivy_ManRewritePre( pMan, 0, 0, 0 );
165if ( fVerbose ) { printf( "\n" ); }
166if ( fVerbose ) { ABC_PRT( "Rewrite", Abc_Clock() - clk ); }
167if ( fVerbose ) Ivy_ManPrintStats( pMan );
168
169clk = Abc_Clock();
170 pMan = Ivy_ManBalance( pTemp = pMan, 0 );
171// pMan = Ivy_ManDup( pTemp = pMan );
172 Ivy_ManStop( pTemp );
173if ( fVerbose ) { printf( "\n" ); }
174if ( fVerbose ) { ABC_PRT( "Balance", Abc_Clock() - clk ); }
175if ( fVerbose ) Ivy_ManPrintStats( pMan );
176
177/*
178clk = Abc_Clock();
179 Ivy_ManRewritePre( pMan, 0, 0, 0 );
180if ( fVerbose ) { printf( "\n" ); }
181if ( fVerbose ) { ABC_PRT( "Rewrite", Abc_Clock() - clk ); }
182if ( fVerbose ) Ivy_ManPrintStats( pMan );
183
184clk = Abc_Clock();
185 pMan = Ivy_ManBalance( pTemp = pMan, 0 );
186 Ivy_ManStop( pTemp );
187if ( fVerbose ) { printf( "\n" ); }
188if ( fVerbose ) { ABC_PRT( "Balance", Abc_Clock() - clk ); }
189if ( fVerbose ) Ivy_ManPrintStats( pMan );
190*/
191 return pMan;
192}
193
194
198
199
201
ABC_INT64_T abctime
Definition abc_global.h:332
#define ABC_PRT(a, t)
Definition abc_global.h:255
#define ABC_NAMESPACE_IMPL_START
#define ABC_NAMESPACE_IMPL_END
Ivy_Man_t * Ivy_ManResyn(Ivy_Man_t *pMan, int fUpdateLevel, int fVerbose)
Definition ivyResyn.c:86
Ivy_Man_t * Ivy_ManRwsat(Ivy_Man_t *pMan, int fVerbose)
Definition ivyResyn.c:155
ABC_NAMESPACE_IMPL_START Ivy_Man_t * Ivy_ManResyn0(Ivy_Man_t *pMan, int fUpdateLevel, int fVerbose)
DECLARATIONS ///.
Definition ivyResyn.c:45
typedefABC_NAMESPACE_HEADER_START struct Ivy_Man_t_ Ivy_Man_t
INCLUDES ///.
Definition ivy.h:46
void Ivy_ManStop(Ivy_Man_t *p)
Definition ivyMan.c:238
void Ivy_ManPrintStats(Ivy_Man_t *p)
Definition ivyMan.c:456
int Ivy_ManRewritePre(Ivy_Man_t *p, int fUpdateLevel, int fUseZeroCost, int fVerbose)
FUNCTION DEFINITIONS ///.
Definition ivyRwr.c:55
Ivy_Man_t * Ivy_ManBalance(Ivy_Man_t *p, int fUpdateLevel)
FUNCTION DECLARATIONS ///.
Definition ivyBalance.c:51