summaryrefslogtreecommitdiffstats
path: root/src/base/main
diff options
context:
space:
mode:
Diffstat (limited to 'src/base/main')
-rw-r--r--src/base/main/main.h5
-rw-r--r--src/base/main/mainFrame.c6
-rw-r--r--src/base/main/mainInt.h3
3 files changed, 14 insertions, 0 deletions
diff --git a/src/base/main/main.h b/src/base/main/main.h
index 7d9b7292..a55ff06c 100644
--- a/src/base/main/main.h
+++ b/src/base/main/main.h
@@ -146,6 +146,11 @@ extern ABC_DLL void Abc_FrameReplaceCexVec( Abc_Frame_t * pAbc, Vec_P
extern ABC_DLL void Abc_FrameReplacePoEquivs( Abc_Frame_t * pAbc, Vec_Ptr_t ** pvPoEquivs );
extern ABC_DLL void Abc_FrameReplacePoStatuses( Abc_Frame_t * pAbc, Vec_Int_t ** pvStatuses );
+extern ABC_DLL char * Abc_FrameReadDrivingCell();
+extern ABC_DLL float Abc_FrameReadMaxLoad();
+extern ABC_DLL void Abc_FrameSetDrivingCell( char * pName );
+extern ABC_DLL void Abc_FrameSetMaxLoad( float Load );
+
ABC_NAMESPACE_HEADER_END
#endif
diff --git a/src/base/main/mainFrame.c b/src/base/main/mainFrame.c
index ee4b665e..796c04de 100644
--- a/src/base/main/mainFrame.c
+++ b/src/base/main/mainFrame.c
@@ -91,6 +91,11 @@ int Abc_FrameIsBatchMode() { return s_GlobalFr
int Abc_FrameIsBridgeMode() { return s_GlobalFrame ? s_GlobalFrame->fBridgeMode : 0; }
void Abc_FrameSetBridgeMode() { if ( s_GlobalFrame ) s_GlobalFrame->fBridgeMode = 1; }
+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; }
+
/**Function*************************************************************
Synopsis [Returns 1 if the flag is enabled without value or with value 1.]
@@ -199,6 +204,7 @@ void Abc_FrameDeallocate( Abc_Frame_t * p )
}
Vec_PtrFreeP( &p->vLTLProperties_global );
Abc_FrameDeleteAllNetworks( p );
+ ABC_FREE( p->pDrivingCell );
ABC_FREE( p->pCex2 );
ABC_FREE( p->pCex );
ABC_FREE( p );
diff --git a/src/base/main/mainInt.h b/src/base/main/mainInt.h
index acd8bbd3..cf1a9376 100644
--- a/src/base/main/mainInt.h
+++ b/src/base/main/mainInt.h
@@ -93,6 +93,9 @@ struct Abc_Frame_t_
void * pLibSuper; // the current supergate library
void * pLibVer; // the current Verilog library
void * pLibScl; // the current Liberty library
+ // timing constraints
+ char * pDrivingCell; // name of the driving cell
+ float MaxLoad; // maximum output load
// new code
Gia_Man_t * pGia; // alternative current network as a light-weight AIG