summaryrefslogtreecommitdiffstats
path: root/src/base/main/mainFrame.c
diff options
context:
space:
mode:
authorAlan Mishchenko <alanmi@berkeley.edu>2018-12-09 15:18:12 -0800
committerAlan Mishchenko <alanmi@berkeley.edu>2018-12-09 15:18:12 -0800
commit36585eff57d16171bb4a53fdc6348613d44eabe6 (patch)
tree4c0368dc4b7022f5aa80282d3301b784465adbdb /src/base/main/mainFrame.c
parentfe03f0423de9718b122d6200042ecb553520fb0f (diff)
downloadabc-36585eff57d16171bb4a53fdc6348613d44eabe6.tar.gz
abc-36585eff57d16171bb4a53fdc6348613d44eabe6.tar.bz2
abc-36585eff57d16171bb4a53fdc6348613d44eabe6.zip
Experiments with retiming (adding new APIs).
Diffstat (limited to 'src/base/main/mainFrame.c')
-rw-r--r--src/base/main/mainFrame.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/base/main/mainFrame.c b/src/base/main/mainFrame.c
index eff730d8..1d54f4e4 100644
--- a/src/base/main/mainFrame.c
+++ b/src/base/main/mainFrame.c
@@ -22,6 +22,7 @@
#include "mainInt.h"
#include "bool/dec/dec.h"
#include "map/if/if.h"
+#include "aig/miniaig/ndr.h"
#ifdef ABC_USE_CUDD
#include "bdd/extrab/extraBdd.h"
@@ -83,6 +84,10 @@ int Abc_FrameReadCexRegNum( Abc_Frame_t * p ) { return s_GlobalFr
int Abc_FrameReadCexPo( Abc_Frame_t * p ) { return s_GlobalFrame->pCex->iPo; }
int Abc_FrameReadCexFrame( Abc_Frame_t * p ) { return s_GlobalFrame->pCex->iFrame; }
+void Abc_FrameInputNdr( Abc_Frame_t * pAbc, void * pData ) { Ndr_Delete(s_GlobalFrame->pNdr); s_GlobalFrame->pNdr = pData; }
+void * Abc_FrameOutputNdr( Abc_Frame_t * pAbc ) { void * pData = s_GlobalFrame->pNdr; s_GlobalFrame->pNdr = NULL; return pData; }
+int * Abc_FrameOutputNdrArray( Abc_Frame_t * pAbc ) { int * pArray = s_GlobalFrame->pNdrArray; s_GlobalFrame->pNdrArray = NULL; return pArray; }
+
void Abc_FrameSetLibLut( void * pLib ) { s_GlobalFrame->pLibLut = pLib; }
void Abc_FrameSetLibBox( void * pLib ) { s_GlobalFrame->pLibBox = pLib; }
void Abc_FrameSetLibGen( void * pLib ) { s_GlobalFrame->pLibGen = pLib; }
@@ -232,7 +237,9 @@ void Abc_FrameDeallocate( Abc_Frame_t * p )
ABC_FREE( p->pCex );
Vec_IntFreeP( &p->pAbcWlcInv );
Abc_NamDeref( s_GlobalFrame->pJsonStrs );
- Vec_WecFreeP(&s_GlobalFrame->vJsonObjs );
+ Vec_WecFreeP( &s_GlobalFrame->vJsonObjs );
+ Ndr_Delete( s_GlobalFrame->pNdr );
+ ABC_FREE( s_GlobalFrame->pNdrArray );
Gia_ManStopP( &p->pGiaMiniAig );
Gia_ManStopP( &p->pGiaMiniLut );
@@ -240,6 +247,7 @@ void Abc_FrameDeallocate( Abc_Frame_t * p )
Vec_IntFreeP( &p->vCopyMiniLut );
ABC_FREE( p->pArray );
ABC_FREE( p->pBoxes );
+
ABC_FREE( p );
s_GlobalFrame = NULL;