ABC: A System for Sequential Synthesis and Verification
 
Loading...
Searching...
No Matches
mainFrame.c
Go to the documentation of this file.
1
20
21#include "base/abc/abc.h"
22#include "mainInt.h"
23#include "bool/dec/dec.h"
24#include "map/if/if.h"
25#include "aig/miniaig/ndr.h"
26
27#ifdef ABC_USE_CUDD
28#include "bdd/extrab/extraBdd.h"
29#endif
30
32
33
37
38static Abc_Frame_t * s_GlobalFrame = NULL;
39
43
55Vec_Ptr_t * Abc_FrameReadStore() { return s_GlobalFrame->vStore; }
56int Abc_FrameReadStoreSize() { return Vec_PtrSize(s_GlobalFrame->vStore); }
57void * Abc_FrameReadLibLut() { return s_GlobalFrame->pLibLut; }
58void * Abc_FrameReadLibBox() { return s_GlobalFrame->pLibBox; }
59void * Abc_FrameReadLibGen() { return s_GlobalFrame->pLibGen; }
60void * Abc_FrameReadLibGen2() { return s_GlobalFrame->pLibGen2; }
61void * Abc_FrameReadLibSuper() { return s_GlobalFrame->pLibSuper; }
62void * Abc_FrameReadLibScl() { return s_GlobalFrame->pLibScl; }
63#ifdef ABC_USE_CUDD
64void * Abc_FrameReadManDd() { if ( s_GlobalFrame->dd == NULL ) s_GlobalFrame->dd = Cudd_Init( 0, 0, CUDD_UNIQUE_SLOTS, CUDD_CACHE_SLOTS, 0 ); return s_GlobalFrame->dd; }
65#endif
66void * Abc_FrameReadManDec() { if ( s_GlobalFrame->pManDec == NULL ) s_GlobalFrame->pManDec = Dec_ManStart(); return s_GlobalFrame->pManDec; }
67void * Abc_FrameReadManDsd() { return s_GlobalFrame->pManDsd; }
68void * Abc_FrameReadManDsd2() { return s_GlobalFrame->pManDsd2; }
69char * Abc_FrameReadFlag( char * pFlag ) { return Cmd_FlagReadByName( s_GlobalFrame, pFlag ); }
70Vec_Ptr_t * Abc_FrameReadSignalNames() { return s_GlobalFrame->vSignalNames; }
71char * Abc_FrameReadSpecName() { return s_GlobalFrame->pSpecName; }
72
73int Abc_FrameReadBmcFrames( Abc_Frame_t * p ) { return s_GlobalFrame->nFrames; }
74int Abc_FrameReadProbStatus( Abc_Frame_t * p ) { return s_GlobalFrame->Status; }
75void * Abc_FrameReadCex( Abc_Frame_t * p ) { return s_GlobalFrame->pCex; }
76Vec_Ptr_t * Abc_FrameReadCexVec( Abc_Frame_t * p ) { return s_GlobalFrame->vCexVec; }
77Vec_Int_t * Abc_FrameReadStatusVec( Abc_Frame_t * p ) { return s_GlobalFrame->vStatuses; }
78Vec_Ptr_t * Abc_FrameReadPoEquivs( Abc_Frame_t * p ) { return s_GlobalFrame->vPoEquivs; }
79Vec_Int_t * Abc_FrameReadPoStatuses( Abc_Frame_t * p ) { return s_GlobalFrame->vStatuses; }
80Vec_Int_t * Abc_FrameReadObjIds( Abc_Frame_t * p ) { return s_GlobalFrame->vAbcObjIds; }
81Abc_Nam_t * Abc_FrameReadJsonStrs( Abc_Frame_t * p ) { return s_GlobalFrame->pJsonStrs; }
82Vec_Wec_t * Abc_FrameReadJsonObjs( Abc_Frame_t * p ) { return s_GlobalFrame->vJsonObjs; }
83
84int Abc_FrameReadCexPiNum( Abc_Frame_t * p ) { return s_GlobalFrame->pCex->nPis; }
85int Abc_FrameReadCexRegNum( Abc_Frame_t * p ) { return s_GlobalFrame->pCex->nRegs; }
86int Abc_FrameReadCexPo( Abc_Frame_t * p ) { return s_GlobalFrame->pCex->iPo; }
87int Abc_FrameReadCexFrame( Abc_Frame_t * p ) { return s_GlobalFrame->pCex->iFrame; }
88
89void Abc_FrameInputNdr( Abc_Frame_t * pAbc, void * pData ) { Ndr_Delete(s_GlobalFrame->pNdr); s_GlobalFrame->pNdr = pData; }
90void * Abc_FrameOutputNdr( Abc_Frame_t * pAbc ) { void * pData = s_GlobalFrame->pNdr; s_GlobalFrame->pNdr = NULL; return pData; }
91int * Abc_FrameOutputNdrArray( Abc_Frame_t * pAbc ) { int * pArray = s_GlobalFrame->pNdrArray; s_GlobalFrame->pNdrArray = NULL; return pArray; }
92
93void Abc_FrameSetLibLut( void * pLib ) { s_GlobalFrame->pLibLut = pLib; }
94void Abc_FrameSetLibBox( void * pLib ) { s_GlobalFrame->pLibBox = pLib; }
95void Abc_FrameSetLibGen( void * pLib ) { s_GlobalFrame->pLibGen = pLib; }
96void Abc_FrameSetLibGen2( void * pLib ) { s_GlobalFrame->pLibGen2 = pLib; }
97void Abc_FrameSetLibSuper( void * pLib ) { s_GlobalFrame->pLibSuper = pLib; }
98void Abc_FrameSetFlag( char * pFlag, char * pValue ) { Cmd_FlagUpdateValue( s_GlobalFrame, pFlag, pValue ); }
99void Abc_FrameSetCex( Abc_Cex_t * pCex ) { ABC_FREE( s_GlobalFrame->pCex ); s_GlobalFrame->pCex = pCex; }
100void Abc_FrameSetNFrames( int nFrames ) { ABC_FREE( s_GlobalFrame->pCex ); s_GlobalFrame->nFrames = nFrames; }
101void Abc_FrameSetStatus( int Status ) { ABC_FREE( s_GlobalFrame->pCex ); s_GlobalFrame->Status = Status; }
102void Abc_FrameSetManDsd( void * pMan ) { if (s_GlobalFrame->pManDsd && s_GlobalFrame->pManDsd != pMan) If_DsdManFree((If_DsdMan_t *)s_GlobalFrame->pManDsd, 0); s_GlobalFrame->pManDsd = pMan; }
103void Abc_FrameSetManDsd2( void * pMan ) { if (s_GlobalFrame->pManDsd2 && s_GlobalFrame->pManDsd2 != pMan) If_DsdManFree((If_DsdMan_t *)s_GlobalFrame->pManDsd2, 0); s_GlobalFrame->pManDsd2 = pMan; }
104void Abc_FrameSetInv( Vec_Int_t * vInv ) { Vec_IntFreeP(&s_GlobalFrame->pAbcWlcInv); s_GlobalFrame->pAbcWlcInv = vInv; }
105void Abc_FrameSetJsonStrs( Abc_Nam_t * pStrs ) { Abc_NamDeref( s_GlobalFrame->pJsonStrs ); s_GlobalFrame->pJsonStrs = pStrs; }
106void Abc_FrameSetJsonObjs( Vec_Wec_t * vObjs ) { Vec_WecFreeP(&s_GlobalFrame->vJsonObjs ); s_GlobalFrame->vJsonObjs = vObjs; }
107void Abc_FrameSetSignalNames( Vec_Ptr_t * vNames ) { if ( s_GlobalFrame->vSignalNames ) Vec_PtrFreeFree( s_GlobalFrame->vSignalNames ); s_GlobalFrame->vSignalNames = vNames; }
108void Abc_FrameSetSpecName( char * pFileName ) { ABC_FREE( s_GlobalFrame->pSpecName ); s_GlobalFrame->pSpecName = pFileName; }
109
110int Abc_FrameIsBatchMode() { return s_GlobalFrame ? s_GlobalFrame->fBatchMode : 0; }
111void Abc_FrameSetBatchMode( int Mode ) { if ( s_GlobalFrame ) s_GlobalFrame->fBatchMode = Mode; }
112
113int Abc_FrameIsBridgeMode() { return s_GlobalFrame ? s_GlobalFrame->fBridgeMode : 0; }
114void Abc_FrameSetBridgeMode() { if ( s_GlobalFrame ) s_GlobalFrame->fBridgeMode = 1; }
115
116char * Abc_FrameReadDrivingCell() { return s_GlobalFrame->pDrivingCell; }
117float Abc_FrameReadMaxLoad() { return s_GlobalFrame->MaxLoad; }
118void Abc_FrameSetDrivingCell( char * pName ) { ABC_FREE(s_GlobalFrame->pDrivingCell); s_GlobalFrame->pDrivingCell = pName; }
119void Abc_FrameSetMaxLoad( float Load ) { s_GlobalFrame->MaxLoad = Load; }
120
121int * Abc_FrameReadArrayMapping( Abc_Frame_t * pAbc ) { return pAbc->pArray; }
122void Abc_FrameSetArrayMapping( int * p ) { ABC_FREE( s_GlobalFrame->pArray ); s_GlobalFrame->pArray = p; }
123
124int * Abc_FrameReadBoxes( Abc_Frame_t * pAbc ) { return pAbc->pBoxes; }
125void Abc_FrameSetBoxes( int * p ) { ABC_FREE( s_GlobalFrame->pBoxes ); s_GlobalFrame->pBoxes = p; }
126
138int Abc_FrameIsFlagEnabled( char * pFlag )
139{
140 char * pValue;
141 // if flag is not defined, it is not enabled
142 pValue = Abc_FrameReadFlag( pFlag );
143 if ( pValue == NULL )
144 return 0;
145 // if flag is defined but value is not empty (no parameter) or "1", it is not enabled
146 if ( strcmp(pValue, "") && strcmp(pValue, "1") )
147 return 0;
148 return 1;
149}
150
163{
164 Abc_Frame_t * p;
165 extern void define_cube_size( int n );
166 extern void set_espresso_flags();
167 // allocate and clean
168 p = ABC_CALLOC( Abc_Frame_t, 1 );
169 // get version
170 p->sVersion = Abc_UtilsGetVersion( p );
171 // set streams
172 p->Err = stderr;
173 p->Out = stdout;
174 p->Hst = NULL;
175 p->Status = -1;
176 p->nFrames = -1;
177 // set the starting step
178 p->nSteps = 1;
179 p->fBatchMode = 0;
180 // networks to be used by choice
181 p->vStore = Vec_PtrAlloc( 16 );
182 p->vAbcObjIds = Vec_IntAlloc( 0 );
183 // initialize decomposition manager
184// define_cube_size(20);
185// set_espresso_flags();
186 // initialize the trace manager
187// Abc_HManStart();
188 p->vPlugInComBinPairs = Vec_PtrAlloc( 100 );
189 return p;
190}
191
192
205{
206 extern void Rwt_ManGlobalStop();
207 extern void undefine_cube_size();
208// extern void Ivy_TruthManStop();
209// Abc_HManStop();
210// undefine_cube_size();
212// Ivy_TruthManStop();
213 if ( p->vAbcObjIds) Vec_IntFree( p->vAbcObjIds );
214 if ( p->vCexVec ) Vec_PtrFreeFree( p->vCexVec );
215 if ( p->vPoEquivs ) Vec_VecFree( (Vec_Vec_t *)p->vPoEquivs );
216 if ( p->vStatuses ) Vec_IntFree( p->vStatuses );
217 if ( p->pManDec ) Dec_ManStop( (Dec_Man_t *)p->pManDec );
218#ifdef ABC_USE_CUDD
219 if ( p->dd ) Extra_StopManager( p->dd );
220#endif
221 if ( p->vStore ) Vec_PtrFree( p->vStore );
222 if ( p->pSave1 ) Aig_ManStop( (Aig_Man_t *)p->pSave1 );
223 if ( p->pSave2 ) Aig_ManStop( (Aig_Man_t *)p->pSave2 );
224 if ( p->pSave3 ) Aig_ManStop( (Aig_Man_t *)p->pSave3 );
225 if ( p->pSave4 ) Aig_ManStop( (Aig_Man_t *)p->pSave4 );
226 if ( p->pManDsd ) If_DsdManFree( (If_DsdMan_t *)p->pManDsd, 0 );
227 if ( p->pManDsd2 ) If_DsdManFree( (If_DsdMan_t *)p->pManDsd2, 0 );
228 if ( p->pNtkBackup) Abc_NtkDelete( p->pNtkBackup );
229 if ( p->vPlugInComBinPairs )
230 {
231 char * pTemp;
232 int i;
233 Vec_PtrForEachEntry( char *, p->vPlugInComBinPairs, pTemp, i )
234 ABC_FREE( pTemp );
235 Vec_PtrFree( p->vPlugInComBinPairs );
236 }
237 Vec_IntFreeP( &p->vIndFlops );
238 Vec_PtrFreeP( &p->vLTLProperties_global );
239 if ( p->vSignalNames )
240 Vec_PtrFreeFree( p->vSignalNames );
241 ABC_FREE( p->pSpecName );
243 ABC_FREE( p->pDrivingCell );
244 ABC_FREE( p->pCex2 );
245 ABC_FREE( p->pCex );
246 Vec_IntFreeP( &p->pAbcWlcInv );
247 Abc_NamDeref( s_GlobalFrame->pJsonStrs );
248 Vec_WecFreeP( &s_GlobalFrame->vJsonObjs );
249 Ndr_Delete( s_GlobalFrame->pNdr );
250 ABC_FREE( s_GlobalFrame->pNdrArray );
251 Abc_FrameStoreStop( s_GlobalFrame );
252
253 Gia_ManStopP( &p->pGiaMiniAig );
254 Gia_ManStopP( &p->pGiaMiniLut );
255 Vec_IntFreeP( &p->vCopyMiniAig );
256 Vec_IntFreeP( &p->vCopyMiniLut );
257 ABC_FREE( p->pArray );
258 ABC_FREE( p->pBoxes );
259
260
261 ABC_FREE( p );
262 s_GlobalFrame = NULL;
263}
264
265
278{
279}
280
293{
294 p->nFrames = -1;
295 p->Status = -1;
296 ABC_FREE( p->pCex );
297}
298
311{
312 return Abc_FrameIsFlagEnabled( "progressbar" );
313}
314
315
328{
329 return p->pNtkCur;
330}
331
344{
345 return p->pGia;
346}
347
360{
361 return p->Out;
362}
363
376{
377 return p->Err;
378}
379
392{
393 int fShortNames;
394 char * pValue;
395 pValue = Cmd_FlagReadByName( p, "namemode" );
396 if ( pValue == NULL )
397 fShortNames = 0;
398 else
399 fShortNames = atoi(pValue);
400 return fShortNames;
401}
402
414int Abc_FrameSetMode( Abc_Frame_t * p, int fNameMode )
415{
416 char Buffer[2];
417 int fNameModeOld;
418 fNameModeOld = Abc_FrameReadMode( p );
419 Buffer[0] = '0' + fNameMode;
420 Buffer[1] = 0;
421 Cmd_FlagUpdateValue( p, "namemode", (char *)Buffer );
422 return fNameModeOld;
423}
424
425
442{
443 Abc_Ntk_t * pNtk, * pNtk2, * pNtk3;
444 int nNetsPresent;
445 int nNetsToSave;
446 char * pValue;
447
448 if ( p->pNtkCur == pNtkNew )
449 return;
450
451 // link it to the previous network
452 Abc_NtkSetBackup( pNtkNew, p->pNtkCur );
453 // set the step of this network
454 Abc_NtkSetStep( pNtkNew, ++p->nSteps );
455 // set this network to be the current network
456 p->pNtkCur = pNtkNew;
457
458 // remove any extra network that may happen to be in the stack
459 pValue = Cmd_FlagReadByName( p, "savesteps" );
460 // if the value of steps to save is not set, assume 1-level undo
461 if ( pValue == NULL )
462 nNetsToSave = 1;
463 else
464 nNetsToSave = atoi(pValue);
465
466 // count the network, remember the last one, and the one before the last one
467 nNetsPresent = 0;
468 pNtk2 = pNtk3 = NULL;
469 for ( pNtk = p->pNtkCur; pNtk; pNtk = Abc_NtkBackup(pNtk2) )
470 {
471 nNetsPresent++;
472 pNtk3 = pNtk2;
473 pNtk2 = pNtk;
474 }
475
476 // remove the earliest backup network if it is more steps away than we store
477 if ( nNetsPresent - 1 > nNetsToSave )
478 { // delete the last network
479 Abc_NtkDelete( pNtk2 );
480 // clean the pointer of the network before the last one
481 Abc_NtkSetBackup( pNtk3, NULL );
482 }
483}
484
497{
498 Abc_Ntk_t * pNtkCur, * pNtkBack, * pNtkBack2;
499 int iStepCur, iStepBack;
500
501 pNtkCur = p->pNtkCur;
502 pNtkBack = Abc_NtkBackup( pNtkCur );
503 iStepCur = Abc_NtkStep ( pNtkCur );
504
505 // if there is no backup nothing to reset
506 if ( pNtkBack == NULL )
507 return;
508
509 // remember the backup of the backup
510 pNtkBack2 = Abc_NtkBackup( pNtkBack );
511 iStepBack = Abc_NtkStep ( pNtkBack );
512
513 // set pNtkCur to be the next after the backup's backup
514 Abc_NtkSetBackup( pNtkCur, pNtkBack2 );
515 Abc_NtkSetStep ( pNtkCur, iStepBack );
516
517 // set pNtkCur to be the next after the backup
518 Abc_NtkSetBackup( pNtkBack, pNtkCur );
519 Abc_NtkSetStep ( pNtkBack, iStepCur );
520
521 // set the current network
522 p->pNtkCur = pNtkBack;
523}
524
525
539{
540 if ( pNtk == NULL )
541 return;
542
543 if ( Abc_NtkPoNum(pNtk) == 0 )
544 Abc_Print( 0, "The current network has no primary outputs. Some commands may not work correctly.\n" );
545
546 // transfer the parameters to the new network
547 if ( p->pNtkCur && Abc_FrameIsFlagEnabled( "backup" ) )
548 {
549 Abc_NtkSetBackup( pNtk, Abc_NtkBackup(p->pNtkCur) );
550 Abc_NtkSetStep( pNtk, Abc_NtkStep(p->pNtkCur) );
551 // delete the current network
552 Abc_NtkDelete( p->pNtkCur );
553 }
554 else
555 {
556 Abc_NtkSetBackup( pNtk, NULL );
557 Abc_NtkSetStep( pNtk, ++p->nSteps );
558 // delete the current network if present but backup is disabled
559 if ( p->pNtkCur )
560 Abc_NtkDelete( p->pNtkCur );
561 }
562 // set the new current network
563 p->pNtkCur = pNtk;
564}
565
578{
579 Abc_Ntk_t * pNtk;
580 for ( pNtk = p->pNtkCur; pNtk; pNtk = Abc_NtkBackup(pNtk) )
581 if ( Abc_NtkHasMapping(pNtk) )
582 Abc_NtkMapToSop( pNtk );
583}
584
597{
598 Abc_Ntk_t * pNtk, * pNtk2;
599 // delete all the currently saved networks
600 for ( pNtk = p->pNtkCur,
601 pNtk2 = pNtk? Abc_NtkBackup(pNtk): NULL;
602 pNtk;
603 pNtk = pNtk2,
604 pNtk2 = pNtk? Abc_NtkBackup(pNtk): NULL )
605 Abc_NtkDelete( pNtk );
606 // set the current network empty
607 p->pNtkCur = NULL;
608// fprintf( p->Out, "All networks have been deleted.\n" );
609 Gia_ManStopP( &p->pGia );
610 Gia_ManStopP( &p->pGia2 );
611 Gia_ManStopP( &p->pGiaBest );
612 Gia_ManStopP( &p->pGiaBest2 );
613 Gia_ManStopP( &p->pGiaSaved );
614}
615
628{
629 s_GlobalFrame = p;
630}
631
644{
645 if ( s_GlobalFrame == 0 )
646 {
647 // start the framework
648 s_GlobalFrame = Abc_FrameAllocate();
649 // perform initializations
650 Abc_FrameInit( s_GlobalFrame );
651 }
652 return s_GlobalFrame;
653}
654
667{
668 return s_GlobalFrame;
669}
670
682void Abc_FrameSetSave1( void * pAig )
683{
685 if ( pFrame->pSave1 )
686 Aig_ManStop( (Aig_Man_t *)pFrame->pSave1 );
687 pFrame->pSave1 = pAig;
688}
689
701void Abc_FrameSetSave2( void * pAig )
702{
704 if ( pFrame->pSave2 )
705 Aig_ManStop( (Aig_Man_t *)pFrame->pSave2 );
706 pFrame->pSave2 = pAig;
707}
708
720void * Abc_FrameReadSave1() { void * pAig = Abc_FrameGetGlobalFrame()->pSave1; Abc_FrameGetGlobalFrame()->pSave1 = NULL; return pAig; }
721void * Abc_FrameReadSave2() { void * pAig = Abc_FrameGetGlobalFrame()->pSave2; Abc_FrameGetGlobalFrame()->pSave2 = NULL; return pAig; }
722
735{
736 Abc_Obj_t * pObj;
737 if ( p->pNtkCur == NULL )
738 return -1;
739 if ( !Abc_NtkIsStrash(p->pNtkCur) )
740 return -1;
741 if ( iPoNum < 0 || iPoNum >= Abc_NtkPoNum(p->pNtkCur) )
742 return -1;
743 pObj = Abc_NtkPo( p->pNtkCur, iPoNum );
744 if ( !Abc_AigNodeIsConst(Abc_ObjFanin0(pObj)) )
745 return -1;
746 return !Abc_ObjFaninC0(pObj);
747}
749{
750 Abc_Obj_t * pObj;
751 int i;
752 Abc_NtkForEachPo( p->pNtkCur, pObj, i )
753 printf( "%d = %d\n", i, Abc_FrameCheckPoConst(p, i) );
754}
755
756
760
761
763
struct Abc_Obj_t_ Abc_Obj_t
Definition abc.h:116
#define Abc_NtkForEachPo(pNtk, pPo, i)
Definition abc.h:520
ABC_DLL int Abc_NtkMapToSop(Abc_Ntk_t *pNtk)
Definition abcFunc.c:1228
struct Abc_Ntk_t_ Abc_Ntk_t
Definition abc.h:115
ABC_DLL void Abc_NtkDelete(Abc_Ntk_t *pNtk)
Definition abcNtk.c:1421
#define ABC_CALLOC(type, num)
Definition abc_global.h:265
#define ABC_FREE(obj)
Definition abc_global.h:267
#define ABC_NAMESPACE_IMPL_START
#define ABC_NAMESPACE_IMPL_END
typedefABC_NAMESPACE_HEADER_START struct Abc_Frame_t_ Abc_Frame_t
INCLUDES ///.
Definition abcapis.h:38
void Aig_ManStop(Aig_Man_t *p)
Definition aigMan.c:187
typedefABC_NAMESPACE_HEADER_START struct Aig_Man_t_ Aig_Man_t
INCLUDES ///.
Definition aig.h:50
ABC_DLL void * Abc_FrameReadManDd()
ABC_DLL int Abc_FrameIsFlagEnabled(char *pFlag)
Definition mainFrame.c:138
typedefABC_NAMESPACE_IMPL_START struct Vec_Int_t_ Vec_Int_t
DECLARATIONS ///.
Definition bblif.c:37
char * Cmd_FlagReadByName(Abc_Frame_t *pAbc, char *flag)
DECLARATIONS ///.
Definition cmdFlag.c:47
void Cmd_FlagUpdateValue(Abc_Frame_t *pAbc, const char *key, char *value)
Definition cmdFlag.c:65
void set_espresso_flags()
Definition cubehack.c:129
void undefine_cube_size()
Definition cubehack.c:111
void define_cube_size(int n)
Definition cubehack.c:51
struct Dec_Man_t_ Dec_Man_t
Definition dec.h:79
Dec_Man_t * Dec_ManStart()
DECLARATIONS ///.
Definition decMan.c:45
void Dec_ManStop(Dec_Man_t *p)
Definition decMan.c:70
Cube * p
Definition exorList.c:222
void Extra_StopManager(DdManager *dd)
void Gia_ManStopP(Gia_Man_t **p)
Definition giaMan.c:224
struct Gia_Man_t_ Gia_Man_t
Definition gia.h:96
struct If_DsdMan_t_ If_DsdMan_t
Definition if.h:84
void If_DsdManFree(If_DsdMan_t *p, int fVerbose)
Definition ifDsd.c:333
void * Abc_FrameReadLibGen()
Definition mainFrame.c:59
void Abc_FrameInputNdr(Abc_Frame_t *pAbc, void *pData)
Definition mainFrame.c:89
void Abc_FrameSetManDsd(void *pMan)
Definition mainFrame.c:102
int Abc_FrameCheckPoConst(Abc_Frame_t *p, int iPoNum)
Definition mainFrame.c:734
Vec_Int_t * Abc_FrameReadPoStatuses(Abc_Frame_t *p)
Definition mainFrame.c:79
FILE * Abc_FrameReadErr(Abc_Frame_t *p)
Definition mainFrame.c:375
Vec_Ptr_t * Abc_FrameReadStore()
FUNCTION DEFINITIONS ///.
Definition mainFrame.c:55
void Abc_FrameSetStatus(int Status)
Definition mainFrame.c:101
Vec_Wec_t * Abc_FrameReadJsonObjs(Abc_Frame_t *p)
Definition mainFrame.c:82
void Abc_FrameClearVerifStatus(Abc_Frame_t *p)
Definition mainFrame.c:292
void Abc_FrameSetLibSuper(void *pLib)
Definition mainFrame.c:97
void Abc_FrameSetJsonStrs(Abc_Nam_t *pStrs)
Definition mainFrame.c:105
int Abc_FrameReadBmcFrames(Abc_Frame_t *p)
Definition mainFrame.c:73
void Abc_FrameUnmapAllNetworks(Abc_Frame_t *p)
Definition mainFrame.c:577
void * Abc_FrameReadLibBox()
Definition mainFrame.c:58
float Abc_FrameReadMaxLoad()
Definition mainFrame.c:117
char * Abc_FrameReadFlag(char *pFlag)
Definition mainFrame.c:69
Abc_Ntk_t * Abc_FrameReadNtk(Abc_Frame_t *p)
Definition mainFrame.c:327
void Abc_FrameSetSave2(void *pAig)
Definition mainFrame.c:701
Abc_Nam_t * Abc_FrameReadJsonStrs(Abc_Frame_t *p)
Definition mainFrame.c:81
int Abc_FrameSetMode(Abc_Frame_t *p, int fNameMode)
Definition mainFrame.c:414
FILE * Abc_FrameReadOut(Abc_Frame_t *p)
Definition mainFrame.c:359
Vec_Ptr_t * Abc_FrameReadSignalNames()
Definition mainFrame.c:70
Vec_Ptr_t * Abc_FrameReadCexVec(Abc_Frame_t *p)
Definition mainFrame.c:76
void Abc_FrameSetSpecName(char *pFileName)
Definition mainFrame.c:108
void Abc_FrameSetCex(Abc_Cex_t *pCex)
Definition mainFrame.c:99
int * Abc_FrameReadBoxes(Abc_Frame_t *pAbc)
Definition mainFrame.c:124
Vec_Int_t * Abc_FrameReadObjIds(Abc_Frame_t *p)
Definition mainFrame.c:80
void * Abc_FrameReadManDsd2()
Definition mainFrame.c:68
void Abc_FrameCheckPoConstTest(Abc_Frame_t *p)
Definition mainFrame.c:748
void * Abc_FrameOutputNdr(Abc_Frame_t *pAbc)
Definition mainFrame.c:90
Abc_Frame_t * Abc_FrameAllocate()
Definition mainFrame.c:162
int Abc_FrameReadStoreSize()
Definition mainFrame.c:56
void Abc_FrameSetGlobalFrame(Abc_Frame_t *p)
Definition mainFrame.c:627
void * Abc_FrameReadSave1()
Definition mainFrame.c:720
int Abc_FrameReadCexPo(Abc_Frame_t *p)
Definition mainFrame.c:86
void * Abc_FrameReadLibGen2()
Definition mainFrame.c:60
int Abc_FrameShowProgress(Abc_Frame_t *p)
Definition mainFrame.c:310
void Abc_FrameSetLibGen2(void *pLib)
Definition mainFrame.c:96
void Abc_FrameSetArrayMapping(int *p)
Definition mainFrame.c:122
int * Abc_FrameReadArrayMapping(Abc_Frame_t *pAbc)
Definition mainFrame.c:121
Abc_Frame_t * Abc_FrameGetGlobalFrame()
Definition mainFrame.c:643
Gia_Man_t * Abc_FrameReadGia(Abc_Frame_t *p)
Definition mainFrame.c:343
void * Abc_FrameReadLibScl()
Definition mainFrame.c:62
void * Abc_FrameReadManDsd()
Definition mainFrame.c:67
void Abc_FrameSetJsonObjs(Vec_Wec_t *vObjs)
Definition mainFrame.c:106
Abc_Frame_t * Abc_FrameReadGlobalFrame()
Definition mainFrame.c:666
void Abc_FrameSetBatchMode(int Mode)
Definition mainFrame.c:111
void Abc_FrameSetNFrames(int nFrames)
Definition mainFrame.c:100
void Abc_FrameSetSave1(void *pAig)
Definition mainFrame.c:682
int Abc_FrameReadCexFrame(Abc_Frame_t *p)
Definition mainFrame.c:87
int Abc_FrameIsBridgeMode()
Definition mainFrame.c:113
int Abc_FrameReadMode(Abc_Frame_t *p)
Definition mainFrame.c:391
void * Abc_FrameReadManDec()
Definition mainFrame.c:66
void Abc_FrameSetDrivingCell(char *pName)
Definition mainFrame.c:118
char * Abc_FrameReadDrivingCell()
Definition mainFrame.c:116
void Abc_FrameSetCurrentNetwork(Abc_Frame_t *p, Abc_Ntk_t *pNtkNew)
Definition mainFrame.c:441
void Abc_FrameSetLibGen(void *pLib)
Definition mainFrame.c:95
int Abc_FrameIsBatchMode()
Definition mainFrame.c:110
void * Abc_FrameReadSave2()
Definition mainFrame.c:721
void * Abc_FrameReadLibSuper()
Definition mainFrame.c:61
Vec_Int_t * Abc_FrameReadStatusVec(Abc_Frame_t *p)
Definition mainFrame.c:77
int Abc_FrameIsFlagEnabled(char *pFlag)
Definition mainFrame.c:138
void Abc_FrameSetManDsd2(void *pMan)
Definition mainFrame.c:103
void Abc_FrameSetBridgeMode()
Definition mainFrame.c:114
void Abc_FrameReplaceCurrentNetwork(Abc_Frame_t *p, Abc_Ntk_t *pNtk)
Definition mainFrame.c:538
int * Abc_FrameOutputNdrArray(Abc_Frame_t *pAbc)
Definition mainFrame.c:91
void Abc_FrameSetMaxLoad(float Load)
Definition mainFrame.c:119
void Abc_FrameDeallocate(Abc_Frame_t *p)
Definition mainFrame.c:204
void Abc_FrameRestart(Abc_Frame_t *p)
Definition mainFrame.c:277
int Abc_FrameReadCexRegNum(Abc_Frame_t *p)
Definition mainFrame.c:85
void Abc_FrameSetBoxes(int *p)
Definition mainFrame.c:125
void Abc_FrameSetInv(Vec_Int_t *vInv)
Definition mainFrame.c:104
void Abc_FrameSetFlag(char *pFlag, char *pValue)
Definition mainFrame.c:98
void Abc_FrameSwapCurrentAndBackup(Abc_Frame_t *p)
Definition mainFrame.c:496
void Abc_FrameSetLibLut(void *pLib)
Definition mainFrame.c:93
void Abc_FrameDeleteAllNetworks(Abc_Frame_t *p)
Definition mainFrame.c:596
int Abc_FrameReadProbStatus(Abc_Frame_t *p)
Definition mainFrame.c:74
int Abc_FrameReadCexPiNum(Abc_Frame_t *p)
Definition mainFrame.c:84
void Abc_FrameSetSignalNames(Vec_Ptr_t *vNames)
Definition mainFrame.c:107
void Abc_FrameSetLibBox(void *pLib)
Definition mainFrame.c:94
Vec_Ptr_t * Abc_FrameReadPoEquivs(Abc_Frame_t *p)
Definition mainFrame.c:78
void * Abc_FrameReadCex(Abc_Frame_t *p)
Definition mainFrame.c:75
char * Abc_FrameReadSpecName()
Definition mainFrame.c:71
void * Abc_FrameReadLibLut()
Definition mainFrame.c:57
void Abc_FrameInit(Abc_Frame_t *pAbc)
FUNCTION DEFINITIONS ///.
Definition mainInit.c:106
ABC_DLL char * Abc_UtilsGetVersion(Abc_Frame_t *pAbc)
FUNCTION DEFINITIONS ///.
Definition mainUtils.c:52
ABC_DLL void Abc_FrameStoreStop(Abc_Frame_t *pAbc)
Definition mainUtils.c:303
void Rwt_ManGlobalStop()
Definition rwtMan.c:68
typedefABC_NAMESPACE_HEADER_START struct Abc_Cex_t_ Abc_Cex_t
INCLUDES ///.
Definition utilCex.h:39
void Abc_NamDeref(Abc_Nam_t *p)
Definition utilNam.c:212
typedefABC_NAMESPACE_HEADER_START struct Abc_Nam_t_ Abc_Nam_t
INCLUDES ///.
Definition utilNam.h:39
int strcmp()
typedefABC_NAMESPACE_HEADER_START struct Vec_Ptr_t_ Vec_Ptr_t
INCLUDES ///.
Definition vecPtr.h:42
#define Vec_PtrForEachEntry(Type, vVec, pEntry, i)
MACRO DEFINITIONS ///.
Definition vecPtr.h:55
typedefABC_NAMESPACE_HEADER_START struct Vec_Vec_t_ Vec_Vec_t
INCLUDES ///.
Definition vecVec.h:42
typedefABC_NAMESPACE_HEADER_START struct Vec_Wec_t_ Vec_Wec_t
INCLUDES ///.
Definition vecWec.h:42