Commit 73ab6aac by Alan Mishchenko

Changes several defaults of 'super' to be infinite.

parent a595fa85
......@@ -250,6 +250,7 @@ int Mio_CommandReadGenlib( Abc_Frame_t * pAbc, int argc, char **argv )
FILE * pFile;
FILE * pOut, * pErr;
Mio_Library_t * pLib;
Amap_Lib_t * pLib2;
Abc_Ntk_t * pNet;
char * pFileName;
char * pExcludeFile = NULL;
......@@ -323,6 +324,9 @@ int Mio_CommandReadGenlib( Abc_Frame_t * pAbc, int argc, char **argv )
fprintf( pErr, "Reading genlib library has failed.\n" );
return 1;
}
if ( fVerbose )
printf( "Entered genlib library with %d gates from file \"%s\".\n", Mio_LibraryReadGateNum(pLib), pFileName );
// add the fixed number (wire delay) to all delays in the library
if ( WireDelay != 0.0 )
Mio_LibraryShiftDelay( pLib, WireDelay );
......@@ -339,17 +343,15 @@ int Mio_CommandReadGenlib( Abc_Frame_t * pAbc, int argc, char **argv )
Abc_FrameSetLibGen( pLib );
// set the new network
pLib = (Mio_Library_t *)Amap_LibReadAndPrepare( pFileName, NULL, 0, 0 );
if ( pLib == NULL )
pLib2 = Amap_LibReadAndPrepare( pFileName, NULL, 0, 0 );
if ( pLib2 == NULL )
{
fprintf( pErr, "Reading genlib library has failed.\n" );
return 1;
}
// replace the current library
Amap_LibFree( (Amap_Lib_t *)Abc_FrameReadLibGen2() );
Abc_FrameSetLibGen2( pLib );
if ( fVerbose )
printf( "Entered genlib library with %d gates from file \"%s\".\n", Mio_LibraryReadGateNum(pLib), pFileName );
Abc_FrameSetLibGen2( pLib2 );
return 0;
usage:
......
......@@ -154,8 +154,7 @@ Mio_Library_t * Mio_LibraryReadBuffer( char * pBuffer, int fExtendedFormat, st__
Mio_Library_t * pLib;
// allocate the genlib structure
pLib = ABC_ALLOC( Mio_Library_t, 1 );
memset( pLib, 0, sizeof(Mio_Library_t) );
pLib = ABC_CALLOC( Mio_Library_t, 1 );
pLib->tName2Gate = st__init_table(strcmp, st__strhash);
pLib->pMmFlex = Mem_FlexStart();
pLib->vCube = Vec_StrAlloc( 100 );
......@@ -337,8 +336,7 @@ Mio_Gate_t * Mio_LibraryReadGate( char ** ppToken, int fExtendedFormat )
char * pToken = *ppToken;
// allocate the gate structure
pGate = ABC_ALLOC( Mio_Gate_t, 1 );
memset( pGate, 0, sizeof(Mio_Gate_t) );
pGate = ABC_CALLOC( Mio_Gate_t, 1 );
// read the name
pToken = strtok( NULL, " \t\r\n" );
......@@ -405,8 +403,7 @@ Mio_Pin_t * Mio_LibraryReadPin( char ** ppToken, int fExtendedFormat )
char * pToken = *ppToken;
// allocate the gate structure
pPin = ABC_ALLOC( Mio_Pin_t, 1 );
memset( pPin, 0, sizeof(Mio_Pin_t) );
pPin = ABC_CALLOC( Mio_Pin_t, 1 );
// read the name
pToken = strtok( NULL, " \t\r\n" );
......
......@@ -311,7 +311,7 @@ Mio_Gate_t ** Mio_CollectRoots( Mio_Library_t * pLib, int nInputs, float tDelay,
{
if ( pGate->nInputs > nInputs )
continue;
if ( pGate->dDelayMax > (double)tDelay )
if ( tDelay > 0.0 && pGate->dDelayMax > (double)tDelay )
continue;
if ( pGate->uTruth == 0 || pGate->uTruth == ~0 )
continue;
......
......@@ -166,11 +166,11 @@ int Super_CommandSupergates( Abc_Frame_t * pAbc, int argc, char **argv )
// set the defaults
nVarsMax = 5;
nLevels = 3;
DelayLimit = 3.5;
AreaLimit = 9;
nGatesMax = 1000000;
TimeLimit = 10;
nLevels = 2;
DelayLimit = 0;
AreaLimit = 0;
nGatesMax = 0;
TimeLimit = 0;
fSkipInvs = 1;
fVerbose = 0;
fWriteOldFormat = 0;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment