summaryrefslogtreecommitdiffstats
path: root/src/base/main
diff options
context:
space:
mode:
authorAlan Mishchenko <alanmi@berkeley.edu>2017-10-22 15:44:13 -0700
committerAlan Mishchenko <alanmi@berkeley.edu>2017-10-22 15:44:13 -0700
commitaccf4825e586cb8b3444551a1145ae4d88662f82 (patch)
tree75b02b5bd79e1c37000fc76abfcbf42de477e782 /src/base/main
parent5ab3f0fa6ba1519e24368651f7c5fb87cd5ee33e (diff)
downloadabc-accf4825e586cb8b3444551a1145ae4d88662f82.tar.gz
abc-accf4825e586cb8b3444551a1145ae4d88662f82.tar.bz2
abc-accf4825e586cb8b3444551a1145ae4d88662f82.zip
Adding API to dump MiniAIG into a Verilog file and other small changes.
Diffstat (limited to 'src/base/main')
-rw-r--r--src/base/main/abcapis.h1
-rw-r--r--src/base/main/main.h2
-rw-r--r--src/base/main/mainFrame.c6
-rw-r--r--src/base/main/mainInt.h1
4 files changed, 9 insertions, 1 deletions
diff --git a/src/base/main/abcapis.h b/src/base/main/abcapis.h
index 8c188b67..34001bc7 100644
--- a/src/base/main/abcapis.h
+++ b/src/base/main/abcapis.h
@@ -90,6 +90,7 @@ extern ABC_DLL void Abc_NtkSetAndGateDelay( Abc_Frame_t * pAbc, float Delay );
// procedures to return the mapped network
extern ABC_DLL int * Abc_NtkOutputMiniMapping( Abc_Frame_t * pAbc );
extern ABC_DLL void Abc_NtkPrintMiniMapping( int * pArray );
+extern ABC_DLL int * Abc_FrameReadArrayMapping( Abc_Frame_t * pAbc );
// procedures to access verifization status and a counter-example
extern ABC_DLL int Abc_FrameReadProbStatus( Abc_Frame_t * pAbc );
diff --git a/src/base/main/main.h b/src/base/main/main.h
index a59a9a40..3887d764 100644
--- a/src/base/main/main.h
+++ b/src/base/main/main.h
@@ -160,6 +160,8 @@ extern ABC_DLL float Abc_FrameReadMaxLoad();
extern ABC_DLL void Abc_FrameSetDrivingCell( char * pName );
extern ABC_DLL void Abc_FrameSetMaxLoad( float Load );
+extern ABC_DLL void Abc_FrameSetArrayMapping( int * p );
+
ABC_NAMESPACE_HEADER_END
#endif
diff --git a/src/base/main/mainFrame.c b/src/base/main/mainFrame.c
index 96373ad9..e496d8ee 100644
--- a/src/base/main/mainFrame.c
+++ b/src/base/main/mainFrame.c
@@ -106,7 +106,10 @@ void Abc_FrameSetBridgeMode() { if ( s_GlobalFram
char * Abc_FrameReadDrivingCell() { return s_GlobalFrame->pDrivingCell; }
float Abc_FrameReadMaxLoad() { return s_GlobalFrame->MaxLoad; }
void Abc_FrameSetDrivingCell( char * pName ) { ABC_FREE(s_GlobalFrame->pDrivingCell); s_GlobalFrame->pDrivingCell = pName; }
-void Abc_FrameSetMaxLoad( float Load ) { s_GlobalFrame->MaxLoad = Load; }
+void Abc_FrameSetMaxLoad( float Load ) { s_GlobalFrame->MaxLoad = Load; }
+
+int * Abc_FrameReadArrayMapping( Abc_Frame_t * pAbc ) { return pAbc->pArray; }
+void Abc_FrameSetArrayMapping( int * p ) { ABC_FREE( s_GlobalFrame->pArray ); s_GlobalFrame->pArray = p; }
/**Function*************************************************************
@@ -232,6 +235,7 @@ void Abc_FrameDeallocate( Abc_Frame_t * p )
Gia_ManStopP( &p->pGiaMiniLut );
Vec_IntFreeP( &p->vCopyMiniAig );
Vec_IntFreeP( &p->vCopyMiniLut );
+ ABC_FREE( p->pArray );
ABC_FREE( p );
s_GlobalFrame = NULL;
diff --git a/src/base/main/mainInt.h b/src/base/main/mainInt.h
index 5f330e4a..66432c78 100644
--- a/src/base/main/mainInt.h
+++ b/src/base/main/mainInt.h
@@ -148,6 +148,7 @@ struct Abc_Frame_t_
Gia_Man_t * pGiaMiniLut;
Vec_Int_t * vCopyMiniAig;
Vec_Int_t * vCopyMiniLut;
+ int * pArray;
Abc_Frame_Callback_BmcFrameDone_Func pFuncOnFrameDone;
};